---
title: SQL-028: Insert Provider Location
summary: Inserts a new provider location record into Oracle.
status: draft
owner: SAIF
last_reviewed: 2026-07-24
library: SAIF.Business.Provider
reference_type: package
---

# SQL-028: Insert Provider Location

Inserts a new provider location record into Oracle.

## Classification

| Field | Value |
| --- | --- |
| **SQL ID** | SQL-028 |
| **Operation type** | Create |
| **Execution method** | Inline |
| **Database** | Oracle |
| **Schema** | [unqualified]** |
| **Command type** | Text |
| **Business object** | `clsProviderLocation` |
| **Criteria property** | `InsertSQL` |
| **Lifecycle method** | `BeforeInsert` |

## Parameters

| Parameter | Direction | Type | Max length | Description |
| --- | --- | --- | --- | --- |
| :ProviderSeqNum | Input | Unspecified | N/A | Value from `ProviderSeqNum` |
| :ProviderTypeCode | Input | Unspecified | 5 | Value from `ProviderTypeCode` |
| :BusinessFlag | Input | Unspecified | 1 | Value from `BusinessFlag` |
| :CriticalAccessHospitalFlag | Input | Unspecified | 1 | Value from `CriticalAccessHospitalFlag` |
| :ApprovedFlag | Input | Unspecified | 1 | Value from `ApprovedFlag` |
| :PrimaryLocationFlag | Input | Unspecified | 1 | Value from `PrimaryLocationFlag` |
| :PossibleFraudFlag | Input | Unspecified | 1 | Value from `PossibleFraudFlag` |
| :IneligibilityFlag | Input | Unspecified | 1 | Value from `IneligibilityFlag` |
| :RecentActivityFlag | Input | Unspecified | 1 | Value from `RecentActivityFlag` |
| :BusinessName | Input | clsSmartString | 50 | Value from `m_BusinessName` |
| :BusinessNameUpperCase | Input | clsSmartString | 50 | Value from `m_BusinessNameUpperCase` |
| :LastName | Input | clsSmartString | 50 | Value from `m_LastName` |
| :LastNameUpperCase | Input | clsSmartString | 50 | Value from `m_LastNameUpperCase` |
| :FirstName | Input | clsSmartString | 20 | Value from `m_FirstName` |
| :MiddleName | Input | clsSmartString | 20 | Value from `m_MiddleName` |
| :ApprovedUser | Input | clsSmartString | 30 | Value from `m_ApprovedUser` |
| :PhoneAreaCode | Input | Unspecified | 3 | Value from `m_PhoneNumber.AreaCode` |
| :PhoneNum | Input | Unspecified | 7 | Value from `PhoneData` |
| :PhoneNumExt | Input | clsSmartString | 10 | Value from `m_PhoneExtension` |
| :TollFreePhoneNum | Input | Unspecified | 23 | Value from `TollFreePhoneNumber` |
| :FaxNum | Input | Unspecified | 23 | Value from `FaxNumber` |
| :TollFreeFaxNum | Input | Unspecified | 23 | Value from `TollFreeFaxNumber` |
| :WebSiteAddress | Input | clsSmartString | 250 | Value from `m_WebSiteAddress` |
| :PayeeName | Input | clsSmartString | 50 | Value from `m_PayeeName` |
| :ProviderLocationSeqNum | Input | Unspecified | N/A | Value from `ProviderLocationSeqNum` |
| :UpdateUser | Input | Unspecified | 30 | Value from `UpdateUser` |
| :UpdateNum | Input | Unspecified | N/A | Value from `UpdateNum` |
| :UpdateDate | Input | Unspecified | N/A | Value from `UpdateDate` |
| :EmailAddress | Input | clsSmartString | 250 | Value from `m_EmailAddress` |

## Tables

| Table | Access | Columns used |
| --- | --- | --- |
| [PROVIDER_LOCATION](../database-tables.md#provider_location) | INSERT | See business-object criteria for key columns. |

## Sample SQL

```sql
Insert into PROVIDER_LOCATION ( PROVIDER_LOCATION_SEQ_NUM, PROVIDER_SEQ_NUM, PROVIDER_TYPE_CODE, BUSINESS_FLAG, CRITICAL_ACCESS_HOSPITAL_FLAG, BUSINESS_NAME, BUSINESS_NAME_UPPER_CASE, LAST_NAME, LAST_NAME_UPPER_CASE, FIRST_NAME, MIDDLE_NAME, APPROVED_FLAG, APPROVED_USER, PRIMARY_LOCATION_FLAG, POSSIBLE_FRAUD_FLAG, PHONE_AREA_CODE, PHONE_NUM, PHONE_NUM_EXT, FAX_NUM, TOLL_FREE_PHONE_NUM, TOLL_FREE_FAX_NUM, INELIGIBILITY_FLAG, UPDATE_USER, UPDATE_NUM, UPDATE_DATE, RECENT_ACTIVITY_FLAG, WEB_SITE_ADDRESS, PAYEE_NAME, EMAIL_ADDR  ) Values ( :ProviderLocationSeqNum, :ProviderSeqNum, :ProviderTypeCode, :BusinessFlag, :CriticalAccessHospitalFlag, :BusinessName, :BusinessNameUpperCase, :LastName, :LastNameUpperCase, :FirstName, :MiddleName, :ApprovedFlag, :ApprovedUser, :PrimaryLocationFlag, :PossibleFraudFlag, :PhoneAreaCode, :PhoneNum, :PhoneNumExt, :FaxNum, :TollFreePhoneNum, :TollFreeFaxNum, :IneligibilityFlag, :UpdateUser, :UpdateNum, :UpdateDate, :RecentActivityFlag, :WebSiteAddress, :PayeeName, :EmailAddress )
```


## Operations and processes
- [Maintain provider location](../operations/maintain-provider-location.md)

## Business rules
- [BR-003: Only one primary location is allowed](../business-rules.md#br-003-only-one-primary-location-is-allowed)
- [BR-004: Provider type is required for a location](../business-rules.md#br-004-provider-type-is-required-for-a-location)
- [BR-005: Business locations require a business name](../business-rules.md#br-005-business-locations-require-a-business-name)
- [BR-006: Individual locations require a last name](../business-rules.md#br-006-individual-locations-require-a-last-name)

> **Note:** Statements marked with `**` could not be confirmed; treat as unknown until verified.

## Sources
- `Business\SAIF.Business.Provider\clsProviderLocation.vb`
