SQL-PADR-01 Provider addresses for a location
Retrieves the address collection for a provider location, joined against the parent location
row for business-name and phone fallbacks, and pre-formats city/state/zip and phone/fax display
strings using NVL, NVL2, and string concatenation.
Classification
Field
Value
SQL ID
SQL-PADR-01
Operation type
Read
Execution method
Inline SQL (BOF criteria constant)
Database
Oracle
Schema
[unqualified]**
Command type
Text
Business object
clsProviderAddressCollection
Criteria property
RetrieveSQL
Lifecycle method
BeforeRetrieve / AfterRetrieve
Parameters
Parameter
Direction
Type
Max length
Description
:ProviderLocationID
Input
Decimal
N/A
PROVIDER_LOCATION.PROVIDER_LOCATION_SEQ_NUM
Tables
Table
Access
Columns used
PROVIDER_LOCATION
SELECT
PROVIDER_LOCATION_SEQ_NUM, BUSINESS_NAME, TOLL_FREE_PHONE_NUM, PHONE_AREA_CODE, PHONE_NUM, PHONE_NUM_EXT, TOLL_FREE_FAX_NUM, FAX_NUM, BUSINESS_FLAG
PROVIDER_ADDRESS
JOIN (LEFT OUTER)
PROVIDER_ADDRESS_SEQ_NUM, EFF_DATE, EXP_DATE, ADDRESS_LINE1-4, FOREIGN_ADDRESS_FLAG, CITY_NAME, STATE_CODE, ZIP_CODE, ZIP_CODE_EXT, PROVIDER_ADDRESS_CODE, UPDATE_USER, UPDATE_DATE
Sample SQL
-- Provider addresses for a location
SELECT
pa . provider_address_seq_num ,
pa . eff_date ,
pa . exp_date ,
ppl . business_name ,
NVL ( pa . address_line1 , ' ' ) AS address_line1 ,
pa . address_line2 ,
pa . address_line3 ,
pa . address_line4 ,
NVL ( pa . foreign_address_flag , 'N' ) AS foreign_address_flag ,
trim ( pa . city_name ) || ' ' || trim ( pa . state_code ) || ' ' || trim ( pa . ZIP_CODE )
|| DECODE ( pa . zip_code_ext , NULL , '' , '-' || pa . zip_code_ext ) AS addr_city_st ,
NVL ( ppl . TOLL_FREE_PHONE_NUM ,
NVL2 ( ppl . PHONE_AREA_CODE , '(' || ppl . PHONE_AREA_CODE || ') ' , '' )
|| NVL2 ( ppl . PHONE_NUM ,
SUBSTR ( ppl . phone_num , 1 , 3 ) || '-' || SUBSTR ( ppl . PHONE_NUM , - 4 ), '' )
|| NVL2 ( ppl . PHONE_NUM_EXT , 'x' || ppl . PHONE_NUM_EXT , '' )) AS phone_num ,
NVL ( ppl . toll_free_fax_num , ppl . fax_num ) AS fax_num ,
NVL ( pa . PROVIDER_ADDRESS_CODE , ' ' ) AS PROVIDER_ADDRESS_CODE ,
NVL ( pa . CITY_NAME , ' ' ) AS CITY_NAME ,
pa . STATE_CODE ,
pa . ZIP_CODE ,
pa . ZIP_CODE_EXT ,
NVL ( ppl . BUSINESS_FLAG , 'N' ) AS BUSINESS_FLAG ,
pa . update_user AS UpdateUser ,
pa . update_date AS UpdateDate
FROM PROVIDER_LOCATION ppl
LEFT OUTER JOIN PROVIDER_ADDRESS pa
ON pa . provider_location_seq_num = ppl . provider_location_seq_num
WHERE ppl . provider_location_seq_num = : ProviderLocationID
Operations and processes
Business rules
Sources
SAIF.Business.View.Provider/clsProviderAddress.vb
SAIF.Business.View.Provider/clsProviderAddressCollection.vb