diff --git a/.github/workflows/run-unit-tests.yaml b/.github/workflows/run-unit-tests.yaml index 731fe0eb2..e455296ed 100644 --- a/.github/workflows/run-unit-tests.yaml +++ b/.github/workflows/run-unit-tests.yaml @@ -18,6 +18,7 @@ jobs: permissions: id-token: write contents: read + steps: - uses: actions/checkout@v6 with: @@ -36,7 +37,7 @@ jobs: key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} restore-keys: ${{ runner.os }}-gradle - - name: Build and analyze + - name: Run stored procedure tests working-directory: ./ run: | ./gradlew clean reporting-pipeline-service:test-unit --continue diff --git a/build.gradle b/build.gradle index c3985f7c4..106794fe0 100644 --- a/build.gradle +++ b/build.gradle @@ -14,6 +14,7 @@ buildscript { plugins { id 'org.sonarqube' version '7.3.0.8198' id 'com.diffplug.spotless' version '8.3.0' + id 'io.github.dsdolzhenko.dotenv' version '0.1.0' } version = '1.0.1-SNAPSHOT' @@ -34,6 +35,7 @@ subprojects { apply plugin: 'java' apply plugin: 'jacoco' apply plugin: 'com.diffplug.spotless' + apply plugin: 'io.github.dsdolzhenko.dotenv' spotless { // Disable incremental check if specific files are provided via CLI diff --git a/env.sample b/env.sample index d3ad7fdb5..ca04b682e 100644 --- a/env.sample +++ b/env.sample @@ -1,5 +1,8 @@ DATABASE_PASSWORD=PizzaIsGood33! RTR_ADMIN_NAME=rtr_admin RTR_ADMIN_PASSWORD=rtr_admin -RTR_SERVICE_USER_NAME=rtr_server_user +RTR_SERVICE_USER_NAME=rtr_service_user RTR_SERVICE_USER_PASSWORD=rtr_service_user +DB_URL_RDB="jdbc:sqlserver://localhost:3433;databaseName=RDB_MODERN;encrypt=true;trustServerCertificate=true;loginTimeout=3;" +DB_URL_ODSE="jdbc:sqlserver://localhost:3433;databaseName=NBS_ODSE;encrypt=true;trustServerCertificate=true;loginTimeout=3;" +CUSTOM_COMPOSE_FILE=docker-compose.yaml diff --git a/liquibase-service/src/main/resources/db/001-master/02_onboarding_script_data_load/004-nrt_lab_test_result_group_key-001.sql b/liquibase-service/src/main/resources/db/001-master/02_onboarding_script_data_load/004-nrt_lab_test_result_group_key-001.sql index 7a511f281..695e82029 100644 --- a/liquibase-service/src/main/resources/db/001-master/02_onboarding_script_data_load/004-nrt_lab_test_result_group_key-001.sql +++ b/liquibase-service/src/main/resources/db/001-master/02_onboarding_script_data_load/004-nrt_lab_test_result_group_key-001.sql @@ -1,5 +1,9 @@ -- use rdb_modern; -IF EXISTS(SELECT 1 FROM NBS_ODSE.DBO.NBS_configuration WHERE config_key ='ENV' AND config_value ='UAT') +IF + EXISTS ( + SELECT 1 FROM NBS_ODSE.DBO.NBS_CONFIGURATION + WHERE CONFIG_KEY = 'ENV' AND CONFIG_VALUE = 'UAT' + ) BEGIN USE [rdb_modern]; PRINT 'Switched to database [rdb_modern]' @@ -10,30 +14,35 @@ ELSE PRINT 'Switched to database [rdb]'; END -IF EXISTS (SELECT 1 FROM sysobjects WHERE name = 'nrt_lab_test_result_group_key' and xtype = 'U') - AND EXISTS (SELECT 1 FROM sysobjects WHERE name = 'TEST_RESULT_GROUPING' and xtype = 'U') +IF + EXISTS ( + SELECT 1 FROM SYSOBJECTS + WHERE NAME = 'nrt_lab_test_result_group_key' AND XTYPE = 'U' + ) + AND EXISTS ( + SELECT 1 FROM SYSOBJECTS + WHERE NAME = 'TEST_RESULT_GROUPING' AND XTYPE = 'U' + ) BEGIN - + --copy already existing (TEST_RESULT_GRP_KEY, LAB_TEST_UID) from TEST_RESULT_GROUPING - SET IDENTITY_INSERT [dbo].nrt_lab_test_result_group_key ON + SET IDENTITY_INSERT [dbo].NRT_LAB_TEST_RESULT_GROUP_KEY ON - INSERT INTO [dbo].nrt_lab_test_result_group_key( - TEST_RESULT_GRP_KEY, + INSERT INTO [dbo].NRT_LAB_TEST_RESULT_GROUP_KEY ( + TEST_RESULT_GRP_KEY, LAB_TEST_UID ) - SELECT - rg.TEST_RESULT_GRP_KEY, - rg.LAB_TEST_UID - FROM [dbo].TEST_RESULT_GROUPING rg WITH(NOLOCK) - LEFT JOIN [dbo].nrt_lab_test_result_group_key k WITH(NOLOCK) - ON k.TEST_RESULT_GRP_KEY = rg.TEST_RESULT_GRP_KEY - AND k.LAB_TEST_UID= rg.LAB_TEST_UID - WHERE - k.TEST_RESULT_GRP_KEY IS NULL - AND k.LAB_TEST_UID IS NULL - ORDER BY rg.TEST_RESULT_GRP_KEY; + SELECT + RG.TEST_RESULT_GRP_KEY, + RG.LAB_TEST_UID + FROM [dbo].TEST_RESULT_GROUPING AS RG WITH (NOLOCK) + LEFT JOIN [dbo].NRT_LAB_TEST_RESULT_GROUP_KEY AS K WITH (NOLOCK) + ON RG.TEST_RESULT_GRP_KEY = K.TEST_RESULT_GRP_KEY + WHERE + K.TEST_RESULT_GRP_KEY IS NULL + ORDER BY RG.TEST_RESULT_GRP_KEY; + + SET IDENTITY_INSERT [dbo].NRT_LAB_TEST_RESULT_GROUP_KEY OFF - SET IDENTITY_INSERT [dbo].nrt_lab_test_result_group_key OFF - - END \ No newline at end of file + END diff --git a/liquibase-service/src/main/resources/db/005-rdb_modern/routines/310-sp_covid_case_datamart_postprocessing-001.sql b/liquibase-service/src/main/resources/db/005-rdb_modern/routines/310-sp_covid_case_datamart_postprocessing-001.sql index 9eb29c4da..3d8c10950 100644 --- a/liquibase-service/src/main/resources/db/005-rdb_modern/routines/310-sp_covid_case_datamart_postprocessing-001.sql +++ b/liquibase-service/src/main/resources/db/005-rdb_modern/routines/310-sp_covid_case_datamart_postprocessing-001.sql @@ -257,41 +257,39 @@ BEGIN TRY cast(pat.PATIENT_NAME_SUFFIX as varchar(20)) AS 'PATIENT_NAME_SUFFIX', pat.PATIENT_DOB AS 'PATIENT_DOB', cast(pat.PATIENT_AGE_REPORTED as varchar(10)) AS 'PATIENT_AGE_REPORTED', - pat.PATIENT_AGE_REPORTED_UNIT AS 'PATIENT_AGE_RPTD_UNIT', + nrtPat.AGE_REPORTED_UNIT_CD AS 'PATIENT_AGE_RPTD_UNIT', cast(pat.PATIENT_BIRTH_COUNTRY as varchar(20)) AS 'PATIENT_BIRTH_COUNTRY', cast(pat.PATIENT_CURRENT_SEX as varchar(1)) AS 'PATIENT_CURRENT_SEX', - cast(pat.PATIENT_DECEASED_INDICATOR as varchar(20)) AS 'PATIENT_DECEASED_IND', + cast(nrtPat.DECEASED_IND_CD as varchar(20)) AS 'PATIENT_DECEASED_IND', pat.PATIENT_DECEASED_DATE AS 'PATIENT_DECEASED_DT', - pat.PATIENT_MARITAL_STATUS AS 'PATIENT_MARITAL_STS', + nrtPat.MARITAL_STATUS_CD AS 'PATIENT_MARITAL_STS', pat.PATIENT_STREET_ADDRESS_1 AS 'PATIENT_STREET_ADDR_1', pat.PATIENT_STREET_ADDRESS_2 AS 'PATIENT_STREET_ADDR_2', pat.PATIENT_CITY AS 'PATIENT_CITY', - cast(pat.PATIENT_STATE as varchar(20)) AS 'PATIENT_STATE', + cast(nrtPat.STATE_CODE as varchar(20)) AS 'PATIENT_STATE', cast(pat.PATIENT_ZIP as varchar(20)) AS 'PATIENT_ZIP', - pat.PATIENT_COUNTY AS 'PATIENT_COUNTY', - cast(pat.PATIENT_COUNTRY as varchar(20)) AS 'PATIENT_COUNTRY', + cast(nrtPat.COUNTY_CODE as varchar(20)) AS 'PATIENT_COUNTY', + cast(nrtPat.COUNTRY_CODE as varchar(20)) AS 'PATIENT_COUNTRY', cast(pat.PATIENT_PHONE_HOME as varchar(20)) AS 'PATIENT_TEL_HOME', cast(pat.PATIENT_PHONE_WORK as varchar(20)) AS 'PATIENT_PHONE_WORK', cast(pat.PATIENT_PHONE_EXT_WORK as varchar(20)) AS 'PATIENT_PHONE_EXT_WORK', cast(pat.PATIENT_PHONE_CELL as varchar(20)) AS 'PATIENT_TEL_CELL', pat.PATIENT_EMAIL AS 'PATIENT_EMAIL', - cast(pat.PATIENT_ETHNICITY as varchar(20)) AS 'PATIENT_ETHNICITY', + cast(nrtPat.ETHNIC_GROUP_IND as varchar(20)) AS 'PATIENT_ETHNICITY', pat.PATIENT_RACE_CALCULATED AS 'PATIENT_RACE_CALC' INTO #COVID_PATIENT_DATA FROM dbo.NRT_INVESTIGATION inv - inner join - #PHC_LIST phc_list on inv.public_health_case_uid = phc_list.public_health_case_uid - left outer join - ( - select dPat.* - from dbo.D_PATIENT dPat WITH(NOLOCK) - inner join dbo.NRT_PATIENT nrtPat WITH(NOLOCK) - on nrtPat.patient_uid = dPat.patient_uid - and nrtPat.status_name_cd = 'A' and nrtPat.nm_use_cd = 'L' - ) pat - ON inv.patient_id = pat.patient_uid ; + INNER JOIN + #PHC_LIST phc_list ON inv.public_health_case_uid = phc_list.public_health_case_uid + LEFT OUTER JOIN + dbo.D_PATIENT pat WITH(NOLOCK) ON inv.patient_id = pat.patient_uid + LEFT OUTER JOIN + dbo.NRT_PATIENT nrtPat WITH(NOLOCK) + ON nrtPat.patient_uid = pat.patient_uid + AND nrtPat.status_name_cd = 'A' + AND nrtPat.nm_use_cd = 'L'; SELECT @ROWCOUNT_NO = @@ROWCOUNT; @@ -379,7 +377,7 @@ BEGIN TRY ); INSERT INTO @Table - SELECT [user_defined_column_nm] + SELECT DISTINCT [user_defined_column_nm] FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta WITH(NOLOCK) inner join @@ -444,7 +442,7 @@ BEGIN TRY SELECT @columns+=N', rdbMeta.' + QUOTENAME(LTRIM(RTRIM([user_defined_column_nm]))) FROM ( - SELECT [user_defined_column_nm] + SELECT DISTINCT [user_defined_column_nm] FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta WITH(NOLOCK) inner join @@ -463,7 +461,7 @@ BEGIN TRY SET @sql = N'SELECT [ACT_UID] as ACT_DISCRETE_UID , ' + STUFF(@columns, 1, 2, '') + ' into '+ @tmp_COVID_CASE_DISCRETE_DATA+ ' FROM ( - SELECT [ACT_UID], + SELECT DISTINCT [ACT_UID], replace(ISNULL(CAST(code_short_desc_txt AS VARCHAR(2000)), answer_txt ), CHAR(13) + CHAR(10), '' '') as answer_txt , [user_defined_column_nm] from @@ -579,7 +577,7 @@ BEGIN TRY ); INSERT INTO @Table2 - SELECT [user_defined_column_nm] + SELECT DISTINCT [user_defined_column_nm] FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta inner join @@ -641,7 +639,7 @@ BEGIN TRY SELECT @columns+=N', rdbMeta.' + QUOTENAME(LTRIM(RTRIM([user_defined_column_nm]))) FROM ( - SELECT [user_defined_column_nm] + SELECT DISTINCT [user_defined_column_nm] FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta inner join @@ -669,7 +667,7 @@ BEGIN TRY #COVID_CASE_MULTI_ANS_MULTI_DATA multiAnsData inner join ( - SELECT NBS_QUESTION_UID, user_defined_column_nm + SELECT DISTINCT NBS_QUESTION_UID, user_defined_column_nm FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta with (nolock) inner join @@ -713,7 +711,7 @@ BEGIN TRY ); INSERT INTO @Table3 - SELECT [user_defined_column_nm] + '_1' AS user_defined_column_nm + SELECT DISTINCT [user_defined_column_nm] + '_1' AS user_defined_column_nm FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta WITH(NOLOCK) inner join @@ -773,7 +771,7 @@ BEGIN TRY SELECT @columns1+=N', rdbMeta.' + QUOTENAME(LTRIM(RTRIM([user_defined_column_nm]))) FROM ( - SELECT [user_defined_column_nm] + '_1' AS user_defined_column_nm + SELECT DISTINCT [user_defined_column_nm] + '_1' AS user_defined_column_nm FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta WITH(NOLOCK) inner join @@ -792,7 +790,7 @@ BEGIN TRY SET @sql = N'SELECT [ACT_UID] as ACT_RPT_1_UID , ' + STUFF(@columns1, 1, 2, '') + ' into '+@tmp_COVID_CASE_RPT_DATA_1+ ' FROM ( - SELECT [ACT_UID], replace(ISNULL(CAST(code_short_desc_txt AS VARCHAR(2000)), CAST(answer_txt AS VARCHAR(2000) )), CHAR(13) + CHAR(10), '' '') as answer_txt , user_defined_column_nm' + '+''_1'' as user_defined_column_nm + SELECT DISTINCT [ACT_UID], replace(ISNULL(CAST(code_short_desc_txt AS VARCHAR(2000)), CAST(answer_txt AS VARCHAR(2000) )), CHAR(13) + CHAR(10), '' '') as answer_txt , user_defined_column_nm' + '+''_1'' as user_defined_column_nm FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta with (nolock) inner join @@ -842,7 +840,7 @@ BEGIN TRY ); INSERT INTO @Table4 - SELECT [user_defined_column_nm] + '_2' AS user_defined_column_nm + SELECT DISTINCT [user_defined_column_nm] + '_2' AS user_defined_column_nm FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta WITH(NOLOCK) inner join @@ -902,7 +900,7 @@ BEGIN TRY SELECT @columns1+=N', rdbMeta.' + QUOTENAME(LTRIM(RTRIM([user_defined_column_nm]))) FROM ( - SELECT [user_defined_column_nm] + '_2' AS user_defined_column_nm + SELECT DISTINCT [user_defined_column_nm] + '_2' AS user_defined_column_nm FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta WITH(NOLOCK) inner join @@ -921,7 +919,7 @@ BEGIN TRY SET @sql = N'SELECT [ACT_UID] as ACT_RPT_2_UID , ' + STUFF(@columns1, 1, 2, '') + ' into '+@tmp_COVID_CASE_RPT_DATA_2 + ' FROM ( - SELECT [ACT_UID], replace(ISNULL(CAST(code_short_desc_txt AS VARCHAR(2000)), CAST(answer_txt AS VARCHAR(2000) )), CHAR(13) + CHAR(10), '' '') as answer_txt , user_defined_column_nm' + '+''_2'' as user_defined_column_nm + SELECT DISTINCT [ACT_UID], replace(ISNULL(CAST(code_short_desc_txt AS VARCHAR(2000)), CAST(answer_txt AS VARCHAR(2000) )), CHAR(13) + CHAR(10), '' '') as answer_txt , user_defined_column_nm' + '+''_2'' as user_defined_column_nm from dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta with (nolock) inner join @@ -973,8 +971,8 @@ BEGIN TRY ); insert into @Table5 - select [user_defined_column_nm] + '_3' AS user_defined_column_nm - from + SELECT DISTINCT [user_defined_column_nm] + '_3' AS user_defined_column_nm + FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta WITH(NOLOCK) inner join dbo.NRT_ODSE_NBS_UI_METADATA uiMeta WITH(NOLOCK) @@ -1031,7 +1029,7 @@ BEGIN TRY SELECT @columns1+=N', rdbMeta.' + QUOTENAME(LTRIM(RTRIM([user_defined_column_nm]))) FROM ( - SELECT [user_defined_column_nm] + '_3' AS user_defined_column_nm + SELECT DISTINCT [user_defined_column_nm] + '_3' AS user_defined_column_nm FROM dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta WITH(NOLOCK) inner join @@ -1050,7 +1048,7 @@ BEGIN TRY SET @sql = N'SELECT [ACT_UID] as ACT_RPT_3_UID , ' + STUFF(@columns1, 1, 2, '') + ' into '+@tmp_COVID_CASE_RPT_DATA_3 + ' FROM ( - SELECT [ACT_UID], replace(ISNULL(CAST(code_short_desc_txt AS VARCHAR(2000)), CAST(answer_txt AS VARCHAR(2000) )), CHAR(13) + CHAR(10), '' '') as answer_txt , user_defined_column_nm' + '+''_3'' as user_defined_column_nm + SELECT DISTINCT [ACT_UID], replace(ISNULL(CAST(code_short_desc_txt AS VARCHAR(2000)), CAST(answer_txt AS VARCHAR(2000) )), CHAR(13) + CHAR(10), '' '') as answer_txt , user_defined_column_nm' + '+''_3'' as user_defined_column_nm from dbo.NRT_ODSE_NBS_RDB_METADATA rdbMeta with (nolock) inner join @@ -1112,125 +1110,125 @@ BEGIN TRY THEN 'MAX' ELSE TRIM(STR(CHARACTER_MAXIMUM_LENGTH )) END + '))' - ELSE c.COLUMN_NAME + ELSE c.column_name END AS casted_column INTO #CASTED_COLUMNS - FROM rdb.INFORMATION_SCHEMA.COLUMNS c WITH(NOLOCK) + FROM INFORMATION_SCHEMA.COLUMNS c WITH(NOLOCK) WHERE c.TABLE_NAME = 'COVID_CASE_DATAMART' AND TABLE_SCHEMA = 'dbo' DECLARE @insert_query NVARCHAR(MAX); SET @insert_query = ( SELECT 'INSERT INTO dbo.COVID_CASE_DATAMART( ' + - STUFF(( + ISNULL(STUFF(( SELECT ', [' + column_name + ']' - FROM tempdb.INFORMATION_SCHEMA.COLUMNS + FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt WHERE table_name LIKE '#COVID_CASE_CORE_DATA%' - ORDER BY column_name + ORDER BY tt.column_name FOR XML PATH('') - ), 1, 1, '') + ',' + - STUFF(( + ), 1, 1, ''), '') + ',' + + ISNULL(STUFF(( SELECT ', [' + column_name + ']' - FROM tempdb.INFORMATION_SCHEMA.COLUMNS + FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt WHERE table_name LIKE '#COVID_PATIENT_DATA%' AND column_name NOT IN('PAT_CASE_UID') - ORDER BY column_name + ORDER BY tt.column_name FOR XML PATH('') - ), 1, 1, '') + ',' + - STUFF(( + ), 1, 1, ''), '') + ',' + + ISNULL(STUFF(( SELECT ', [' + column_name + ']' - FROM tempdb.INFORMATION_SCHEMA.COLUMNS + FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt WHERE table_name LIKE '#COVID_ENTITIES_DATA%' AND column_name NOT IN('ENTITY_CASE_UID') - ORDER BY column_name + ORDER BY tt.column_name FOR XML PATH('') - ), 1, 1, '') + ',' + - STUFF(( + ), 1, 1, ''), '') + ',' + + ISNULL(STUFF(( SELECT ', [' + column_name + ']' - FROM tempdb.INFORMATION_SCHEMA.COLUMNS + FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt WHERE table_name = @tmp_COVID_CASE_DISCRETE_DATA AND column_name NOT IN('ACT_DISCRETE_UID') - ORDER BY column_name FOR XML PATH('') - ), 1, 1, '') + ', ' + - STUFF(( + ORDER BY tt.column_name FOR XML PATH('') + ), 1, 1, ''), '') + ', ' + + ISNULL(STUFF(( SELECT ', [' + column_name + ']' - FROM tempdb.INFORMATION_SCHEMA.COLUMNS + FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt WHERE table_name = @tmp_COVID_CASE_MULTI_DATA AND column_name NOT IN('ACT_MULTI_UID') - ORDER BY column_name FOR XML PATH('') - ), 1, 1, '') + ', ' + - STUFF(( + ORDER BY tt.column_name FOR XML PATH('') + ), 1, 1, ''), '') + ', ' + + ISNULL(STUFF(( SELECT ', [' + column_name + ']' - FROM tempdb.INFORMATION_SCHEMA.COLUMNS + FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt WHERE table_name = @tmp_COVID_CASE_RPT_DATA_1 AND column_name NOT IN('ACT_RPT_1_UID') - ORDER BY column_name FOR XML PATH('') - ), 1, 1, '') + ',' + - STUFF(( + ORDER BY tt.column_name FOR XML PATH('') + ), 1, 1, ''), '') + ',' + + ISNULL(STUFF(( SELECT ', [' + column_name + ']' - FROM tempdb.INFORMATION_SCHEMA.COLUMNS + FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt WHERE table_name = @tmp_COVID_CASE_RPT_DATA_2 AND column_name NOT IN('ACT_RPT_2_UID') - ORDER BY column_name FOR XML PATH('') - ), 1, 1, '') + ',' + - STUFF(( + ORDER BY tt.column_name FOR XML PATH('') + ), 1, 1, ''), '') + ',' + + ISNULL(STUFF(( SELECT ', [' + column_name + ']' - FROM tempdb.INFORMATION_SCHEMA.COLUMNS + FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt WHERE table_name = @tmp_COVID_CASE_RPT_DATA_3 AND column_name NOT IN('ACT_RPT_3_UID') - ORDER BY column_name FOR XML PATH('') - ), 1, 1, '') + ORDER BY tt.column_name FOR XML PATH('') + ), 1, 1, ''), '') + ' ) select distinct ' + - STUFF(( + ISNULL(STUFF(( SELECT ', ' + cc.casted_column FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt INNER JOIN #CASTED_COLUMNS cc on cc.COLUMN_NAME = tt.COLUMN_NAME WHERE tt.table_name LIKE '#COVID_CASE_CORE_DATA%' ORDER BY tt.column_name FOR XML PATH('') - ), 1, 1, '') + ',' + - STUFF(( + ), 1, 1, ''), '') + ',' + + ISNULL(STUFF(( SELECT ', ' + cc.casted_column FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt INNER JOIN #CASTED_COLUMNS cc on cc.COLUMN_NAME = tt.COLUMN_NAME WHERE tt.table_name LIKE '#COVID_PATIENT_DATA%' AND tt.column_name NOT IN('PAT_CASE_UID') ORDER BY tt.column_name FOR XML PATH('') - ), 1, 1, '') + ',' + - STUFF(( + ), 1, 1, ''), '') + ',' + + ISNULL(STUFF(( SELECT ', ' + cc.casted_column FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt INNER JOIN #CASTED_COLUMNS cc on cc.COLUMN_NAME = tt.COLUMN_NAME WHERE tt.table_name LIKE '#COVID_ENTITIES_DATA%' AND tt.column_name NOT IN('ENTITY_CASE_UID') ORDER BY tt.column_name FOR XML PATH('') - ), 1, 1, '') + ',' + - STUFF(( + ), 1, 1, ''), '') + ',' + + ISNULL(STUFF(( SELECT ', ' + cc.casted_column FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt INNER JOIN #CASTED_COLUMNS cc on cc.COLUMN_NAME = tt.COLUMN_NAME WHERE tt.table_name = @tmp_COVID_CASE_DISCRETE_DATA AND tt.column_name NOT IN('ACT_DISCRETE_UID') ORDER BY tt.column_name FOR XML PATH('') - ), 1, 1, '') + ', ' + - STUFF(( + ), 1, 1, ''), '') + ', ' + + ISNULL(STUFF(( SELECT ', ' + cc.casted_column FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt INNER JOIN #CASTED_COLUMNS cc on cc.COLUMN_NAME = tt.COLUMN_NAME WHERE tt.table_name = @tmp_COVID_CASE_MULTI_DATA AND tt.column_name NOT IN('ACT_MULTI_UID') ORDER BY tt.column_name FOR XML PATH('') - ), 1, 1, '') + ', ' + - STUFF(( + ), 1, 1, ''), '') + ', ' + + ISNULL(STUFF(( SELECT ', ' + cc.casted_column FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt INNER JOIN #CASTED_COLUMNS cc on cc.COLUMN_NAME = tt.COLUMN_NAME WHERE tt.table_name = @tmp_COVID_CASE_RPT_DATA_1 AND tt.column_name NOT IN('ACT_RPT_1_UID') ORDER BY tt.column_name FOR XML PATH('') - ), 1, 1, '') + ',' + - STUFF(( + ), 1, 1, ''), '') + ',' + + ISNULL(STUFF(( SELECT ', ' + cc.casted_column FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt INNER JOIN #CASTED_COLUMNS cc on cc.COLUMN_NAME = tt.COLUMN_NAME WHERE tt.table_name = @tmp_COVID_CASE_RPT_DATA_2 AND tt.column_name NOT IN('ACT_RPT_2_UID') ORDER BY tt.column_name FOR XML PATH('') - ), 1, 1, '') + ',' + - STUFF(( + ), 1, 1, ''), '') + ',' + + ISNULL(STUFF(( SELECT ', ' + cc.casted_column FROM tempdb.INFORMATION_SCHEMA.COLUMNS tt INNER JOIN #CASTED_COLUMNS cc on cc.COLUMN_NAME = tt.COLUMN_NAME WHERE tt.table_name = @tmp_COVID_CASE_RPT_DATA_3 AND tt.column_name NOT IN('ACT_RPT_3_UID') ORDER BY tt.column_name FOR XML PATH('') - ), 1, 1, '') + ' + ), 1, 1, ''), '') + ' FROM #COVID_CASE_CORE_DATA coreData INNER JOIN #COVID_PATIENT_DATA patData ON coreData.public_health_case_uid = patData.PAT_CASE_UID LEFT OUTER JOIN #COVID_ENTITIES_DATA entData ON coreData.public_health_case_uid = entData.ENTITY_CASE_UID @@ -1242,11 +1240,11 @@ BEGIN TRY ); if @debug='true' - select @insert_query as insert_query; + select @insert_query as insert_query; + EXEC sp_executesql @insert_query; SELECT @ROWCOUNT_NO = @@ROWCOUNT; - COMMIT TRANSACTION; INSERT INTO [DBO].[JOB_FLOW_LOG] @@ -1336,4 +1334,4 @@ BEGIN TRY END CATCH -END; \ No newline at end of file +END; diff --git a/liquibase-service/src/main/resources/db/005-rdb_modern/tables/005-create_nrt_patient-001.sql b/liquibase-service/src/main/resources/db/005-rdb_modern/tables/005-create_nrt_patient-001.sql index d1e2722b6..8978bd1ea 100644 --- a/liquibase-service/src/main/resources/db/005-rdb_modern/tables/005-create_nrt_patient-001.sql +++ b/liquibase-service/src/main/resources/db/005-rdb_modern/tables/005-create_nrt_patient-001.sql @@ -1,134 +1,189 @@ -IF NOT EXISTS (SELECT 1 FROM sysobjects WHERE name = 'nrt_patient' and xtype = 'U') +IF + NOT EXISTS ( + SELECT 1 FROM sysobjects + WHERE name = 'nrt_patient' AND xtype = 'U' + ) BEGIN - create table dbo.nrt_patient + CREATE TABLE dbo.nrt_patient ( - patient_uid bigint not null primary key, - patient_mpr_uid bigint null, - record_status varchar(50) null, - local_id varchar(50) null, - general_comments varchar(2000) null, - first_name varchar(50) null, - middle_name varchar(50) null, - last_name varchar(50) null, - name_suffix varchar(50) null, - nm_use_cd varchar(20) null, - status_name_cd varchar(1) null, - alias_nickname varchar(50) null, - street_address_1 varchar(50) null, - street_address_2 varchar(50) null, - city varchar(50) null, - state varchar(50) null, - state_code varchar(50) null, - zip varchar(50) null, - county varchar(50) null, - county_code varchar(50) null, - country varchar(50) null, - country_code varchar(50) null, - within_city_limits varchar(10) null, - phone_home varchar(50) null, - phone_ext_home varchar(50) null, - phone_work varchar(50) null, - phone_ext_work varchar(50) null, - phone_cell varchar(50) null, - email varchar(100) null, - dob datetime null, - age_reported numeric(18, 0) null, - age_reported_unit varchar(20) null, - age_reported_unit_cd varchar(20) null, - birth_sex varchar(50) null, - current_sex varchar(50) null, - curr_sex_cd varchar(20) null, - deceased_indicator varchar(50) null, - deceased_ind_cd varchar(20) null, - deceased_date datetime null, - marital_status varchar(50) null, - ssn varchar(50) null, - ethnic_group_ind varchar(20) null, - ethnicity varchar(50) null, - race_calculated varchar(50) null, - race_calc_details varchar(4000) null, - race_amer_ind_1 varchar(50) null, - race_amer_ind_2 varchar(50) null, - race_amer_ind_3 varchar(50) null, - race_amer_ind_gt3_ind varchar(50) null, - race_amer_ind_all varchar(2000) null, - race_asian_1 varchar(50) null, - race_asian_2 varchar(50) null, - race_asian_3 varchar(50) null, - race_asian_gt3_ind varchar(50) null, - race_asian_all varchar(2000) null, - race_black_1 varchar(50) null, - race_black_2 varchar(50) null, - race_black_3 varchar(50) null, - race_black_gt3_ind varchar(50) null, - race_black_all varchar(2000) null, - race_nat_hi_1 varchar(50) null, - race_nat_hi_2 varchar(50) null, - race_nat_hi_3 varchar(50) null, - race_nat_hi_gt3_ind varchar(50) null, - race_nat_hi_all varchar(2000) null, - race_white_1 varchar(50) null, - race_white_2 varchar(50) null, - race_white_3 varchar(50) null, - race_white_gt3_ind varchar(50) null, - race_white_all varchar(2000) null, - patient_number varchar(50) null, - patient_number_auth varchar(199) null, - entry_method varchar(50) null, - speaks_english varchar(100) null, - unk_ethnic_rsn varchar(100) null, - curr_sex_unk_rsn varchar(100) null, - preferred_gender varchar(100) null, - addl_gender_info varchar(100) null, - census_tract varchar(100) null, - race_all varchar(4000) null, - birth_country varchar(50) null, - primary_occupation varchar(50) null, - primary_language varchar(50) null, - add_user_id bigint null, - add_user_name varchar(50) null, - add_time datetime null, - last_chg_user_id bigint null, - last_chg_user_name varchar(50) null, - last_chg_time datetime null, - refresh_datetime datetime2 generated always as row start not null, - max_datetime datetime2 generated always as row end hidden not null, - period for system_time (refresh_datetime,max_datetime) + patient_uid bigint NOT NULL PRIMARY KEY, + patient_mpr_uid bigint NULL, + record_status varchar(50) NULL, + local_id varchar(50) NULL, + general_comments varchar(2000) NULL, + first_name varchar(50) NULL, + middle_name varchar(50) NULL, + last_name varchar(50) NULL, + name_suffix varchar(50) NULL, + nm_use_cd varchar(20) NULL, + status_name_cd varchar(1) NULL, + alias_nickname varchar(50) NULL, + street_address_1 varchar(50) NULL, + street_address_2 varchar(50) NULL, + city varchar(50) NULL, + state varchar(50) NULL, + state_code varchar(50) NULL, + zip varchar(50) NULL, + county varchar(50) NULL, + county_code varchar(50) NULL, + country varchar(50) NULL, + country_code varchar(50) NULL, + within_city_limits varchar(10) NULL, + phone_home varchar(50) NULL, + phone_ext_home varchar(50) NULL, + phone_work varchar(50) NULL, + phone_ext_work varchar(50) NULL, + phone_cell varchar(50) NULL, + email varchar(100) NULL, + dob datetime NULL, + age_reported numeric(18, 0) NULL, + age_reported_unit varchar(20) NULL, + age_reported_unit_cd varchar(20) NULL, + birth_sex varchar(50) NULL, + current_sex varchar(50) NULL, + curr_sex_cd varchar(20) NULL, + deceased_indicator varchar(50) NULL, + deceased_ind_cd varchar(20) NULL, + deceased_date datetime NULL, + marital_status varchar(50) NULL, + marital_status_cd varchar(20) NULL, + ssn varchar(50) NULL, + ethnic_group_ind varchar(20) NULL, + ethnicity varchar(50) NULL, + race_calculated varchar(50) NULL, + race_calc_details varchar(4000) NULL, + race_amer_ind_1 varchar(50) NULL, + race_amer_ind_2 varchar(50) NULL, + race_amer_ind_3 varchar(50) NULL, + race_amer_ind_gt3_ind varchar(50) NULL, + race_amer_ind_all varchar(2000) NULL, + race_asian_1 varchar(50) NULL, + race_asian_2 varchar(50) NULL, + race_asian_3 varchar(50) NULL, + race_asian_gt3_ind varchar(50) NULL, + race_asian_all varchar(2000) NULL, + race_black_1 varchar(50) NULL, + race_black_2 varchar(50) NULL, + race_black_3 varchar(50) NULL, + race_black_gt3_ind varchar(50) NULL, + race_black_all varchar(2000) NULL, + race_nat_hi_1 varchar(50) NULL, + race_nat_hi_2 varchar(50) NULL, + race_nat_hi_3 varchar(50) NULL, + race_nat_hi_gt3_ind varchar(50) NULL, + race_nat_hi_all varchar(2000) NULL, + race_white_1 varchar(50) NULL, + race_white_2 varchar(50) NULL, + race_white_3 varchar(50) NULL, + race_white_gt3_ind varchar(50) NULL, + race_white_all varchar(2000) NULL, + patient_number varchar(50) NULL, + patient_number_auth varchar(199) NULL, + entry_method varchar(50) NULL, + speaks_english varchar(100) NULL, + unk_ethnic_rsn varchar(100) NULL, + curr_sex_unk_rsn varchar(100) NULL, + preferred_gender varchar(100) NULL, + addl_gender_info varchar(100) NULL, + census_tract varchar(100) NULL, + race_all varchar(4000) NULL, + birth_country varchar(50) NULL, + primary_occupation varchar(50) NULL, + primary_language varchar(50) NULL, + add_user_id bigint NULL, + add_user_name varchar(50) NULL, + add_time datetime NULL, + last_chg_user_id bigint NULL, + last_chg_user_name varchar(50) NULL, + last_chg_time datetime NULL, + refresh_datetime datetime2 GENERATED ALWAYS AS ROW START NOT NULL, + max_datetime datetime2 GENERATED ALWAYS AS ROW END HIDDEN NOT NULL, + PERIOD FOR SYSTEM_TIME (refresh_datetime, max_datetime) ); END -IF EXISTS (SELECT 1 FROM sysobjects WHERE name = 'nrt_patient' and xtype = 'U') +IF + EXISTS ( + SELECT 1 FROM sysobjects + WHERE name = 'nrt_patient' AND xtype = 'U' + ) BEGIN --CNDE-2498 - IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'nm_use_cd' AND Object_ID = Object_ID(N'nrt_patient')) + IF + NOT EXISTS ( + SELECT 1 FROM sys.columns + WHERE + name = N'nm_use_cd' + AND object_id = OBJECT_ID(N'nrt_patient') + ) BEGIN ALTER TABLE dbo.nrt_patient ADD nm_use_cd varchar(20); END; - IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'status_name_cd' AND Object_ID = Object_ID(N'nrt_patient')) + IF + NOT EXISTS ( + SELECT 1 FROM sys.columns + WHERE + name = N'status_name_cd' + AND object_id = OBJECT_ID(N'nrt_patient') + ) BEGIN ALTER TABLE dbo.nrt_patient ADD status_name_cd varchar(1); END; - IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'ethnic_group_ind' AND Object_ID = Object_ID(N'nrt_patient')) + IF + NOT EXISTS ( + SELECT 1 FROM sys.columns + WHERE + name = N'ethnic_group_ind' + AND object_id = OBJECT_ID(N'nrt_patient') + ) BEGIN - ALTER TABLE dbo.nrt_patient ADD ethnic_group_ind varchar(20); + ALTER TABLE dbo.nrt_patient ADD ethnic_group_ind varchar( + 20 + ); END; - IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'deceased_ind_cd' AND Object_ID = Object_ID(N'nrt_patient')) + IF + NOT EXISTS ( + SELECT 1 FROM sys.columns + WHERE + name = N'deceased_ind_cd' + AND object_id = OBJECT_ID(N'nrt_patient') + ) BEGIN ALTER TABLE dbo.nrt_patient ADD deceased_ind_cd varchar(20); END; - IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'curr_sex_cd' AND Object_ID = Object_ID(N'nrt_patient')) + IF + NOT EXISTS ( + SELECT 1 FROM sys.columns + WHERE + name = N'curr_sex_cd' + AND object_id = OBJECT_ID(N'nrt_patient') + ) BEGIN ALTER TABLE dbo.nrt_patient ADD curr_sex_cd varchar(20); END; - IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'age_reported_unit_cd' AND Object_ID = Object_ID(N'nrt_patient')) + IF + NOT EXISTS ( + SELECT 1 FROM sys.columns + WHERE + name = N'age_reported_unit_cd' + AND object_id = OBJECT_ID(N'nrt_patient') + ) BEGIN - ALTER TABLE dbo.nrt_patient ADD age_reported_unit_cd varchar(20); + ALTER TABLE dbo.nrt_patient ADD age_reported_unit_cd varchar( + 20 + ); END; - --CNDE-2838 - IF NOT EXISTS(SELECT 1 FROM sys.columns WHERE name = N'country_code' AND Object_ID = Object_ID(N'nrt_patient')) + --CNDE-2838 + IF + NOT EXISTS ( + SELECT 1 FROM sys.columns + WHERE + name = N'country_code' + AND object_id = OBJECT_ID(N'nrt_patient') + ) BEGIN - ALTER TABLE dbo.nrt_patient ADD country_code VARCHAR(50); + ALTER TABLE dbo.nrt_patient ADD country_code varchar(50); END; END; diff --git a/reporting-pipeline-service/build.gradle b/reporting-pipeline-service/build.gradle index 317c19821..580ea60fb 100644 --- a/reporting-pipeline-service/build.gradle +++ b/reporting-pipeline-service/build.gradle @@ -115,6 +115,11 @@ dependencies { testImplementation 'org.awaitility:awaitility:4.3.0' testImplementation 'org.springframework.boot:spring-boot-starter-jdbc' + + testImplementation 'org.liquibase:liquibase-core:4.27.0' + + testCompileOnly 'org.projectlombok:lombok' + testAnnotationProcessor 'org.projectlombok:lombok' } dependencyManagement { diff --git a/reporting-pipeline-service/src/main/java/gov/cdc/nbs/report/pipeline/person/model/dto/patient/PatientReporting.java b/reporting-pipeline-service/src/main/java/gov/cdc/nbs/report/pipeline/person/model/dto/patient/PatientReporting.java index b542dd340..4def10a82 100644 --- a/reporting-pipeline-service/src/main/java/gov/cdc/nbs/report/pipeline/person/model/dto/patient/PatientReporting.java +++ b/reporting-pipeline-service/src/main/java/gov/cdc/nbs/report/pipeline/person/model/dto/patient/PatientReporting.java @@ -41,6 +41,7 @@ public class PatientReporting implements PersonExtendedProps { private String lastChgTime; private String localId; private String maritalStatus; + private String maritalStatusCd; private String primaryOccupation; private Long patientMprUid; private String preferredGender; diff --git a/reporting-pipeline-service/src/main/java/gov/cdc/nbs/report/pipeline/person/transformer/PersonTransformers.java b/reporting-pipeline-service/src/main/java/gov/cdc/nbs/report/pipeline/person/transformer/PersonTransformers.java index dccf25b94..259c5a77d 100644 --- a/reporting-pipeline-service/src/main/java/gov/cdc/nbs/report/pipeline/person/transformer/PersonTransformers.java +++ b/reporting-pipeline-service/src/main/java/gov/cdc/nbs/report/pipeline/person/transformer/PersonTransformers.java @@ -144,6 +144,7 @@ public PatientReporting buildPatientReporting(PatientSp p) { .lastChgTime(p.getLastChgTime()) .localId(p.getLocalId()) .maritalStatus(p.getMaritalStatus()) + .maritalStatusCd(p.getMaritalStatusCd()) .primaryOccupation(p.getPrimaryOccupation()) .patientMprUid(p.getPersonParentUid()) .preferredGender(p.getPreferredGender()) diff --git a/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/functional/FunctionalTest.java b/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/functional/FunctionalTest.java index 30709060f..a6230b73a 100644 --- a/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/functional/FunctionalTest.java +++ b/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/functional/FunctionalTest.java @@ -2,10 +2,16 @@ import java.io.File; import java.time.Duration; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Tag; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.ActiveProfiles; import org.testcontainers.containers.ComposeContainer; @@ -23,30 +29,61 @@ public abstract class FunctionalTest { private static boolean started = false; private static final File base = new File("../docker-compose.yaml"); - private static final File testCompose = new File("../docker-compose.test.yaml"); + + private static ComposeContainer environment; + + @Autowired + @Qualifier("customComposeFile") + private static File customComposeFile; @SuppressWarnings("resource") - private static final ComposeContainer environment = - new ComposeContainer(DockerImageName.parse("docker:25.0.5"), base, testCompose) - // List specific services to prevent launching wildfly container - .withServices("nbs-mssql", "kafka", "debezium", "kafka-connect") - .waitingFor("debezium", Wait.forHealthcheck()) - .waitingFor("kafka-connect", Wait.forHealthcheck()) - // Pull logs from the containers for better debugging - .withLogConsumer("nbs-mssql", consumer) - .withLogConsumer("kafka", consumer) - .withLogConsumer("debezium", consumer) - .withLogConsumer("kafka-connect", consumer) - // Set the maximum startup timeout all the waits set are bounded to - .withStartupTimeout(Duration.ofMinutes(10)); + static void initializeEnvironment() { + DockerImageName dockerImage = DockerImageName.parse("docker:25.0.5"); + List composeFiles = new ArrayList<>(Arrays.asList(base)); + if (customComposeFile != null) { + logger.info( + "Using custom compose override. Base: {}, Custom: {}", + base.getPath(), + customComposeFile.getPath()); + composeFiles.add(customComposeFile); + } + environment = + new ComposeContainer(dockerImage, composeFiles) + // List specific services to prevent launching wildfly container + .withServices("nbs-mssql", "liquibase", "kafka", "debezium", "kafka-connect") + .waitingFor("debezium", Wait.forHealthcheck()) + .waitingFor("kafka-connect", Wait.forHealthcheck()) + // Pull logs from the containers for better debugging + .withLogConsumer("nbs-mssql", consumer) + .withLogConsumer("liquibase", consumer) + .withLogConsumer("kafka", consumer) + .withLogConsumer("debezium", consumer) + .withLogConsumer("kafka-connect", consumer) + // Set the maximum startup timeout all the waits set are bounded to + .withStartupTimeout(Duration.ofMinutes(10)); + } @BeforeAll static void setUp() { // Start up necessary containers if they are not already running. // ComposeContainer does not allow container reuse natively if (!started) { + if (environment == null) { + initializeEnvironment(); + } environment.start(); started = true; } } + + @AfterAll + static void tearDown() { + if (started) { + if (environment == null) { + initializeEnvironment(); + } + environment.stop(); + started = false; + } + } } diff --git a/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/support/config/DataSourceConfig.java b/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/support/config/DataSourceConfig.java index b2b34176f..34e1d17b0 100644 --- a/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/support/config/DataSourceConfig.java +++ b/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/support/config/DataSourceConfig.java @@ -1,6 +1,8 @@ package gov.cdc.nbs.report.pipeline.integration.support.config; +import java.io.File; import javax.sql.DataSource; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.autoconfigure.jdbc.DataSourceProperties; import org.springframework.boot.context.properties.ConfigurationProperties; @@ -8,8 +10,10 @@ import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; import org.springframework.context.annotation.Profile; +import org.springframework.core.env.Environment; import org.springframework.jdbc.core.simple.JdbcClient; +@Slf4j @Configuration @Profile("test") public class DataSourceConfig { @@ -49,4 +53,30 @@ public DataSource testDataSource(@Qualifier("adminProperties") DataSourcePropert public JdbcClient testJdbcClient(@Qualifier("adminDataSource") DataSource dataSource) { return JdbcClient.create(dataSource); } + + @Bean("customComposeFile") + public File customFunctionalCompose(Environment env) { + String filePath = env.getProperty("spring.testcontainers.customComposeFile"); + + if (filePath == null || filePath.isBlank()) { + return null; + } + + // 1. Try the path as provided (Relative to current working directory) + File directFile = new File(filePath); + if (directFile.exists()) { + log.debug("Found compose file at primary path: {}", directFile.getAbsolutePath()); + return directFile; + } + + // 2. Try the path relative to the parent directory + File parentDirFile = new File("..", filePath); + if (parentDirFile.exists()) { + log.debug("Found compose file in parent directory: {}", parentDirFile.getAbsolutePath()); + return parentDirFile; + } + + log.warn("Custom compose file '{}' not found in current or parent directory.", filePath); + return null; + } } diff --git a/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/unit/DataDrivenUnitTests.java b/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/unit/DataDrivenUnitTests.java index 4e451ac03..2be3ee0fc 100644 --- a/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/unit/DataDrivenUnitTests.java +++ b/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/unit/DataDrivenUnitTests.java @@ -24,6 +24,8 @@ import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.jdbc.core.simple.JdbcClient; import org.springframework.jdbc.datasource.DataSourceTransactionManager; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.support.TransactionTemplate; class DataDrivenUnitTests extends UnitTest { @@ -79,6 +81,7 @@ static Stream unitTestDirectoryProvider() throws IOException { @ParameterizedTest @Execution(ExecutionMode.CONCURRENT) @MethodSource("unitTestDirectoryProvider") + @Transactional(propagation = Propagation.NOT_SUPPORTED) void testRunner(Path testDirectory) throws IOException { DataSourceTransactionManager transactionManager = new DataSourceTransactionManager(adminDataSource); diff --git a/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/unit/UnitTest.java b/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/unit/UnitTest.java index 4c5a2d44c..3f238c75f 100644 --- a/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/unit/UnitTest.java +++ b/reporting-pipeline-service/src/test/java/gov/cdc/nbs/report/pipeline/integration/unit/UnitTest.java @@ -2,42 +2,179 @@ import gov.cdc.nbs.report.pipeline.integration.support.config.DataSourceConfig; import java.io.File; +import java.nio.file.Files; +import java.sql.Connection; import java.time.Duration; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Comparator; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import javax.sql.DataSource; +import liquibase.Scope; +import liquibase.command.CommandScope; +import liquibase.command.core.UpdateCommandStep; +import liquibase.database.Database; +import liquibase.database.DatabaseFactory; +import liquibase.database.jvm.JdbcConnection; +import liquibase.resource.CompositeResourceAccessor; +import liquibase.resource.DirectoryResourceAccessor; +import liquibase.resource.ResourceAccessor; +import lombok.extern.slf4j.Slf4j; +import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Tag; +import org.junit.jupiter.api.TestInstance; +import org.junit.jupiter.api.TestInstance.Lifecycle; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase; import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase.Replace; import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; import org.springframework.context.annotation.Import; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.test.context.ActiveProfiles; import org.testcontainers.containers.ComposeContainer; +import org.testcontainers.containers.wait.strategy.Wait; import org.testcontainers.utility.DockerImageName; @ActiveProfiles("test") @Tag("Unit") -@DataJpaTest +@DataJpaTest() @Import(DataSourceConfig.class) @AutoConfigureTestDatabase(replace = Replace.NONE) +@TestInstance(Lifecycle.PER_CLASS) +@Slf4j public abstract class UnitTest { + private static boolean started = false; private static final File base = new File("../docker-compose.yaml"); - private static final File testCompose = new File("../docker-compose.test.yaml"); @SuppressWarnings("resource") private static final ComposeContainer environment = - new ComposeContainer(DockerImageName.parse("docker:25.0.5"), base, testCompose) + new ComposeContainer(DockerImageName.parse("docker:25.0.5"), base) .withServices("nbs-mssql") - .withStartupTimeout(Duration.ofMinutes(5)) + .waitingFor("nbs-mssql", Wait.forHealthcheck()) // Set the maximum startup timeout all the waits set are bounded to .withStartupTimeout(Duration.ofMinutes(5)); + @Autowired + @Qualifier("adminDataSource") + private DataSource adminDataSource; + + // The root from which ALL db files (changelogs and sql) can be found + private static final String RESOURCE_ROOT = "../liquibase-service/src/main/resources"; + + // Relative paths from RESOURCE_ROOT + private static final String MIGRATION_DIR = RESOURCE_ROOT + "/db"; + private static final String ONBOARDING_DIR = + RESOURCE_ROOT + "/db/001-master/02_onboarding_script_data_load"; + + @AfterAll + void tearDown() throws Exception { + if (started) { + environment.stop(); + started = false; + } + } + @BeforeAll - static void setUp() { - // Start up necessary containers if they are not already running. - // ComposeContainer does not allow container reuse natively + void setUp() throws Exception { if (!started) { environment.start(); started = true; } + // checkDatabaseConnection(); + log.info("Starting Migration Phase..."); + + applyMigration("NBS_ODSE", "db.odse.admin.tasks.changelog-16.1.yaml"); + applyMigration("NBS_ODSE", "db.odse.changelog-16.1.yaml"); + applyMigration("NBS_SRTE", "db.srte.admin.tasks.changelog-16.1.yaml"); + applyMigration("rdb_modern", "db.rdb.changelog-16.1.yaml"); + applyMigration("rdb_modern", "db.rdb_modern.changelog-16.1.yaml"); + + log.info("Starting Onboarding Phase..."); + applyOnboardingScripts("NBS_ODSE"); + } + + private void applyMigration(String dbName, String changelogFile) throws Exception { + try (Connection connection = adminDataSource.getConnection()) { + connection.setCatalog(dbName); + + // 1. Setup the Database wrapper + Database database = + DatabaseFactory.getInstance() + .findCorrectDatabaseImplementation(new JdbcConnection(connection)); + + // 2. Build the recursive Search Path (Accessors) + // This is necessary as all the migrations are organized in nested + // subdirectories, but the changelog files only reference the migrations + // by their filename, and not their relative path. + List accessors = new ArrayList<>(); + accessors.add(new DirectoryResourceAccessor(new File(RESOURCE_ROOT))); + try (var stream = Files.walk(new File(MIGRATION_DIR).toPath())) { + stream + .filter(Files::isDirectory) + .map( + path -> { + try { + return new DirectoryResourceAccessor(path.toFile()); + } catch (Exception e) { + return null; + } + }) + .filter(Objects::nonNull) + .forEach(accessors::add); + } + + // 3. Execute the Command + log.debug("Applying: " + changelogFile + " to " + dbName); + try (var compositeAccessor = + new CompositeResourceAccessor(accessors.toArray(ResourceAccessor[]::new))) { + Scope.child( + Map.of(Scope.Attr.resourceAccessor.name(), compositeAccessor), + () -> { + new CommandScope(UpdateCommandStep.COMMAND_NAME) + .addArgumentValue( + UpdateCommandStep.CHANGELOG_FILE_ARG, "db/changelog/" + changelogFile) + .addArgumentValue("database", database) + .execute(); + }); + } finally { + if (database != null) { + database.close(); + } + } + } + } + + private void applyOnboardingScripts(String dbName) throws Exception { + File onboardingDir = new File(ONBOARDING_DIR); + + if (!onboardingDir.exists()) { + throw new RuntimeException( + "Onboarding directory not found: " + onboardingDir.getAbsolutePath()); + } + + File[] sqlFiles = onboardingDir.listFiles((dir, name) -> name.toLowerCase().endsWith(".sql")); + if (sqlFiles == null || sqlFiles.length == 0) { + log.error("No SQL files found in onboarding directory: {}", ONBOARDING_DIR); + return; + } + Arrays.sort(sqlFiles, Comparator.comparing(File::getName)); + + // Create a local JdbcTemplate to gain access to the low-level .execute() method + JdbcTemplate jdbcTemplate = new JdbcTemplate(adminDataSource); + + for (File sqlFile : sqlFiles) { + log.debug("Executing SQL: " + sqlFile.getName()); + String content = Files.readString(sqlFile.toPath()); + + Arrays.stream(content.split("(?i)\\bGO\\b")) + .map(String::trim) + .filter(batch -> !batch.isEmpty()) + .forEach(batch -> jdbcTemplate.execute(batch)); + } } } diff --git a/reporting-pipeline-service/src/test/resources/application-test.yaml b/reporting-pipeline-service/src/test/resources/application-test.yaml index 6594ffa17..6d87e3ffd 100644 --- a/reporting-pipeline-service/src/test/resources/application-test.yaml +++ b/reporting-pipeline-service/src/test/resources/application-test.yaml @@ -1,15 +1,16 @@ spring: datasource: default: - username: rtr_service_user - password: rtr_service_user - url: jdbc:sqlserver://localhost:3433;databaseName=RDB_MODERN;encrypt=true;trustServerCertificate=true; + username: ${RTR_SERVICE_USER_NAME:rtr_service_user} + password: ${RTR_SERVICE_USER_PASSWORD:rtr_service_user} + url: ${DB_URL_RDB:jdbc:sqlserver://localhost:3433;databaseName=RDB_MODERN;encrypt=true;trustServerCertificate=true;loginTimeout=3;} admin: - username: rtr_admin - password: rtr_admin - url: jdbc:sqlserver://localhost:3433;databaseName=NBS_ODSE;encrypt=true;trustServerCertificate=true; + username: ${RTR_ADMIN_NAME:rtr_admin} + password: ${RTR_ADMIN_PASSWORD:rtr_admin} + url: ${DB_URL_ODSE:jdbc:sqlserver://localhost:3433;databaseName=NBS_ODSE;encrypt=true;trustServerCertificate=true;loginTimeout=3;} jpa: show-sql: "true" + database-platform: org.hibernate.dialect.SQLServerDialect hibernate: ddl-auto: none kafka: @@ -24,3 +25,7 @@ spring: value-deserializer: org.springframework.kafka.support.serializer.JsonDeserializer maxPollIntervalMs: 3000 metadata.max.age.ms: 6000 + liquibase: + enabled: false + testcontainers: + customComposeFile: ${CUSTOM_COMPOSE_FILE:} diff --git a/reporting-pipeline-service/src/test/resources/rawDataFiles/patient/PatientReporting.json b/reporting-pipeline-service/src/test/resources/rawDataFiles/patient/PatientReporting.json index b9887bfba..204c8fc91 100644 --- a/reporting-pipeline-service/src/test/resources/rawDataFiles/patient/PatientReporting.json +++ b/reporting-pipeline-service/src/test/resources/rawDataFiles/patient/PatientReporting.json @@ -117,6 +117,11 @@ "optional": true, "field": "marital_status" }, + { + "type": "string", + "optional": true, + "field": "marital_status_cd" + }, { "type": "string", "optional": true, @@ -473,6 +478,7 @@ "last_chg_time": null, "local_id": null, "marital_status": null, + "marital_status_cd": null, "primary_occupation": null, "patient_mpr_uid": null, "preferred_gender": null, @@ -540,4 +546,4 @@ "race_white_gt3_ind": null, "race_white_all": null } -} \ No newline at end of file +} diff --git a/reporting-pipeline-service/src/test/resources/testData/unit/covidCaseDatamart/expected.json b/reporting-pipeline-service/src/test/resources/testData/unit/covidCaseDatamart/expected.json new file mode 100644 index 000000000..eb9bed77f --- /dev/null +++ b/reporting-pipeline-service/src/test/resources/testData/unit/covidCaseDatamart/expected.json @@ -0,0 +1,67 @@ +{ + "0": [ + { + "COVID_CASE_DATAMART_KEY": 10009289, + "public_health_case_uid": 10009289, + "INV_LOCAL_ID": "CAS10009289GA01", + "PATIENT_LOCAL_ID": "PSN10000002GA01", + "ADD_TIME": "2026-04-24 23:15:09", + "LAST_CHG_TIME": "2030-01-01 00:00:00", + "CONDITION_CD": "11065", + "JURISDICTION_CD": "130001", + "JURISDICTION_NM": "Fulton County", + "PROGRAM_AREA_CD": "GCD", + "INV_START_DT": "2026-04-24 00:00:00", + "INVESTIGATION_STATUS_CD": "O", + "INV_STATE_CASE_ID": "XYZ1234", + "INV_RPT_DT": "2026-04-10 00:00:00", + "RPT_SOURCE_CD": "OTH", + "HSPTLIZD_IND": "Y", + "HSPTL_ADMISSION_DT": "2026-04-17 00:00:00", + "DIAGNOSIS_DT": "2026-04-12 00:00:00", + "ILLNESS_ONSET_DT": "2026-04-05 00:00:00", + "ILLNESS_END_DT": "2026-04-20 00:00:00", + "ILLNESS_DURATION": "15", + "ILLNESS_DURATION_UNIT": "D", + "PATIENT_ONSET_AGE": "36", + "PATIENT_ONSET_AGE_UNIT": "Y", + "PATIENT_PREGNANT_IND": "N", + "DIE_FROM_ILLNESS_IND": "Y", + "INV_DEATH_DT": "2026-04-24 00:00:00", + "OUTBREAK_IND": "Y", + "OUTBREAK_NAME": "COVID Outbreak 2026", + "TRANSMISSION_MODE_CD": "A", + "INV_CASE_STATUS": "C", + "CASE_RPT_MMWR_WK": "16", + "CASE_RPT_MMWR_YR": "2026", + "INV_COMMENTS": "This is a sample investigation comment.", + "CTT_INV_PRIORITY_CD": "1", + "PATIENT_FIRST_NAME": "Surma", + "PATIENT_LAST_NAME": "Singh", + "PATIENT_DOB": "1990-01-01 00:00:00", + "PATIENT_AGE_REPORTED": "36", + "PATIENT_AGE_RPTD_UNIT": "Y", + "PATIENT_CURRENT_SEX": "M", + "PATIENT_DECEASED_IND": "Y", + "PATIENT_STREET_ADDR_1": "123 Main St.", + "PATIENT_CITY": "Atlanta", + "PATIENT_STATE": "13", + "PATIENT_ZIP": "30024", + "PATIENT_COUNTY": "13135", + "PATIENT_COUNTRY": "840", + "PATIENT_TEL_HOME": "456-232-3222", + "PATIENT_PHONE_WORK": "232-322-2222", + "PATIENT_TEL_CELL": "232-322-2222", + "PATIENT_EMAIL": "fdsfs@dsds.com", + "HOSPITAL_NAME": "General Hospital", + "PHC_INV_LAST_NAME": "User", + "PHC_INV_FIRST_NAME": "Super", + "PHYS_LAST_NAME": "Physician", + "PHYS_FIRST_NAME": "John", + "RPT_PRV_LAST_NAME": "Reporter", + "RPT_PRV_FIRST_NAME": "Jane", + "RPT_ORG_NAME": "Reporting Agency", + "PATIENT_MARITAL_STS": "M" + } + ] +} diff --git a/reporting-pipeline-service/src/test/resources/testData/unit/covidCaseDatamart/query.sql b/reporting-pipeline-service/src/test/resources/testData/unit/covidCaseDatamart/query.sql new file mode 100644 index 000000000..2216753a9 --- /dev/null +++ b/reporting-pipeline-service/src/test/resources/testData/unit/covidCaseDatamart/query.sql @@ -0,0 +1,64 @@ +SELECT + COVID_CASE_DATAMART_KEY, + [public_health_case_uid], + INV_LOCAL_ID, + PATIENT_LOCAL_ID, + ADD_TIME, + LAST_CHG_TIME, + CONDITION_CD, + JURISDICTION_CD, + JURISDICTION_NM, + PROGRAM_AREA_CD, + INV_START_DT, + INVESTIGATION_STATUS_CD, + INV_STATE_CASE_ID, + INV_RPT_DT, + RPT_SOURCE_CD, + HSPTLIZD_IND, + HSPTL_ADMISSION_DT, + DIAGNOSIS_DT, + ILLNESS_ONSET_DT, + ILLNESS_END_DT, + ILLNESS_DURATION, + ILLNESS_DURATION_UNIT, + PATIENT_ONSET_AGE, + PATIENT_ONSET_AGE_UNIT, + PATIENT_PREGNANT_IND, + DIE_FROM_ILLNESS_IND, + INV_DEATH_DT, + OUTBREAK_IND, + OUTBREAK_NAME, + TRANSMISSION_MODE_CD, + INV_CASE_STATUS, + CASE_RPT_MMWR_WK, + CASE_RPT_MMWR_YR, + INV_COMMENTS, + CTT_INV_PRIORITY_CD, + PATIENT_FIRST_NAME, + PATIENT_LAST_NAME, + PATIENT_DOB, + PATIENT_AGE_REPORTED, + PATIENT_AGE_RPTD_UNIT, + PATIENT_CURRENT_SEX, + PATIENT_DECEASED_IND, + PATIENT_STREET_ADDR_1, + PATIENT_CITY, + PATIENT_STATE, + PATIENT_ZIP, + PATIENT_COUNTY, + PATIENT_COUNTRY, + PATIENT_TEL_HOME, + PATIENT_PHONE_WORK, + PATIENT_TEL_CELL, + PATIENT_EMAIL, + HOSPITAL_NAME, + PHC_INV_LAST_NAME, + PHC_INV_FIRST_NAME, + PHYS_LAST_NAME, + PHYS_FIRST_NAME, + RPT_PRV_LAST_NAME, + RPT_PRV_FIRST_NAME, + RPT_ORG_NAME, + PATIENT_MARITAL_STS +FROM RDB_MODERN.DBO.COVID_CASE_DATAMART +WHERE PUBLIC_HEALTH_CASE_UID = 10009289; diff --git a/reporting-pipeline-service/src/test/resources/testData/unit/covidCaseDatamart/setup.sql b/reporting-pipeline-service/src/test/resources/testData/unit/covidCaseDatamart/setup.sql new file mode 100644 index 000000000..60d1814c6 --- /dev/null +++ b/reporting-pipeline-service/src/test/resources/testData/unit/covidCaseDatamart/setup.sql @@ -0,0 +1,351 @@ +USE RDB_MODERN; +----------------------------------------------------------------------- +-- CLEANUPS +----------------------------------------------------------------------- +EXEC sp_MSforeachtable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'; +-- Cleanup Modern RDB +DELETE FROM [RDB_MODERN].[dbo].[COVID_CASE_DATAMART] +DELETE FROM [RDB_MODERN].[dbo].[D_ORGANIZATION] +DELETE FROM [RDB_MODERN].[dbo].[D_PATIENT] +DELETE FROM [RDB_MODERN].[dbo].[D_PROVIDER] +DELETE FROM [RDB_MODERN].[dbo].[INVESTIGATION] +DELETE FROM [RDB_MODERN].[dbo].[NRT_INVESTIGATION_CONFIRMATION] +DELETE FROM [RDB_MODERN].[dbo].[NRT_INVESTIGATION_OBSERVATION] +DELETE FROM [RDB_MODERN].[dbo].[NRT_INVESTIGATION] +DELETE FROM [RDB_MODERN].[dbo].[NRT_OBSERVATION] +DELETE FROM [RDB_MODERN].[dbo].[NRT_PAGE_CASE_ANSWER] +DELETE FROM [RDB_MODERN].[dbo].[NRT_PATIENT] +DELETE FROM [RDB_MODERN].[dbo].[nrt_organization] +DELETE FROM [RDB_MODERN].[dbo].[nrt_provider] +DELETE FROM [RDB_MODERN].[dbo].[EVENT_METRIC_INC] +DELETE FROM [RDB_MODERN].[dbo].[EVENT_METRIC] +DELETE FROM [RDB_MODERN].[dbo].[L_INV_TRAVEL] +DELETE FROM [RDB_MODERN].[dbo].[F_PAGE_CASE] +DELETE FROM [RDB_MODERN].[dbo].[L_INV_SYMPTOM] +DELETE FROM [RDB_MODERN].[dbo].[L_INV_RISK_FACTOR] +DELETE FROM [RDB_MODERN].[dbo].[L_INV_MEDICAL_HISTORY] +DELETE FROM [RDB_MODERN].[dbo].[L_INVESTIGATION_REPEAT] +DELETE FROM [RDB_MODERN].[dbo].[L_INV_LAB_FINDING] +DELETE FROM [RDB_MODERN].[dbo].[L_INV_PATIENT_OBS] +DELETE FROM [RDB_MODERN].[dbo].[nrt_investigation_key] +DELETE FROM [RDB_MODERN].[dbo].[L_INV_COMPLICATION] +DELETE FROM [RDB_MODERN].[dbo].[LOOKUP_TABLE_N_REPT] +DELETE FROM [RDB_MODERN].[dbo].[L_INV_CLINICAL] +DELETE FROM [RDB_MODERN].[dbo].[L_INV_EPIDEMIOLOGY] +DELETE FROM [RDB_MODERN].[dbo].[L_INV_ADMINISTRATIVE] +DELETE FROM [RDB_MODERN].[dbo].[nrt_patient_key] +DELETE FROM [RDB_MODERN].[dbo].[nrt_organization_key] +DELETE FROM [RDB_MODERN].[dbo].[CONFIRMATION_METHOD_GROUP] +DELETE FROM [RDB_MODERN].[dbo].[nrt_provider_key] +DELETE FROM [RDB_MODERN].[dbo].[CASE_COUNT] +DELETE FROM [RDB_MODERN].[dbo].[JOB_FLOW_LOG] + +EXEC sp_MSforeachtable 'ALTER TABLE ? CHECK CONSTRAINT ALL'; +----------------------------------------------------------------------- +-- SECTION 2: RDB_MODERN SEEDING +----------------------------------------------------------------------- +-- Adjust the UID declarations below manually so they remain unique across other tests. +DECLARE @superuser_id bigint = 10009282; +DECLARE @dbo_nrt_organization_organization_uid bigint = 10000000; +DECLARE @dbo_nrt_organization_organization_uid_2 bigint = 10000001; +DECLARE @dbo_nrt_patient_patient_uid bigint = 10000002; +DECLARE @dbo_nrt_investigation_public_health_case_uid bigint = 10009289; +DECLARE @dbo_nrt_provider_provider_uid bigint = 10000004; +DECLARE @dbo_nrt_provider_provider_uid_2 bigint = 10000005; +DECLARE @dbo_nrt_provider_provider_uid_3 bigint = 10000006; + +-- STEP 1: Start a new COVID19 investigation for Surma Singh + +-- dbo.nrt_organization +-- step: 1 +DECLARE @dbo_nrt_organization_local_id nvarchar(40) = N'HOSP' + CONVERT(nvarchar(20), ABS(CONVERT(bigint, @dbo_nrt_organization_organization_uid))) + N''; +INSERT INTO [dbo].[nrt_organization] ([organization_uid], [local_id], [record_status], [organization_name], [add_user_id], [add_user_name], [add_time]) VALUES (@dbo_nrt_organization_organization_uid, @dbo_nrt_organization_local_id, N'ACTIVE', N'General Hospital', @superuser_id, N'Kent, Ariella', N'2026-04-30T03:32:35.400'); +-- step: 1 +DECLARE @dbo_nrt_organization_local_id_2 nvarchar(40) = N'AGEN' + CONVERT(nvarchar(20), ABS(CONVERT(bigint, @dbo_nrt_organization_organization_uid_2))) + N''; +INSERT INTO [dbo].[nrt_organization] ([organization_uid], [local_id], [record_status], [organization_name], [add_user_id], [add_user_name], [add_time]) VALUES (@dbo_nrt_organization_organization_uid_2, @dbo_nrt_organization_local_id_2, N'ACTIVE', N'Reporting Agency', @superuser_id, N'Kent, Ariella', N'2026-04-30T03:32:35.400'); + +-- dbo.nrt_patient +-- step: 1 +DECLARE @dbo_nrt_patient_local_id nvarchar(40) = N'PSN' + CONVERT(nvarchar(20), ABS(CONVERT(bigint, @dbo_nrt_patient_patient_uid))) + N'GA01'; +DECLARE @dbo_nrt_patient_patient_mpr_uid bigint = @dbo_nrt_patient_patient_uid + 1; +INSERT INTO [dbo].[nrt_patient] ([patient_uid], [patient_mpr_uid], [record_status], [local_id], [first_name], [last_name], [nm_use_cd], [status_name_cd], [street_address_1], [city], [state], [state_code], [zip], [county], [county_code], [country], [country_code], [phone_home], [phone_work], [phone_cell], [email], [dob], [age_reported], [age_reported_unit], [age_reported_unit_cd], [current_sex], [curr_sex_cd], [deceased_indicator], [deceased_ind_cd], [add_user_id], [add_user_name], [add_time], [last_chg_user_id], [last_chg_user_name], [last_chg_time], [marital_status], [marital_status_cd]) VALUES (@dbo_nrt_patient_patient_uid, @dbo_nrt_patient_patient_mpr_uid, N'ACTIVE', @dbo_nrt_patient_local_id, N'Surma', N'Singh', N'L', N'A', N'123 Main St.', N'Atlanta', N'Georgia', N'13', N'30024', N'Gwinnett County', N'13135', N'United States', N'840', N'456-232-3222', N'232-322-2222', N'232-322-2222', N'fdsfs@dsds.com', N'1990-01-01T00:00:00', 36, N'Years', N'Y', N'Male', N'M', N'Yes', N'Y', @superuser_id, N'Kent, Ariella', N'2026-04-24T23:15:09.073', @superuser_id, N'Kent, Ariella', N'2030-01-01T00:00:00', N'Married', N'M'); + +-- dbo.nrt_page_case_answer +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3306, 10023339, 10057831, 1338, N'INVESTIGATION', N'OUTBREAK_NAME', N'COVID Outbreak 2026', N'1', N'PG_COVID-19_v1.1', N'INV151', N'PUBLIC_HEALTH_CASE.OUTBREAK_NAME', N'Outbreak Name', N'F', N'CODED', 1820, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [mask], [data_type], [last_chg_time], [record_status_cd], [part_type_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3247, 10023171, 10057636, 10000006, N'D_PROVIDER', N'PROVIDER_CITY', N'Atlanta', N'1', N'PG_COVID-19_v1.1', N'NBS051', N'POSTAL_LOCATOR.CITY_DESC_TXT', N'City', N'TXT', N'TEXT', N'2026-04-30T03:32:35.420', N'ACTIVE', N'PhysicianOfPHC', 1777519958514, 1008, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [question_group_seq_nbr], [code_set_group_id], [block_nm], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3289, 10023348, 10057845, 10001008, N'D_INVESTIGATION_REPEAT', N'EPI_CNTRY_OF_EXP', N'UNITED STATES', N'1', N'PG_COVID-19_v1.1', N'INV502', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Country of Exposure', N'F', N'CODED', 1, 3560, N'EXPOSURE_LOCATION', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [question_group_seq_nbr], [code_set_group_id], [block_nm], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3290, 10023349, 10057847, 10001009, N'D_INVESTIGATION_REPEAT', N'EPI_ST_OR_PROV_OF_EXP', N'Georgia', N'1', N'PG_COVID-19_v1.1', N'INV503', N'NBS_CASE_ANSWER.ANSWER_TXT', N'State or Province of Exposure', N'F', N'CODED', 1, 102970, N'EXPOSURE_LOCATION', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [mask], [data_type], [question_group_seq_nbr], [block_nm], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3299, 10023350, 10057849, 10001010, N'D_INVESTIGATION_REPEAT', N'EPI_CITY_OF_EXP', N'Atlanta', N'1', N'PG_COVID-19_v1.1', N'INV504', N'NBS_CASE_ANSWER.ANSWER_TXT', N'City of Exposure', N'TXT', N'TEXT', 1, N'EXPOSURE_LOCATION', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1008, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [question_group_seq_nbr], [code_set_group_id], [block_nm], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3300, 10023351, 10057851, 10001011, N'D_INVESTIGATION_REPEAT', N'EPI_CNTY_OF_EXP', N'Fulton', N'1', N'PG_COVID-19_v1.1', N'INV505', N'NBS_CASE_ANSWER.ANSWER_TXT', N'County of Exposure', N'F', N'CODED', 1, 560, N'EXPOSURE_LOCATION', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3246, 10023375, 10057876, 10001159, N'D_INV_PATIENT_OBS', N'IPO_TYPE_OF_RESIDENCE', N'Apartment', N'1', N'PG_COVID-19_v1.1', N'NBS202', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Which would best describe where the patient was staying at the time of illness onset?', N'T', N'CODED', 108100, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3274, 10023460, 10058001, 10001378, N'D_INV_SYMPTOM', N'SYM_FEVER', N'Yes', N'1', N'PG_COVID-19_v1.1', N'386661006', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Fever >100.4F (38C)', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3273, 10023471, 10058022, 10001380, N'D_INV_SYMPTOM', N'SYM_FATIGUE_MALAISE', N'Yes', N'1', N'PG_COVID-19_v1.1', N'271795006', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Fatigue or malaise', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3276, 10023470, 10058020, 10001382, N'D_INV_SYMPTOM', N'SYM_HEADACHE', N'Yes', N'1', N'PG_COVID-19_v1.1', N'25064002', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Headache', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3283, 10023465, 10058010, 10001383, N'D_INV_SYMPTOM', N'SYM_MYALGIA', N'No', N'1', N'PG_COVID-19_v1.1', N'68962001', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Muscle aches (myalgia)', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3254, 10023472, 10058024, 10001390, N'D_INV_SYMPTOM', N'SYM_ALTERED_MENTAL_STATUS', N'No', N'1', N'PG_COVID-19_v1.1', N'419284004', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Altered Mental Status', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3270, 10023486, 10058052, 10001395, N'D_INV_SYMPTOM', N'SYM_DIARRHEA', N'No', N'1', N'PG_COVID-19_v1.1', N'62315008', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Diarrhea (=3 loose/looser than normal stools/24hr period)', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3250, 10023485, 10058050, 10001396, N'D_INV_SYMPTOM', N'SYM_ABDOMINAL_PAIN', N'No', N'1', N'PG_COVID-19_v1.1', N'21522001', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Abdominal Pain or Tenderness', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3245, 10023268, 10057740, 10004132, N'D_INV_PATIENT_OBS', N'IPO_TRIBAL_AFFIL_IND', N'No', N'1', N'PG_COVID-19_v1.1', N'NBS681', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Does this case have any tribal affiliation?', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3241, 10023293, 10057772, 10004138, N'D_INV_ADMINISTRATIVE', N'ADM_CASE_IDENTIFY_PROCESS', N'Clinical evaluation', N'1', N'PG_COVID-19_v1.1', N'NBS551', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Under what process was the case first identified?', N'T', N'CODED', 108030, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1013, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [mask], [data_type], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3294, 10023295, 10057776, 10004141, N'D_INV_LAB_FINDING', N'LAB_FRST_POS_SPEC_CLCT_DT', N'04/10/2026', N'1', N'PG_COVID-19_v1.1', N'NBS550', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Date of first positive specimen collection', N'DATE', N'DATE', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1008, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3303, 10023326, 10057814, 10004144, N'D_INV_CLINICAL', N'CLN_HOSPITAL_ICU_STAY', N'No', N'1', N'PG_COVID-19_v1.1', N'309904001', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Was the patient admitted to an intensive care unit (ICU)?', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [mask], [data_type], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3304, 10023327, 10057816, 10004145, N'D_INV_CLINICAL', N'CLN_UNIT_ADMIT_DT', N'04/17/2026', N'1', N'PG_COVID-19_v1.1', N'NBS679', N'NBS_CASE_ANSWER.ANSWER_TXT', N'ICU Admission Date', N'DATE', N'DATE', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1008, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [mask], [data_type], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3305, 10023328, 10057818, 10004146, N'D_INV_CLINICAL', N'CLN_UNIT_DISCHARGE_DT', N'04/20/2026', N'1', N'PG_COVID-19_v1.1', N'NBS680', N'NBS_CASE_ANSWER.ANSWER_TXT', N'ICU Discharge Date', N'DATE', N'DATE', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1008, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3280, 10023379, 10057880, 10004149, N'D_INV_PATIENT_OBS', N'IPO_HCW_OCCUPATION', N'Other', N'1', N'PG_COVID-19_v1.1', N'14679004', N'NBS_CASE_ANSWER.ANSWER_TXT', N'If yes, what is their occupation (type of job)?', N'T', N'CODED', 108460, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3281, 10023380, 10057882, 10004150, N'D_INV_PATIENT_OBS', N'IPO_HCW_SETTING', N'Other', N'1', N'PG_COVID-19_v1.1', N'NBS683', N'NBS_CASE_ANSWER.ANSWER_TXT', N'If yes, what is their job setting?', N'T', N'CODED', 108440, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [question_group_seq_nbr], [code_set_group_id], [block_nm], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3288, 10023390, 10057894, 10004152, N'D_INVESTIGATION_REPEAT', N'TRV_TRAVEL_STATE', N'No', N'1', N'PG_COVID-19_v1.1', N'82754_3', N'NBS_CASE_ANSWER.ANSWER_TXT', N'State of Travel', N'F', N'CODED', 5, 3920, N'TRAVEL_EVENT', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3267, 10023386, 10057888, 10004155, N'D_INV_TRAVEL', N'TRV_CRUISE_TRAVEL_EXP', N'No', N'1', N'PG_COVID-19_v1.1', N'473085002', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Cruise ship or vessel travel as passenger or crew member', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [mask], [data_type], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3287, 10023387, 10057890, 10004156, N'D_INV_TRAVEL', N'TRV_SHIP_NAME', N'No', N'1', N'PG_COVID-19_v1.1', N'NBS690', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Specify Name of Ship or Vessel', N'TXT', N'TEXT', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1008, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [mask], [data_type], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3286, 10023580, 10058171, 10004159, N'D_INV_RISK_FACTOR', N'RSK_WKPLC_SETTING', N'No', N'1', N'PG_COVID-19_v1.1', N'NBS686', N'NBS_CASE_ANSWER.ANSWER_TXT', N'If yes, specify workplace setting (Retired)', N'TXT', N'TEXT', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1008, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3253, 10023402, 10057910, 10004160, N'D_INV_TRAVEL', N'TRV_AIR_TRAVEL_EXP', N'No', N'1', N'PG_COVID-19_v1.1', N'445000002', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Airport/Airplane', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3252, 10023403, 10057912, 10004161, N'D_INV_RISK_FACTOR', N'RSK_ADULT_CONG_LIVING_EXP', N'No', N'1', N'PG_COVID-19_v1.1', N'NBS687', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Adult Congregate Living Facility (nursing, assisted living, or LTC facility)', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3264, 10023404, 10057914, 10004163, N'D_INV_RISK_FACTOR', N'RSK_CORRECTIONAL_EXP', N'No', N'1', N'PG_COVID-19_v1.1', N'NBS689', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Correctional Facility', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3257, 10023407, 10057920, 10004164, N'D_INV_RISK_FACTOR', N'RSK_ATTEND_EVENTS', N'No', N'1', N'PG_COVID-19_v1.1', N'FDD_Q_184', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Community Event/Mass Gathering', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3255, 10023408, 10057922, 10004165, N'D_INV_EPIDEMIOLOGY', N'EPI_ANIMAL_EXPOSURE_IND', N'No', N'1', N'PG_COVID-19_v1.1', N'NBS559', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Animal with confirmed or suspected COVID-19', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [mask], [data_type], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3292, 10023581, 10058172, 10004166, N'D_INV_EPIDEMIOLOGY', N'EPI_ANIMAL_TYPE_TXT', N'Hamster', N'1', N'PG_COVID-19_v1.1', N'FDD_Q_32_TXT', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Specify Type of Animal (Retired)', N'TXT', N'TEXT', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1008, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3301, 10023410, 10057926, 10004167, N'D_INV_EPIDEMIOLOGY', N'EPI_OTH_EXPOSURE_IND', N'No', N'1', N'PG_COVID-19_v1.1', N'NBS560', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Other Exposure', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3302, 10023412, 10057930, 10004169, N'D_INV_EPIDEMIOLOGY', N'EPI_UNK_EXPOSURE_SOURCE', N'No', N'1', N'PG_COVID-19_v1.1', N'NBS667', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Unknown exposures in the 14 days prior to illness onset', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3256, 10023442, 10057969, 10004181, N'D_INV_COMPLICATION', N'CMP_ARDS_IND', N'No', N'1', N'PG_COVID-19_v1.1', N'67782005', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Did the patient have acute respiratory distress syndrome?', N'F', N'CODED', 108430, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3251, 10023443, 10057971, 10004182, N'D_INV_CLINICAL', N'CLN_ABN_CHEST_XRAY_IND', N'Normal', N'1', N'PG_COVID-19_v1.1', N'168734001', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Did the patient have an abnormal chest X-ray?', N'F', N'CODED', 108430, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [unit_value], [question_identifier], [data_location], [question_label], [unit_type_cd], [mask], [data_type], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3293, 10023461, 10058003, 10004188, N'D_INV_SYMPTOM', N'SYM_FEVER_HIGHEST_TEMP', N'102.5', N'1', N'PG_COVID-19_v1.1', N'2650', N'INV202', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Highest Measured Temperature', N'CODED', N'NUM_TEMP', N'NUMERIC', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1008, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3275, 10023462, 10058004, 10004189, N'D_INV_SYMPTOM', N'SYM_FEVERISH', N'Yes', N'1', N'PG_COVID-19_v1.1', N'103001002', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Subjective fever (felt feverish)', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3260, 10023463, 10058006, 10004190, N'D_INV_SYMPTOM', N'SYM_CHILLS_IND', N'Yes', N'1', N'PG_COVID-19_v1.1', N'28376_2', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Chills', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3265, 10023466, 10058012, 10004192, N'D_INV_SYMPTOM', N'SYM_CORYZA_RUNNY_NOSE_IND', N'Yes', N'1', N'PG_COVID-19_v1.1', N'82272006', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Runny nose (rhinorrhea)', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3285, 10023467, 10058014, 10004193, N'D_INV_SYMPTOM', N'SYM_SORE_THROAT_IND', N'No', N'1', N'PG_COVID-19_v1.1', N'267102003', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Sore Throat', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3266, 10023478, 10058036, 10004195, N'D_INV_SYMPTOM', N'SYM_COUGH_IND', N'Yes', N'1', N'PG_COVID-19_v1.1', N'49727002', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Cough (new onset or worsening of chronic cough)', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3272, 10023480, 10058040, 10004197, N'D_INV_SYMPTOM', N'SYM_DYSPNEA_IND', N'Yes', N'1', N'PG_COVID-19_v1.1', N'267036007', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Shortness of Breath (dyspnea)', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3271, 10023481, 10058042, 10004198, N'D_INV_SYMPTOM', N'SYM_DIFFICULT_BREATH_IND', N'Yes', N'1', N'PG_COVID-19_v1.1', N'230145002', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Difficulty Breathing', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3258, 10023482, 10058044, 10004199, N'D_INV_SYMPTOM', N'SYM_CHEST_PAIN_IND', N'No', N'1', N'PG_COVID-19_v1.1', N'29857009', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Chest Pain', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3296, 10023488, 10058055, 10004201, N'D_INV_SYMPTOM', N'SYM_OTH_SYMPTOM_IND', N'Yes', N'1', N'PG_COVID-19_v1.1', N'NBS338', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Other symptom(s)?', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [mask], [data_type], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3297, 10023489, 10058057, 10004202, N'D_INV_SYMPTOM', N'SYM_OTHER_SYMPTOM_SPEC', N'Loss of appetite', N'1', N'PG_COVID-19_v1.1', N'NBS338_OTH', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Other Symptoms', N'TXT', N'TEXT', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1009, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3298, 10023494, 10058060, 10004204, N'D_INV_MEDICAL_HISTORY', N'MDH_PREEXISTING_COND_IND', N'Yes', N'1', N'PG_COVID-19_v1.1', N'102478008', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Pre-existing medical conditions?', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3269, 10023496, 10058062, 10004205, N'D_INV_MEDICAL_HISTORY', N'MDH_DIABETES_MELLITUS_IND', N'No', N'1', N'PG_COVID-19_v1.1', N'73211009', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Diabetes Mellitus', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3268, 10023499, 10058068, 10004207, N'D_INV_MEDICAL_HISTORY', N'MDH_CV_DISEASE_IND', N'No', N'1', N'PG_COVID-19_v1.1', N'128487001', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Cardiovascular disease', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3263, 10023500, 10058070, 10004208, N'D_INV_MEDICAL_HISTORY', N'MDH_CHRONIC_RENAL_DIS_IND', N'No', N'1', N'PG_COVID-19_v1.1', N'709044004', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Chronic Renal disease', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3261, 10023501, 10058072, 10004209, N'D_INV_MEDICAL_HISTORY', N'MDH_CHRONIC_LIVER_DIS_IND', N'No', N'1', N'PG_COVID-19_v1.1', N'328383001', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Chronic Liver disease', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3262, 10023502, 10058074, 10004210, N'D_INV_MEDICAL_HISTORY', N'MDH_CHRONIC_LUNG_DIS_IND', N'No', N'1', N'PG_COVID-19_v1.1', N'413839001', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Chronic Lung Disease (asthma/emphysema/COPD)', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [mask], [data_type], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3284, 10023504, 10058078, 10004212, N'D_INV_MEDICAL_HISTORY', N'MDH_OTH_CHRONIC_DIS_TXT', N'No', N'1', N'PG_COVID-19_v1.1', N'NBS662_OTH', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Specify Other Chronic Diseases', N'TXT', N'TEXT', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1008, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [mask], [data_type], [question_group_seq_nbr], [block_nm], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3295, 10023555, 10058155, 10004232, N'D_INVESTIGATION_REPEAT', N'LAB_CDC_SPECIMEN_ID', N'SPEC12345', N'1', N'PG_COVID-19_v1.1', N'INV965', N'NBS_CASE_ANSWER.ANSWER_TXT', N'CDC Specimen ID Number', N'TXT', N'TEXT', 4, N'LAB_INTERPRETIVE', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1008, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3277, 10023573, 10058166, 10004238, N'D_INV_TRAVEL', N'TRV_HIGH_RISK_TRAVEL_LOC', N'No', N'1', N'PG_COVID-19_v1.1', N'NBS556', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Did the patient travel to any high-risk locations', N'T', N'CODED', 108270, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1013, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [question_group_seq_nbr], [code_set_group_id], [block_nm], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3279, 10023274, 10057747, 10005132, N'D_INVESTIGATION_REPEAT', N'IPO_CURRENT_OCCUPATION', N'Judicial law clerks [2105]', N'1', N'PG_COVID-19_v1.1', N'85659_1', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Current Occupation Standardized', N'F', N'CODED', 6, 109180, N'OCCUPATION_INDUSTRY', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [mask], [data_type], [question_group_seq_nbr], [block_nm], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3278, 10023275, 10057749, 10005133, N'D_INVESTIGATION_REPEAT', N'IPO_CURRENT_OCCUPATION_TXT', N'clerk', N'1', N'PG_COVID-19_v1.1', N'85658_3', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Current Occupation', N'F', N'TXT', N'TEXT', 6, N'OCCUPATION_INDUSTRY', N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1009, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3243, 10023296, 10057778, 10006139, N'D_INV_CLINICAL', N'CLN_HIST_PREV_ILLNESS', N'Yes', N'1', N'PG_COVID-19_v1.1', N'161413004', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Did the patient previously meet the case definition for a probable or confirmed case of SARS-CoV-2?', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3291, 10023409, 10057924, 10009148, N'D_INV_EPIDEMIOLOGY', N'EPI_ANIMAL_TYPE', N'Other', N'1', N'PG_COVID-19_v1.1', N'FDD_Q_32', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Animal Type', N'T', N'CODED', 108580, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1013, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3244, 10023374, 10057875, 10010298, N'D_INV_PATIENT_OBS', N'IPO_RESIDENT_CONGREGATE', N'No', N'1', N'PG_COVID-19_v1.1', N'95421_4', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Is the patient a resident in a congregate care/living setting?', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3259, 10023406, 10057918, 10010301, N'D_INV_RISK_FACTOR', N'RSK_CHILD_CARE_FACILITY', N'No', N'1', N'PG_COVID-19_v1.1', N'413817003', N'NBS_CASE_ANSWER.ANSWER_TXT', N'Child Care Facility Exposure', N'F', N'CODED', 4150, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1007, N'2026-04-30T03:32:35.420', N'Active'); +-- step: 1 +INSERT INTO [dbo].[nrt_page_case_answer] ([act_uid], [nbs_case_answer_uid], [nbs_ui_metadata_uid], [nbs_rdb_metadata_uid], [nbs_question_uid], [rdb_table_nm], [rdb_column_nm], [answer_txt], [answer_group_seq_nbr], [investigation_form_cd], [question_identifier], [data_location], [question_label], [other_value_ind_cd], [data_type], [code_set_group_id], [last_chg_time], [record_status_cd], [batch_id], [nbs_ui_component_uid], [nca_add_time], [nuim_record_status_cd]) VALUES (10009289, 3242, 10023367, 10057873, 10010318, N'D_INV_LAB_FINDING', N'LAB_COVID_19_VARIANT', N'SARS-CoV-2 variant B.1.1.7 (501Y.V1)', N'1', N'PG_COVID-19_v1.1', N'NBS786', N'NBS_CASE_ANSWER.ANSWER_TXT', N'COVID-19 Variant Type', N'T', N'CODED', 115910, N'2026-04-30T03:32:35.420', N'ACTIVE', 1777519958514, 1013, N'2026-04-30T03:32:35.420', N'Active'); + +-- dbo.nrt_investigation +-- step: 1 +DECLARE @dbo_nrt_investigation_local_id nvarchar(40) = N'CAS' + CONVERT(nvarchar(20), ABS(CONVERT(bigint, @dbo_nrt_investigation_public_health_case_uid))) + N'GA01'; +INSERT INTO [dbo].[nrt_investigation] ([public_health_case_uid], [local_id], [shared_ind], [outbreak_name], [investigation_status], [inv_case_status], [txt], [jurisdiction_cd], [jurisdiction_nm], [effective_from_time], [effective_to_time], [rpt_form_cmplt_time], [activity_from_time], [rpt_src_cd_desc], [mmwr_week], [mmwr_year], [rpt_source_cd], [diagnosis_time], [hospitalized_admin_time], [outbreak_ind], [outbreak_ind_val], [hospitalized_ind], [hospitalized_ind_cd], [transmission_mode_cd], [transmission_mode], [record_status_cd], [pregnant_ind_cd], [pregnant_ind], [die_frm_this_illness_ind], [deceased_time], [pat_age_at_onset], [pat_age_at_onset_unit_cd], [pat_age_at_onset_unit], [effective_duration_amt], [effective_duration_unit_cd], [illness_duration_unit], [program_area_description], [add_user_id], [add_user_name], [add_time], [last_chg_user_id], [last_chg_user_name], [last_chg_time], [inv_priority_cd], [investigation_status_cd], [investigator_id], [physician_id], [patient_id], [organization_id], [outcome_cd], [mood_cd], [class_cd], [case_class_cd], [cd], [cd_desc_txt], [prog_area_cd], [inv_state_case_id], [rdb_table_name_list], [person_as_reporter_uid], [hospital_uid], [investigation_form_cd], [investigation_count], [case_count], [record_status_time], [raw_record_status_cd], [batch_id]) VALUES (@dbo_nrt_investigation_public_health_case_uid, @dbo_nrt_investigation_local_id, N'T', N'COVID Outbreak 2026', N'Open', N'Confirmed', N'This is a sample investigation comment.', N'130001', N'Fulton County', N'2026-04-05T00:00:00', N'2026-04-20T00:00:00', N'2026-04-10T00:00:00', N'2026-04-24T00:00:00', N'OTH', N'16', N'2026', N'OTH', N'2026-04-12T00:00:00', N'2026-04-17T00:00:00', N'Y', N'Yes', N'Yes', N'Y', N'A', N'Airborne', N'ACTIVE', N'N', N'No', N'Yes', N'2026-04-24T00:00:00', N'36', N'Y', N'Years', N'15', N'D', N'Days', N'GCD', @superuser_id, N'Kent, Ariella', N'2026-04-24T23:15:09.197', @superuser_id, N'Kent, Ariella', N'2030-01-01T00:00:00', N'1', N'O', @dbo_nrt_provider_provider_uid_3, @dbo_nrt_provider_provider_uid_2, @dbo_nrt_patient_patient_uid, @dbo_nrt_organization_organization_uid_2, N'Y', N'EVN', N'CASE', N'C', N'11065', N'2019 Novel Coronavirus', N'GCD', N'XYZ1234', N'D_INV_CLINICAL,D_INV_TRAVEL,D_INV_SYMPTOM,D_INV_EPIDEMIOLOGY,D_INV_ADMINISTRATIVE,D_INV_LAB_FINDING,D_INV_PATIENT_OBS,D_INV_MEDICAL_HISTORY,D_INVESTIGATION_REPEAT,D_INV_RISK_FACTOR,INVESTIGATION,D_PROVIDER,D_INV_COMPLICATION', @dbo_nrt_provider_provider_uid, @dbo_nrt_organization_organization_uid, N'PG_COVID-19_v1.1', 0, 0, N'2026-04-24T23:15:09.197', N'OPEN', 1777519958514); + +-- dbo.nrt_provider +-- step: 1 +DECLARE @dbo_nrt_provider_local_id nvarchar(40) = N'REP' + CONVERT(nvarchar(20), ABS(CONVERT(bigint, @dbo_nrt_provider_provider_uid))) + N''; +INSERT INTO [dbo].[nrt_provider] ([provider_uid], [local_id], [record_status], [first_name], [last_name], [add_user_id], [add_user_name], [add_time]) VALUES (@dbo_nrt_provider_provider_uid, @dbo_nrt_provider_local_id, N'ACTIVE', N'Jane', N'Reporter', @superuser_id, N'Kent, Ariella', N'2026-04-30T03:32:35.397'); +-- step: 1 +DECLARE @dbo_nrt_provider_local_id_2 nvarchar(40) = N'PHY' + CONVERT(nvarchar(20), ABS(CONVERT(bigint, @dbo_nrt_provider_provider_uid_2))) + N''; +INSERT INTO [dbo].[nrt_provider] ([provider_uid], [local_id], [record_status], [first_name], [last_name], [add_user_id], [add_user_name], [add_time]) VALUES (@dbo_nrt_provider_provider_uid_2, @dbo_nrt_provider_local_id_2, N'ACTIVE', N'John', N'Physician', @superuser_id, N'Kent, Ariella', N'2026-04-30T03:32:35.397'); +-- step: 1 +DECLARE @dbo_nrt_provider_local_id_3 nvarchar(40) = N'INV' + CONVERT(nvarchar(20), ABS(CONVERT(bigint, @dbo_nrt_provider_provider_uid_3))) + N''; +INSERT INTO [dbo].[nrt_provider] ([provider_uid], [local_id], [record_status], [first_name], [last_name], [add_user_id], [add_user_name], [add_time]) VALUES (@dbo_nrt_provider_provider_uid_3, @dbo_nrt_provider_local_id_3, N'ACTIVE', N'Super', N'User', @superuser_id, N'Kent, Ariella', N'2026-04-30T03:32:35.397'); + +-- dbo.nrt_organization_key +-- step: 1 +DECLARE @dbo_nrt_organization_key_d_organization_key bigint; +DECLARE @dbo_nrt_organization_key_d_organization_key_output TABLE ([value] bigint); +INSERT INTO [dbo].[nrt_organization_key] ([organization_uid], [created_dttm], [updated_dttm]) OUTPUT INSERTED.[d_organization_key] INTO @dbo_nrt_organization_key_d_organization_key_output ([value]) VALUES (@dbo_nrt_organization_organization_uid, N'2026-04-30T03:32:43.2033333', N'2026-04-30T03:32:43.2033333'); +SELECT TOP 1 @dbo_nrt_organization_key_d_organization_key = [value] FROM @dbo_nrt_organization_key_d_organization_key_output; +-- step: 1 +DECLARE @dbo_nrt_organization_key_d_organization_key_2 bigint; +DECLARE @dbo_nrt_organization_key_d_organization_key_2_output TABLE ([value] bigint); +INSERT INTO [dbo].[nrt_organization_key] ([organization_uid], [created_dttm], [updated_dttm]) OUTPUT INSERTED.[d_organization_key] INTO @dbo_nrt_organization_key_d_organization_key_2_output ([value]) VALUES (@dbo_nrt_organization_organization_uid_2, N'2026-04-30T03:32:43.2033333', N'2026-04-30T03:32:43.2033333'); +SELECT TOP 1 @dbo_nrt_organization_key_d_organization_key_2 = [value] FROM @dbo_nrt_organization_key_d_organization_key_2_output; + +-- dbo.D_ORGANIZATION +-- step: 1 +INSERT INTO [dbo].[D_ORGANIZATION] ([ORGANIZATION_KEY], [ORGANIZATION_UID], [ORGANIZATION_LOCAL_ID], [ORGANIZATION_RECORD_STATUS], [ORGANIZATION_NAME], [ORGANIZATION_ADD_TIME], [ORGANIZATION_ADDED_BY]) VALUES (@dbo_nrt_organization_key_d_organization_key, @dbo_nrt_organization_organization_uid, @dbo_nrt_organization_local_id, N'ACTIVE', N'General Hospital', N'2026-04-30T03:32:35.400', N'Kent, Ariella'); +-- step: 1 +INSERT INTO [dbo].[D_ORGANIZATION] ([ORGANIZATION_KEY], [ORGANIZATION_UID], [ORGANIZATION_LOCAL_ID], [ORGANIZATION_RECORD_STATUS], [ORGANIZATION_NAME], [ORGANIZATION_ADD_TIME], [ORGANIZATION_ADDED_BY]) VALUES (@dbo_nrt_organization_key_d_organization_key_2, @dbo_nrt_organization_organization_uid_2, @dbo_nrt_organization_local_id_2, N'ACTIVE', N'Reporting Agency', N'2026-04-30T03:32:35.400', N'Kent, Ariella'); + +-- dbo.nrt_provider_key +-- step: 1 +DECLARE @dbo_nrt_provider_key_d_provider_key bigint; +DECLARE @dbo_nrt_provider_key_d_provider_key_output TABLE ([value] bigint); +INSERT INTO [dbo].[nrt_provider_key] ([provider_uid], [created_dttm], [updated_dttm]) OUTPUT INSERTED.[d_provider_key] INTO @dbo_nrt_provider_key_d_provider_key_output ([value]) VALUES (@dbo_nrt_provider_provider_uid_3, N'2026-04-30T03:32:43.4966667', N'2026-04-30T03:32:43.4966667'); +SELECT TOP 1 @dbo_nrt_provider_key_d_provider_key = [value] FROM @dbo_nrt_provider_key_d_provider_key_output; +-- step: 1 +DECLARE @dbo_nrt_provider_key_d_provider_key_2 bigint; +DECLARE @dbo_nrt_provider_key_d_provider_key_2_output TABLE ([value] bigint); +INSERT INTO [dbo].[nrt_provider_key] ([provider_uid], [created_dttm], [updated_dttm]) OUTPUT INSERTED.[d_provider_key] INTO @dbo_nrt_provider_key_d_provider_key_2_output ([value]) VALUES (@dbo_nrt_provider_provider_uid_2, N'2026-04-30T03:32:43.4966667', N'2026-04-30T03:32:43.4966667'); +SELECT TOP 1 @dbo_nrt_provider_key_d_provider_key_2 = [value] FROM @dbo_nrt_provider_key_d_provider_key_2_output; +-- step: 1 +DECLARE @dbo_nrt_provider_key_d_provider_key_3 bigint; +DECLARE @dbo_nrt_provider_key_d_provider_key_3_output TABLE ([value] bigint); +INSERT INTO [dbo].[nrt_provider_key] ([provider_uid], [created_dttm], [updated_dttm]) OUTPUT INSERTED.[d_provider_key] INTO @dbo_nrt_provider_key_d_provider_key_3_output ([value]) VALUES (@dbo_nrt_provider_provider_uid, N'2026-04-30T03:32:43.4966667', N'2026-04-30T03:32:43.4966667'); +SELECT TOP 1 @dbo_nrt_provider_key_d_provider_key_3 = [value] FROM @dbo_nrt_provider_key_d_provider_key_3_output; + +-- dbo.D_PROVIDER +-- step: 1 +INSERT INTO [dbo].[D_PROVIDER] ([PROVIDER_UID], [PROVIDER_KEY], [PROVIDER_LOCAL_ID], [PROVIDER_RECORD_STATUS], [PROVIDER_FIRST_NAME], [PROVIDER_LAST_NAME], [PROVIDER_ADD_TIME], [PROVIDER_ADDED_BY]) VALUES (@dbo_nrt_provider_provider_uid_3, @dbo_nrt_provider_key_d_provider_key, @dbo_nrt_provider_local_id_3, N'ACTIVE', N'Super', N'User', N'2026-04-30T03:32:35.397', N'Kent, Ariella'); +-- step: 1 +INSERT INTO [dbo].[D_PROVIDER] ([PROVIDER_UID], [PROVIDER_KEY], [PROVIDER_LOCAL_ID], [PROVIDER_RECORD_STATUS], [PROVIDER_FIRST_NAME], [PROVIDER_LAST_NAME], [PROVIDER_ADD_TIME], [PROVIDER_ADDED_BY]) VALUES (@dbo_nrt_provider_provider_uid_2, @dbo_nrt_provider_key_d_provider_key_2, @dbo_nrt_provider_local_id_2, N'ACTIVE', N'John', N'Physician', N'2026-04-30T03:32:35.397', N'Kent, Ariella'); +-- step: 1 +INSERT INTO [dbo].[D_PROVIDER] ([PROVIDER_UID], [PROVIDER_KEY], [PROVIDER_LOCAL_ID], [PROVIDER_RECORD_STATUS], [PROVIDER_FIRST_NAME], [PROVIDER_LAST_NAME], [PROVIDER_ADD_TIME], [PROVIDER_ADDED_BY]) VALUES (@dbo_nrt_provider_provider_uid, @dbo_nrt_provider_key_d_provider_key_3, @dbo_nrt_provider_local_id, N'ACTIVE', N'Jane', N'Reporter', N'2026-04-30T03:32:35.397', N'Kent, Ariella'); + +-- dbo.nrt_patient_key +-- step: 1 +DECLARE @dbo_nrt_patient_key_d_patient_key bigint; +DECLARE @dbo_nrt_patient_key_d_patient_key_output TABLE ([value] bigint); +INSERT INTO [dbo].[nrt_patient_key] ([patient_uid], [created_dttm], [updated_dttm]) OUTPUT INSERTED.[d_patient_key] INTO @dbo_nrt_patient_key_d_patient_key_output ([value]) VALUES (@dbo_nrt_patient_patient_uid, N'2026-04-30T03:32:43.5900000', N'2026-04-30T03:32:43.5900000'); +SELECT TOP 1 @dbo_nrt_patient_key_d_patient_key = [value] FROM @dbo_nrt_patient_key_d_patient_key_output; + +-- dbo.D_PATIENT +-- step: 1 +INSERT INTO [dbo].[D_PATIENT] ([PATIENT_KEY], [PATIENT_MPR_UID], [PATIENT_RECORD_STATUS], [PATIENT_LOCAL_ID], [PATIENT_FIRST_NAME], [PATIENT_LAST_NAME], [PATIENT_STREET_ADDRESS_1], [PATIENT_CITY], [PATIENT_STATE], [PATIENT_STATE_CODE], [PATIENT_ZIP], [PATIENT_COUNTY], [PATIENT_COUNTY_CODE], [PATIENT_COUNTRY], [PATIENT_PHONE_HOME], [PATIENT_PHONE_WORK], [PATIENT_PHONE_CELL], [PATIENT_EMAIL], [PATIENT_DOB], [PATIENT_AGE_REPORTED], [PATIENT_AGE_REPORTED_UNIT], [PATIENT_CURRENT_SEX], [PATIENT_DECEASED_INDICATOR], [PATIENT_LAST_CHANGE_TIME], [PATIENT_UID], [PATIENT_ADD_TIME], [PATIENT_ADDED_BY], [PATIENT_LAST_UPDATED_BY]) VALUES (@dbo_nrt_patient_key_d_patient_key, @dbo_nrt_patient_patient_mpr_uid, N'ACTIVE', @dbo_nrt_patient_local_id, N'Surma', N'Singh', N'123 Main St.', N'Atlanta', N'Georgia', N'13', N'30024', N'Gwinnett County', N'13135', N'United States', N'456-232-3222', N'232-322-2222', N'232-322-2222', N'fdsfs@dsds.com', N'1990-01-01T00:00:00', 36, N'Years', N'Male', N'Yes', N'2030-01-01T00:00:00', @dbo_nrt_patient_patient_uid, N'2026-04-24T23:15:09.073', N'Kent, Ariella', N'Kent, Ariella'); + +-- dbo.nrt_investigation_key +-- step: 1 +DECLARE @dbo_nrt_investigation_key_d_investigation_key bigint; +DECLARE @dbo_nrt_investigation_key_d_investigation_key_output TABLE ([value] bigint); +INSERT INTO [dbo].[nrt_investigation_key] ([case_uid], [created_dttm], [updated_dttm]) OUTPUT INSERTED.[d_investigation_key] INTO @dbo_nrt_investigation_key_d_investigation_key_output ([value]) VALUES (@dbo_nrt_investigation_public_health_case_uid, N'2026-04-30T03:32:43.7666667', N'2026-04-30T03:32:43.7666667'); +SELECT TOP 1 @dbo_nrt_investigation_key_d_investigation_key = [value] FROM @dbo_nrt_investigation_key_d_investigation_key_output; + +-- dbo.INVESTIGATION +-- step: 1 +INSERT INTO [dbo].[INVESTIGATION] ([INVESTIGATION_KEY], [CASE_UID], [INV_LOCAL_ID], [INV_SHARE_IND], [OUTBREAK_NAME], [INVESTIGATION_STATUS], [INV_CASE_STATUS], [INV_COMMENTS], [JURISDICTION_CD], [JURISDICTION_NM], [ILLNESS_ONSET_DT], [ILLNESS_END_DT], [INV_RPT_DT], [INV_START_DT], [RPT_SRC_CD_DESC], [CASE_RPT_MMWR_WK], [CASE_RPT_MMWR_YR], [RPT_SRC_CD], [DIAGNOSIS_DT], [HSPTL_ADMISSION_DT], [OUTBREAK_IND], [HSPTLIZD_IND], [INV_STATE_CASE_ID], [TRANSMISSION_MODE], [RECORD_STATUS_CD], [PATIENT_PREGNANT_IND], [DIE_FRM_THIS_ILLNESS_IND], [INVESTIGATION_DEATH_DATE], [PATIENT_AGE_AT_ONSET], [PATIENT_AGE_AT_ONSET_UNIT], [ILLNESS_DURATION], [ILLNESS_DURATION_UNIT], [PROGRAM_AREA_DESCRIPTION], [ADD_TIME], [LAST_CHG_TIME], [INVESTIGATION_ADDED_BY], [INVESTIGATION_LAST_UPDATED_BY], [INV_PRIORITY_CD]) VALUES (@dbo_nrt_investigation_key_d_investigation_key, @dbo_nrt_investigation_public_health_case_uid, @dbo_nrt_investigation_local_id, N'T', N'COVID Outbreak 2026', N'Open', N'Confirmed', N'This is a sample investigation comment.', N'130001', N'Fulton County', N'2026-04-05T00:00:00', N'2026-04-20T00:00:00', N'2026-04-10T00:00:00', N'2026-04-24T00:00:00', N'OTH', 16, 2026, N'OTH', N'2026-04-12T00:00:00', N'2026-04-17T00:00:00', N'Yes', N'Yes', N'XYZ1234', N'Airborne', N'ACTIVE', N'No', N'Yes', N'2026-04-24T00:00:00', 36, N'Years', 15, N'Days', N'GCD', N'2026-04-24T23:15:09.197', N'2030-01-01T00:00:00', N'Kent, Ariella', N'Kent, Ariella', N'1'); + +-- dbo.CONFIRMATION_METHOD_GROUP +-- step: 1 +INSERT INTO [dbo].[CONFIRMATION_METHOD_GROUP] ([INVESTIGATION_KEY], [CONFIRMATION_METHOD_KEY]) VALUES (@dbo_nrt_investigation_key_d_investigation_key, 1); + +-- dbo.L_INV_CLINICAL +-- step: 1 +INSERT INTO [dbo].[L_INV_CLINICAL] ([PAGE_CASE_UID], [D_INV_CLINICAL_KEY]) VALUES (10009289.0, 1.0); + +-- dbo.L_INV_TRAVEL +-- step: 1 +INSERT INTO [dbo].[L_INV_TRAVEL] ([PAGE_CASE_UID], [D_INV_TRAVEL_KEY]) VALUES (10009289.0, 1.0); + +-- dbo.L_INV_SYMPTOM +-- step: 1 +INSERT INTO [dbo].[L_INV_SYMPTOM] ([PAGE_CASE_UID], [D_INV_SYMPTOM_KEY]) VALUES (10009289.0, 1.0); + +-- dbo.L_INV_EPIDEMIOLOGY +-- step: 1 +INSERT INTO [dbo].[L_INV_EPIDEMIOLOGY] ([PAGE_CASE_UID], [D_INV_EPIDEMIOLOGY_KEY]) VALUES (10009289.0, 1.0); + +-- dbo.L_INV_LAB_FINDING +-- step: 1 +INSERT INTO [dbo].[L_INV_LAB_FINDING] ([PAGE_CASE_UID], [D_INV_LAB_FINDING_KEY]) VALUES (10009289.0, 1.0); + +-- dbo.L_INV_ADMINISTRATIVE +-- step: 1 +INSERT INTO [dbo].[L_INV_ADMINISTRATIVE] ([PAGE_CASE_UID], [D_INV_ADMINISTRATIVE_KEY]) VALUES (10009289.0, 1.0); + +-- dbo.L_INV_PATIENT_OBS +-- step: 1 +INSERT INTO [dbo].[L_INV_PATIENT_OBS] ([PAGE_CASE_UID], [D_INV_PATIENT_OBS_KEY]) VALUES (10009289.0, 1.0); + +-- dbo.L_INV_MEDICAL_HISTORY +-- step: 1 +INSERT INTO [dbo].[L_INV_MEDICAL_HISTORY] ([PAGE_CASE_UID], [D_INV_MEDICAL_HISTORY_KEY]) VALUES (10009289.0, 1.0); + +-- dbo.LOOKUP_TABLE_N_REPT +-- step: 1 +INSERT INTO [dbo].[LOOKUP_TABLE_N_REPT] ([PAGE_CASE_UID]) VALUES (10009289); + +-- dbo.L_INVESTIGATION_REPEAT +-- step: 1 +INSERT INTO [dbo].[L_INVESTIGATION_REPEAT] ([D_INVESTIGATION_REPEAT_KEY], [PAGE_CASE_UID]) VALUES (1.0, 10009289); + +-- dbo.L_INV_RISK_FACTOR +-- step: 1 +INSERT INTO [dbo].[L_INV_RISK_FACTOR] ([PAGE_CASE_UID], [D_INV_RISK_FACTOR_KEY]) VALUES (10009289.0, 1.0); + +-- dbo.L_INV_COMPLICATION +-- step: 1 +INSERT INTO [dbo].[L_INV_COMPLICATION] ([PAGE_CASE_UID], [D_INV_COMPLICATION_KEY]) VALUES (10009289.0, 1.0); + +-- dbo.F_PAGE_CASE +-- step: 1 +INSERT INTO [dbo].[F_PAGE_CASE] ([D_INV_ADMINISTRATIVE_KEY], [D_INV_CLINICAL_KEY], [D_INV_COMPLICATION_KEY], [D_INV_CONTACT_KEY], [D_INV_DEATH_KEY], [D_INV_EPIDEMIOLOGY_KEY], [D_INV_HIV_KEY], [D_INV_PATIENT_OBS_KEY], [D_INV_ISOLATE_TRACKING_KEY], [D_INV_LAB_FINDING_KEY], [D_INV_MEDICAL_HISTORY_KEY], [D_INV_MOTHER_KEY], [D_INV_OTHER_KEY], [D_INV_PREGNANCY_BIRTH_KEY], [D_INV_RESIDENCY_KEY], [D_INV_RISK_FACTOR_KEY], [D_INV_SOCIAL_HISTORY_KEY], [D_INV_SYMPTOM_KEY], [D_INV_TREATMENT_KEY], [D_INV_TRAVEL_KEY], [D_INV_UNDER_CONDITION_KEY], [D_INV_VACCINATION_KEY], [D_INVESTIGATION_REPEAT_KEY], [D_INV_PLACE_REPEAT_KEY], [CONDITION_KEY], [INVESTIGATION_KEY], [PHYSICIAN_KEY], [INVESTIGATOR_KEY], [HOSPITAL_KEY], [PATIENT_KEY], [PERSON_AS_REPORTER_KEY], [ORG_AS_REPORTER_KEY], [GEOCODING_LOCATION_KEY]) VALUES (1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 94, @dbo_nrt_investigation_key_d_investigation_key, 13, 12, 7, @dbo_nrt_patient_key_d_patient_key, 14, 8, 1.0); + +-- dbo.CASE_COUNT +-- step: 1 +INSERT INTO [dbo].[CASE_COUNT] ([CASE_COUNT], [INVESTIGATOR_KEY], [REPORTER_KEY], [PHYSICIAN_KEY], [RPT_SRC_ORG_KEY], [INV_ASSIGNED_DT_KEY], [PATIENT_KEY], [INVESTIGATION_KEY], [INVESTIGATION_COUNT], [CONDITION_KEY], [ADT_HSPTL_KEY], [INV_START_DT_KEY], [DIAGNOSIS_DT_KEY], [INV_RPT_DT_KEY], [GEOCODING_LOCATION_KEY]) VALUES (0, @dbo_nrt_provider_key_d_provider_key, @dbo_nrt_provider_key_d_provider_key_3, @dbo_nrt_provider_key_d_provider_key_2, @dbo_nrt_organization_key_d_organization_key_2, 1, @dbo_nrt_patient_key_d_patient_key, @dbo_nrt_investigation_key_d_investigation_key, 0, 94, 7, 1, 1, 1, 1); + +-- dbo.EVENT_METRIC_INC +-- step: 1 +INSERT INTO [dbo].[EVENT_METRIC_INC] ([EVENT_TYPE], [EVENT_UID], [LOCAL_ID], [LOCAL_PATIENT_ID], [CONDITION_CD], [CONDITION_DESC_TXT], [PROG_AREA_CD], [PROG_AREA_DESC_TXT], [JURISDICTION_CD], [JURISDICTION_DESC_TXT], [RECORD_STATUS_CD], [RECORD_STATUS_DESC_TXT], [RECORD_STATUS_TIME], [ADD_TIME], [ADD_USER_ID], [LAST_CHG_TIME], [LAST_CHG_USER_ID], [CASE_CLASS_CD], [CASE_CLASS_DESC_TXT], [INVESTIGATION_STATUS_CD], [INVESTIGATION_STATUS_DESC_TXT], [ADD_USER_NAME], [LAST_CHG_USER_NAME]) VALUES (N'PHCInvForm', 10009289, @dbo_nrt_investigation_local_id, N'PSN10063000GA01', N'11065', N'2019 Novel Coronavirus', N'GCD', N'GCD', N'130001', N'Fulton County', N'OPEN', N'Open', N'2026-04-24T23:15:09.197', N'2026-04-24T23:15:09.197', @superuser_id, N'2030-01-01T00:00:00', @superuser_id, N'C', N'Confirmed', N'O', N'Open', N'Kent, Ariella', N'Kent, Ariella'); + +-- dbo.EVENT_METRIC +-- step: 1 +INSERT INTO [dbo].[EVENT_METRIC] ([EVENT_TYPE], [EVENT_UID], [LOCAL_ID], [LOCAL_PATIENT_ID], [CONDITION_CD], [CONDITION_DESC_TXT], [PROG_AREA_CD], [PROG_AREA_DESC_TXT], [JURISDICTION_CD], [JURISDICTION_DESC_TXT], [RECORD_STATUS_CD], [RECORD_STATUS_DESC_TXT], [RECORD_STATUS_TIME], [ADD_TIME], [ADD_USER_ID], [LAST_CHG_TIME], [LAST_CHG_USER_ID], [CASE_CLASS_CD], [CASE_CLASS_DESC_TXT], [INVESTIGATION_STATUS_CD], [INVESTIGATION_STATUS_DESC_TXT], [ADD_USER_NAME], [LAST_CHG_USER_NAME]) VALUES (N'PHCInvForm', 10009289, @dbo_nrt_investigation_local_id, N'PSN10063000GA01', N'11065', N'2019 Novel Coronavirus', N'GCD', N'GCD', N'130001', N'Fulton County', N'OPEN', N'Open', N'2026-04-24T23:15:09.197', N'2026-04-24T23:15:09.197', @superuser_id, N'2030-01-01T00:00:00', @superuser_id, N'C', N'Confirmed', N'O', N'Open', N'Kent, Ariella', N'Kent, Ariella'); + +-- Execute the covid case datamart proc in debug mode +EXEC RDB_MODERN.DBO.SP_COVID_CASE_DATAMART_POSTPROCESSING '10009289';