Produced by Araxis Merge on 4/12/2018 7:40:28 PM Eastern Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.
| # | Location | File | Last Modified |
|---|---|---|---|
| 1 | Thu Apr 12 23:40:28 2018 UTC | ||
| 2 | AHOBPRe_v4.4.17_bld4.zip\DatabaseScripts\AHOBPR\Increment 2\Prod\Increment 2 - 20150827\AHOBPR_Database_1_0_50.zip | Registry.AHOBPR.Database.Rollback.sql | Wed Aug 12 17:19:18 2015 UTC |
| Description | Between Files 1 and 2 |
|
|---|---|---|
| Text Blocks | Lines | |
| Unchanged | 0 | 0 |
| Changed | 0 | 0 |
| Inserted | 1 | 1026 |
| Removed | 0 | 0 |
| Whitespace | |
|---|---|
| Character case | Differences in character case are significant |
| Line endings | Differences in line endings (CR and LF characters) are ignored |
| CR/LF characters | Not shown in the comparison detail |
No regular expressions were active.
| 1 | ||||||
| 2 | :setvar Da tabaseName "Registry QA" | |||||
| 3 | :setvar Ma jorRelease Number "1" | |||||
| 4 | :setvar Mi norRelease Number "0" | |||||
| 5 | :setvar Po intRelease Number "48 " | |||||
| 6 | :setvar De ployVersio n "2015072 2.1" | |||||
| 7 | ||||||
| 8 | PRINT ' | |||||
| 9 | ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ------ | |||||
| 10 | Registry.A HOBPR.Data base.Rollb ack.sql | |||||
| 11 | ||||||
| 12 | Version Re lease $(Ma jorRelease Number).$( MinorRelea seNumber). $(PointRel easeNumber ) | |||||
| 13 | ||||||
| 14 | Build $(De ployVersio n) | |||||
| 15 | ||||||
| 16 | ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ---------- ------ | |||||
| 17 | '; | |||||
| 18 | PRINT 'Sta rted ' + C AST(GETDAT E() as var char(20)) + '.'; | |||||
| 19 | PRINT ' | |||||
| 20 | ********** ********** ********** ********** ********** ******* | |||||
| 21 | NOTE: This script mu st be run with SQLCM D Mode tur ned on. | |||||
| 22 | ********** ********** ********** ********** ********** ******* | |||||
| 23 | ||||||
| 24 | '; | |||||
| 25 | GO | |||||
| 26 | :on error exit | |||||
| 27 | GO | |||||
| 28 | :setvar __ IsSqlCmdEn abled "Tru e" | |||||
| 29 | /* | |||||
| 30 | Detect SQL CMD mode a nd disable script ex ecution if SQLCMD mo de is not supported. | |||||
| 31 | To re-enab le the scr ipt after enabling S QLCMD mode , execute the follow ing: | |||||
| 32 | SET NOEXEC OFF; | |||||
| 33 | */ | |||||
| 34 | GO | |||||
| 35 | IF N'$(__I sSqlCmdEna bled)' NOT LIKE N'Tr ue' | |||||
| 36 | BEGIN | |||||
| 37 | PR INT N'SQLC MD mode mu st be enab led to suc cessfully execute th is script. '; | |||||
| 38 | SE T NOEXEC O N; | |||||
| 39 | END | |||||
| 40 | ||||||
| 41 | GO | |||||
| 42 | ||||||
| 43 | USE [$(Dat abaseName) ] | |||||
| 44 | GO | |||||
| 45 | ||||||
| 46 | PRINT 'ALT ER PROCEDU RE [AHOBPR ].[SP_Repo rtRegistra ntContact] ..'; | |||||
| 47 | GO | |||||
| 48 | ||||||
| 49 | -- ======= ========== ========== ========== ======== | |||||
| 50 | -- Author: Bruce Clegg | |||||
| 51 | -- Create date: Jan 12, 2015 | |||||
| 52 | -- Descrip tion: Used for the A HOBPR Cont act Report -- exec [AHOBPR].[ SP_ReportR egistrantC ontact] (More opt ions at bo ttom) | |||||
| 53 | -- 2015-02 -23 - Cleg g - provid e individu al field n ames | |||||
| 54 | -- 2015033 0 - Bruce Clegg - Ad ded VisnId value of NLA to fin d Null loc ations | |||||
| 55 | -- 2015042 7 - Bruce Clegg - Ch ange to Lo cationType and Key, for both A ssigned an d Evaluate d Location s | |||||
| 56 | -- 2015042 9 - Bruce Clegg - Ad ded Email column (ag ain) | |||||
| 57 | -- 2015061 7 - D. Bar r - Added state para meter | |||||
| 58 | -- ======= ========== ========== ========== ======== | |||||
| 59 | ALTER PROC EDURE [AHO BPR].[SP_R eportRegis trantConta ct] | |||||
| 60 | @Re gistrantSt atus VARCHAR(50 ) = '', -- '1,2,3 ,4,5,6,7,8 ' | |||||
| 61 | @Sv cStatus VARCHAR(50 ) = '', -- '1,2,3 ' | |||||
| 62 | @Ad minFlagId INT = 0, -- 60 | |||||
| 63 | @Ad minFromDat eText VARCHAR(50 ) = NULL, | |||||
| 64 | @Ad minToDateT ext VARCHAR(50 ) = NULL, | |||||
| 65 | @Su bPopulatio nFlagId INT = 0, -- 65 | |||||
| 66 | @As signedLoca tionType VARCHAR(20 ) = NULL, -- 'VISN' , 'Base', 'Instituti on', 'NLA' = No Loca tion Assig ned | |||||
| 67 | @As signedLoca tionKey VARCHAR(50 ) = NULL, -- 'V16', 'V01' 1000109, 1000089 | |||||
| 68 | @Ev aluatedLoc ationType VARCHAR(20 ) = NULL, -- 'VISN' , 'Base', 'Instituti on', 'NLA' = No Loca tion Assig ned | |||||
| 69 | @Ev aluatedLoc ationKey VARCHAR(50 ) = NULL, -- 'V16', 'V01' 1000109, 1000089 | |||||
| 70 | @Co mpletedFro mDateText VARCHAR(50 ) = NULL, | |||||
| 71 | @Co mpletedToD ateText VARCHAR(50 ) = NULL, | |||||
| 72 | @st ate varcha r(8000) = NULL -- Mu ltiple sta tes, comma -separated values wh en not NUL L | |||||
| 73 | AS | |||||
| 74 | BEGIN | |||||
| 75 | ||||||
| 76 | DECLARE @A dminFromDa te DATETIM E2(0) = IS NULL(dbo.C leanDate(@ AdminFromD ateText),' 19000101') | |||||
| 77 | DECLARE @A dminToDate DATETIM E2(0) = db o.AddMaxTi me(ISNULL( dbo.CleanD ate(@Admin ToDateText ),GETDATE( ))); | |||||
| 78 | DECLARE @C ompletedFr omDate DAT ETIME2(0) = ISNULL(d bo.CleanDa te(@Comple tedFromDat eText),'19 000101') | |||||
| 79 | DECLARE @C ompletedTo Date DAT ETIME2(0) = dbo.AddM axTime(ISN ULL(dbo.Cl eanDate(@C ompletedTo DateText), GETDATE()) ); | |||||
| 80 | ||||||
| 81 | PRINT @Ass ignedLocat ionType; | |||||
| 82 | PRINT @Ass ignedLocat ionKey; | |||||
| 83 | ||||||
| 84 | DECLARE @A ssignedIns titutionId INT = 0, | |||||
| 85 | @E valuatedIn stitutionI d INT = 0; | |||||
| 86 | ||||||
| 87 | IF @Assign edLocation Type IN (' Base','Ins titution') | |||||
| 88 | AND ISNUME RIC(@Assig nedLocatio nKey) = 1 | |||||
| 89 | SET @Ass ignedInsti tutionId = CONVERT(I NT,@Assign edLocation Key); | |||||
| 90 | ||||||
| 91 | IF @Evalua tedLocatio nType IN ( 'Base','In stitution' ) | |||||
| 92 | AND ISNUME RIC(@Evalu atedLocati onKey) = 1 | |||||
| 93 | SET @Eva luatedInst itutionId = CONVERT( INT,@Evalu atedLocati onKey); | |||||
| 94 | ||||||
| 95 | WITH addr | |||||
| 96 | AS ( | |||||
| 97 | SELECT REGISTRAN T_ID, | |||||
| 98 | ISNULL( STREET1,'' ) AS STRE ET1, | |||||
| 99 | ISNULL( STREET2,'' ) AS STRE ET2, | |||||
| 100 | ISNULL( CITY,'') AS CITY , | |||||
| 101 | ISNULL( [STATE],'' ) AS [STA TE], | |||||
| 102 | ISNULL( COUNTRY,'' ) AS COUN TRY, | |||||
| 103 | ISNULL( ZIP,'') AS ZIP | |||||
| 104 | FR OM AHOBPR .[REGISTRA NT_ADDRESS ] | |||||
| 105 | ) | |||||
| 106 | ,phone1 | |||||
| 107 | AS ( | |||||
| 108 | SELECT REGISTRAN T_ID, | |||||
| 109 | ISNULL( PHONE_NUMB ER,'') AS PHONE_NUMB ER_Main | |||||
| 110 | FROM AHOBPR.RE GISTRANT_P HONE | |||||
| 111 | WHERE ISNULL(TY PE,'Main') = 'Main' | |||||
| 112 | ) | |||||
| 113 | ,phone2 | |||||
| 114 | AS ( | |||||
| 115 | SELECT REGISTRAN T_ID, | |||||
| 116 | ISNULL( PHONE_NUMB ER,'') AS PHONE_NUMB ER_Mobile | |||||
| 117 | FROM AHOBPR.RE GISTRANT_P HONE | |||||
| 118 | WHERE TYPE = 'M obile' | |||||
| 119 | ) | |||||
| 120 | ||||||
| 121 | AS ( | |||||
| 122 | SELECT REGISTRAN T_ID, | |||||
| 123 | ISNULL( EMAIL,'') AS EMAIL | |||||
| 124 | FROM AHOBPR.RE GISTRANT_E MAIL | |||||
| 125 | ) | |||||
| 126 | ,Pref | |||||
| 127 | AS( | |||||
| 128 | SELE CT fr.REGI STRANT_ID | |||||
| 129 | ,ans.TEXT AS Contac tPreferenc e | |||||
| 130 | FR OM AHOBPR .FORM_RESP ONSE fr | |||||
| 131 | JO IN AHOBPR. FORM_RESPO NSE_QUESTI ON rQst ON fr.FORM_R ESPONSE_ID = rQst.FO RM_RESPONS E_ID | |||||
| 132 | JO IN AHOBPR. STD_FORM_Q UESTION qs t ON rQst. STD_FORM_Q UESTION_ID = qst.STD _FORM_QUES TION_ID | |||||
| 133 | JO IN AHOBPR. FORM_RESPO NSE_ANSWER rAns ON r Qst.FORM_R ESPONSE_QU ESTION_ID = rAns.FOR M_RESPONSE _QUESTION_ ID | |||||
| 134 | JO IN AHOBPR. STD_FORM_A NSWER ans ON ans.STD _FORM_ANSW ER_ID = rA ns.STD_FOR M_ANSWER_I D | |||||
| 135 | WHE RE qst.STD _FORM_ID = fr.STD_FO RM_ID | |||||
| 136 | A ND qst.FOR M_QUESTION _UNIQUE_ID = '8.A' | |||||
| 137 | ) | |||||
| 138 | SE LECT | |||||
| 139 | reg.RE GISTRANT_I D, | |||||
| 140 | ISNULL(r eg.LAST_NA ME,'') AS LAST_NAME , | |||||
| 141 | ISNULL(reg .FIRST_NAM E,'') AS FIRST_NAME , | |||||
| 142 | ISNULL(Pre f.ContactP reference, '') AS Co ntactPrefe rence, | |||||
| 143 | ISNULL(S TREET1,'') AS STREE T1, | |||||
| 144 | ISNULL(S TREET2,'') AS STREE T2, | |||||
| 145 | ISNULL(C ITY,'') AS CITY, | |||||
| 146 | ISNULL([ STATE],'') AS [STAT E], | |||||
| 147 | ISNULL(C OUNTRY,'') AS COUNT RY, | |||||
| 148 | ISNULL(Z IP,'') AS ZIP, | |||||
| 149 | ISNULL(p hone1.PHON E_NUMBER_M ain,'') AS PHONE_NU MBER_Main, | |||||
| 150 | ISNULL(p hone2.PHON E_NUMBER_M obile,'') AS PHONE_ NUMBER_Mob ile, | |||||
| 151 | ISNULL(ema il.EMAIL,' ') AS EMAI L | |||||
| 152 | FROM AHOBP R.REGISTRA NT reg | |||||
| 153 | LEFT JOIN addr | |||||
| 154 | ON reg.REGIS TRANT_ID = addr.REGI STRANT_ID | |||||
| 155 | LEFT JOIN phone1 | |||||
| 156 | ON reg.REGIS TRANT_ID = phone1.RE GISTRANT_I D | |||||
| 157 | LEFT JOIN phone2 | |||||
| 158 | ON reg.REGIS TRANT_ID = phone2.RE GISTRANT_I D | |||||
| 159 | LEFT JOIN email | |||||
| 160 | ON reg.REGIS TRANT_ID = email.REG ISTRANT_ID | |||||
| 161 | LEFT JOIN Pref | |||||
| 162 | ON reg.REGIS TRANT_ID = Pref.REGI STRANT_ID | |||||
| 163 | W HERE (reg. STD_REGIST RANT_STATU S_ID IN (S ELECT * FR OM fncSpli t(@Registr antStatus, ',')) | |||||
| 164 | OR I SNULL(@Reg istrantSta tus,'') = '') | |||||
| 165 | AND (reg. STD_SERVIC E_STATUS_I D IN (SELE CT * FROM fncSplit(@ SvcStatus, ',')) | |||||
| 166 | OR I SNULL(@Svc Status,'') = '') | |||||
| 167 | AND ( @AssignedL ocationTyp e IS NULL | |||||
| 168 | OR (@Assig nedLocatio nType = 'N LA' | |||||
| 169 | AND re g.STD_INST ITUTION_ID IS NULL) | |||||
| 170 | OR (@Assig nedLocatio nType = 'V ISN' | |||||
| 171 | AND E XISTS(SELE CT * FROM AHOBPR.VIE W_FACILITY _LOOKUP in st | |||||
| 172 | WHERE inst.ID = reg.STD_IN STITUTION_ ID | |||||
| 173 | AND inst.VisnI D = @Assig nedLocatio nKey) | |||||
| 174 | ) | |||||
| 175 | OR (@Assig nedLocatio nType = 'B ase' | |||||
| 176 | AND E XISTS(SELE CT * FROM AHOBPR.VIE W_FACILITY _LOOKUP in st | |||||
| 177 | WHERE inst.ID = reg.STD_IN STITUTION_ ID | |||||
| 178 | AND inst.BASE_ ID = @Assi gnedInstit utionId) | |||||
| 179 | ) | |||||
| 180 | OR (@Assig nedLocatio nType = 'I nstitution ' | |||||
| 181 | AND r eg.STD_INS TITUTION_I D = @Assig nedInstitu tionId) | |||||
| 182 | ) | |||||
| 183 | AND ( @Evaluated LocationTy pe IS NULL | |||||
| 184 | OR (@Evalu atedLocati onType = ' NLA' | |||||
| 185 | AND NO T EXISTS( SELECT * F ROM AHOBPR .REGISTRAN T_VISIT ev al | |||||
| 186 | WHERE eva l.REGISTRA NT_ID = Re g.REGISTRA NT_ID | |||||
| 187 | AND eva l.EVALUATI ON_FLAG = 'Y') | |||||
| 188 | ) | |||||
| 189 | OR (@Evalu atedLocati onType = ' VISN' | |||||
| 190 | AND E XISTS(SELE CT * FROM AHOBPR.REG ISTRANT_VI SIT eval | |||||
| 191 | JOIN AHOBPR.VIE W_FACILITY _LOOKUP in st ON inst .ID = eval .STD_INSTI TUTION_ID | |||||
| 192 | WHERE eval.REGIS TRANT_ID = Reg.REGIS TRANT_ID | |||||
| 193 | AND inst.VisnI D = @Evalu atedLocati onKey | |||||
| 194 | AND eval.EVALU ATION_FLAG = 'Y') | |||||
| 195 | ) | |||||
| 196 | OR (@Evalu atedLocati onType = ' Base' | |||||
| 197 | AND E XISTS(SELE CT * FROM AHOBPR.REG ISTRANT_VI SIT eval | |||||
| 198 | JOIN AHOBPR.VIE W_FACILITY _LOOKUP in st ON inst .ID = eval .STD_INSTI TUTION_ID | |||||
| 199 | WHERE eval.REGIS TRANT_ID = Reg.REGIS TRANT_ID | |||||
| 200 | AND inst.BASE_ ID = @Eval uatedInsti tutionId | |||||
| 201 | AND eval.EVALU ATION_FLAG = 'Y' ) | |||||
| 202 | ) | |||||
| 203 | OR (@Evalu atedLocati onType = ' Institutio n' | |||||
| 204 | AND E XISTS(SELE CT * FROM AHOBPR.REG ISTRANT_VI SIT eval | |||||
| 205 | WHERE eval.REGIS TRANT_ID = Reg.REGIS TRANT_ID | |||||
| 206 | AND eval.STD_I NSTITUTION _ID = @Eva luatedInst itutionId | |||||
| 207 | AND eval.EVALU ATION_FLAG = 'Y') | |||||
| 208 | ) | |||||
| 209 | ) | |||||
| 210 | AND ( ISNULL(@Su bPopulatio nFlagId, 0 ) = 0 | |||||
| 211 | OR EXISTS( SELECT [RE GISTRANT_I D] FROM AH OBPR.REGIS TRANT_REGI STRY_FLAG popFlag | |||||
| 212 | WHERE pop Flag.REGIS TRANT_ID = reg.REGIS TRANT_ID | |||||
| 213 | AND pop Flag.STD_R EGISTRY_FL AG_ID = @S ubPopulati onFlagId)) | |||||
| 214 | AND ( ISNULL(@Ad minFlagId, 0) = 0 | |||||
| 215 | OR EXISTS( SELECT [RE GISTRANT_I D] FROM AH OBPR.REGIS TRANT_REGI STRY_FLAG adminFlag | |||||
| 216 | WHERE adm inFlag.REG ISTRANT_ID = reg.REG ISTRANT_ID | |||||
| 217 | AND adm inFlag.STD _REGISTRY_ FLAG_ID = @AdminFlag Id | |||||
| 218 | AND adm inFlag.CRE ATED BETWE EN @AdminF romDate AN D @AdminTo Date)) | |||||
| 219 | AND ( (ISNULL(@C ompletedFr omDateText ,'') = '' AND ISNULL (@Complete dToDateTex t,'') = '' ) | |||||
| 220 | O R EXISTS(S ELECT resp .REGISTRAN T_ID, stat .QUESTIONN AIRE_COMPL ETED_DATE | |||||
| 221 | FROM AHOB PR.FORM_RE SPONSE_STA TUS stat | |||||
| 222 | JOIN AHOB PR.FORM_RE SPONSE res p | |||||
| 223 | ON resp .FORM_RESP ONSE_ID = stat.FORM_ RESPONSE_I D | |||||
| 224 | WHERE resp .REGISTRAN T_ID = reg .REGISTRAN T_ID | |||||
| 225 | AND stat .QUESTIONN AIRE_COMPL ETED_DATE BETWEEN @C ompletedFr omDate AND @Complete dToDate)) | |||||
| 226 | AND (I SNULL(@sta te,'') = ' ' | |||||
| 227 | OR EX ISTS(SELEC T DISTINCT addr.REGI STRANT_ID | |||||
| 228 | FRO M AHOBPR.R EGISTRANT_ ADDRESS ad dr | |||||
| 229 | WHER E addr.REG ISTRANT_ID = reg.REG ISTRANT_ID | |||||
| 230 | AN D addr.STA TE IN (SE LECT * FRO M fncSplit (@state, ' ,')))) | |||||
| 231 | ; | |||||
| 232 | ||||||
| 233 | END | |||||
| 234 | -- exec [A HOBPR].[SP _ReportReg istrantCon tact] | |||||
| 235 | -- exec [A HOBPR].[SP _ReportReg istrantCon tact] @Ass ignedLocat ionType = 'NLA' | |||||
| 236 | -- exec [A HOBPR].[SP _ReportReg istrantCon tact] @Ass ignedLocat ionType = 'VISN', @A ssignedLoc ationKey = 'V16' | |||||
| 237 | -- exec [A HOBPR].[SP _ReportReg istrantCon tact] @Ass ignedLocat ionType = 'Base', @A ssignedLoc ationKey = '1000089' | |||||
| 238 | -- exec [A HOBPR].[SP _ReportReg istrantCon tact] @Ass ignedLocat ionType = 'Instituti on', @Assi gnedLocati onKey = '1 000089' | |||||
| 239 | -- exec [A HOBPR].[SP _ReportReg istrantCon tact] | |||||
| 240 | -- exec [A HOBPR].[SP _ReportReg istrantCon tact] @Eva luatedLoca tionType = 'NLA' | |||||
| 241 | -- exec [A HOBPR].[SP _ReportReg istrantCon tact] @Eva luatedLoca tionType = 'VISN', @ EvaluatedL ocationKey = 'V16' | |||||
| 242 | -- exec [A HOBPR].[SP _ReportReg istrantCon tact] @Eva luatedLoca tionType = 'Base', @ EvaluatedL ocationKey = '100008 9' | |||||
| 243 | -- exec [A HOBPR].[SP _ReportReg istrantCon tact] @Eva luatedLoca tionType = 'Institut ion', @Eva luatedLoca tionKey = '1000089' | |||||
| 244 | ||||||
| 245 | ||||||
| 246 | --@ AssignedLo cationType VARCHAR( 10) = NULL , -- 'VIS N', 'Base' , 'Institu tion', 'NL A' = No Lo cation Ass igned | |||||
| 247 | --@ AssignedLo cationKey VARCHAR( 50) = NULL , -- 'V16 ', 'V01' 1000109, 1000089 | |||||
| 248 | --exec [A HOBPR].[SP _ReportReg istrantCon tact] '5,6 ,7', NULL, 0, NULL, NULL, 0, 0 , NULL @E valuatedLo cationType | |||||
| 249 | --exec [A HOBPR].[SP _ReportReg istrantCon tact] NULL , '2', 0, NULL, NULL , 0, 0, NU LL | |||||
| 250 | --exec [A HOBPR].[SP _ReportReg istrantCon tact] NULL , NULL, 60 , NULL, '2 0141204', 0, 0, NULL | |||||
| 251 | --exec [A HOBPR].[SP _ReportReg istrantCon tact] NULL , NULL, 60 , '12/04/2 014', NULL , 0, 0, NU LL | |||||
| 252 | --exec [A HOBPR].[SP _ReportReg istrantCon tact] NULL , NULL, 60 , '12/03/2 014', '12/ 12/2014', 0, 0, NULL | |||||
| 253 | --exec [A HOBPR].[SP _ReportReg istrantCon tact] NULL , NULL, 0, NULL, NUL L, 65, 0, NULL | |||||
| 254 | --exec [A HOBPR].[SP _ReportReg istrantCon tact] NULL , NULL, 0, NULL, NUL L, 0, 1000 109, NULL | |||||
| 255 | --exec [A HOBPR].[SP _ReportReg istrantCon tact] NULL , NULL, 0, NULL, NUL L, 0, 0, ' NLA' --'V0 1' | |||||
| 256 | --exec [A HOBPR].[SP _ReportReg istrantCon tact] @Com pletedFrom DateText = '08/13/20 14' | |||||
| 257 | --exec [A HOBPR].[SP _ReportReg istrantCon tact] @Com pletedToDa teText = ' 08/13/2014 ' | |||||
| 258 | --exec [A HOBPR].[SP _ReportReg istrantCon tact] @Com pletedFrom DateText = '08/13/20 14', @Comp letedToDat eText = '0 8/13/2014' | |||||
| 259 | ||||||
| 260 | GO | |||||
| 261 | ||||||
| 262 | ||||||
| 263 | PRINT 'ALT ER PROCEDU RE [AHOBPR ].[SP_Repo rtStatusBy Location]. ..'; | |||||
| 264 | GO | |||||
| 265 | ||||||
| 266 | -- ======= ========== ========== ========== ======== | |||||
| 267 | -- Author: Debora h Barr | |||||
| 268 | -- Create date: Nove mber 12, 2 014 | |||||
| 269 | -- Descrip tion: Used for the A HOBPR Stat us by Loca tion Repor t | |||||
| 270 | ||||||
| 271 | -- Modific ation log | |||||
| 272 | -- 2015011 4 - Sherry Wang: Cha nged query for @Inst itutionId and @VisnI d | |||||
| 273 | -- 2015020 2 - Change state to use state codes, rem oved unnee ded tables and joins , Removed Distinct | |||||
| 274 | -- 2015021 9 - Change state to include te rritories and Milita ry Bases | |||||
| 275 | -- 2015033 0 - Bruce Clegg - Ad ded VisnId value of NLA to fin d Null loc ations | |||||
| 276 | -- 2015042 7 - Bruce Clegg - Ch ange to Lo cationType and Key, for both A ssigned an d Evaluate d Location s | |||||
| 277 | -- ======= ========== ========== ========== ======== | |||||
| 278 | ALTER PROC EDURE [AHO BPR].[SP_R eportStatu sByLocatio n] | |||||
| 279 | @st ate varcha r(8000) = NULL, -- M ultiple st ates, comm a-separate d values w hen not NU LL | |||||
| 280 | @st atus varch ar(1000) = NULL, -- Multiple s tatues, co mma-separa ted values when not NULL | |||||
| 281 | @As signedLoca tionType VARCHAR(20 ) = NULL, -- 'VISN' , 'Base', 'Instituti on', 'NLA' = No Loca tion Assig ned | |||||
| 282 | @As signedLoca tionKey VARCHAR(50 ) = NULL, -- 'V16', 'V01' 1000109, 1000089 | |||||
| 283 | @Ev aluatedLoc ationType VARCHAR(20 ) = NULL, -- 'VISN' , 'Base', 'Instituti on', 'NLA' = No Loca tion Assig ned | |||||
| 284 | @Ev aluatedLoc ationKey VARCHAR(50 ) = NULL -- 'V16', 'V01' 1 000109, 1 000089 | |||||
| 285 | AS | |||||
| 286 | BEGIN | |||||
| 287 | DECLARE @Today DAT ETIME2 = G ETDATE(); | |||||
| 288 | ||||||
| 289 | DECLARE @A ssignedIns titutionId INT = 0, | |||||
| 290 | @E valuatedIn stitutionI d INT = 0; | |||||
| 291 | ||||||
| 292 | IF @Assign edLocation Type IN (' Base','Ins titution') | |||||
| 293 | AND ISNUME RIC(@Assig nedLocatio nKey) = 1 | |||||
| 294 | SET @Ass ignedInsti tutionId = CONVERT(I NT,@Assign edLocation Key); | |||||
| 295 | ||||||
| 296 | IF @Evalua tedLocatio nType IN ( 'Base','In stitution' ) | |||||
| 297 | AND ISNUME RIC(@Evalu atedLocati onKey) = 1 | |||||
| 298 | SET @Eva luatedInst itutionId = CONVERT( INT,@Evalu atedLocati onKey); | |||||
| 299 | ||||||
| 300 | --Temp ta ble concat nate flags for Regis trants wit h multiple flags | |||||
| 301 | CREATE TAB LE #state | |||||
| 302 | ( | |||||
| 303 | [Regist rant_Id] I NT, | |||||
| 304 | [state] VARCHAR(8 000) | |||||
| 305 | ) | |||||
| 306 | ||||||
| 307 | SET @state = REPLACE (@state, ' Foreign Co untry/Othe r', 'FM,MH ,PW,UM,US, CANAD,MX,E U,PI,FG,OT ,UN') | |||||
| 308 | ||||||
| 309 | INSERT INT O #state ( [Registran t_Id], [st ate]) | |||||
| 310 | -- Load Ta ble | |||||
| 311 | SELECT a. REGISTRANT _ID, | |||||
| 312 | ST UFF((SELEC T ', ' + b .STATE | |||||
| 313 | FR OM AHOBPR. REGISTRANT _ADDRESS b | |||||
| 314 | WHE RE a.REGIS TRANT_ID = b.REGISTR ANT_ID | |||||
| 315 | FOR XM L PATH('') ), 1, 1, ' ') [STATE ] | |||||
| 316 | FR OM AHOBPR. REGISTRANT a | |||||
| 317 | GROUP BY a.REGIS TRANT_ID | |||||
| 318 | ORDER BY a.REGIS TRANT_ID; | |||||
| 319 | ||||||
| 320 | SE LECT reg. REGISTRANT _ID | |||||
| 321 | ,(reg.LAS T_NAME + ' , ' + reg. FIRST_NAME ) AS Name | |||||
| 322 | ,b.REGIST RANT_STATU S AS Statu s | |||||
| 323 | ,DATEDIFF (day, reg. REGISTRANT _STATUS_LA ST_UPDATED _DATE, @To day) As Da ys | |||||
| 324 | ,s.STATE AS State | |||||
| 325 | ,RIGHT(in st.VisnID, 2) AS VI SN | |||||
| 326 | ,inst.Nam e AS Facil ity | |||||
| 327 | ,reg.BIRT H_DATE AS BirthDate | |||||
| 328 | , CONVERT(VA RCHAR(10), reg.BIRTH _DATE, 101 ) AS Birth DateDispla y | |||||
| 329 | FROM AHOBP R.REGISTRA NT reg | |||||
| 330 | JOIN AHOBPR.ST D_REGISTRA NT_STATUS b | |||||
| 331 | ON reg.STD_R EGISTRANT_ STATUS_ID = b.STD_RE GISTRANT_S TATUS_ID | |||||
| 332 | LEFT JOIN AHOBPR.VIE W_FACILITY _LOOKUP in st | |||||
| 333 | ON inst.ID = reg.STD_I NSTITUTION _ID | |||||
| 334 | LEFT JOIN #sta te s | |||||
| 335 | ON reg.REGIS TRANT_ID = s.Registr ant_Id | |||||
| 336 | W HERE (ISNU LL(@state, '') = '' | |||||
| 337 | OR EX ISTS(SELEC T DISTINCT addr.REGI STRANT_ID | |||||
| 338 | FRO M AHOBPR.R EGISTRANT_ ADDRESS ad dr | |||||
| 339 | WHER E addr.REG ISTRANT_ID = reg.REG ISTRANT_ID | |||||
| 340 | AN D addr.STA TE IN (SE LECT * FRO M fncSplit (@state, ' ,')))) | |||||
| 341 | AND (ISNULL(@ status,'') = '' | |||||
| 342 | OR reg.ST D_REGISTRA NT_STATUS_ ID IN (SEL ECT * FROM fncSplit( @status, ' ,'))) | |||||
| 343 | AND ( @AssignedL ocationTyp e IS NULL | |||||
| 344 | OR (@Assig nedLocatio nType = 'N LA' | |||||
| 345 | AND re g.STD_INST ITUTION_ID IS NULL) | |||||
| 346 | OR (@Assig nedLocatio nType = 'V ISN' | |||||
| 347 | AND E XISTS(SELE CT * FROM AHOBPR.VIE W_FACILITY _LOOKUP in st | |||||
| 348 | WHERE inst.ID = reg.STD_IN STITUTION_ ID | |||||
| 349 | AND inst.VisnI D = @Assig nedLocatio nKey) | |||||
| 350 | ) | |||||
| 351 | OR (@Assig nedLocatio nType = 'B ase' | |||||
| 352 | AND E XISTS(SELE CT * FROM AHOBPR.VIE W_FACILITY _LOOKUP in st | |||||
| 353 | WHERE inst.ID = reg.STD_IN STITUTION_ ID | |||||
| 354 | AND inst.BASE_ ID = @Assi gnedInstit utionId) | |||||
| 355 | ) | |||||
| 356 | OR (@Assig nedLocatio nType = 'I nstitution ' | |||||
| 357 | AND r eg.STD_INS TITUTION_I D = @Assig nedInstitu tionId) | |||||
| 358 | ) | |||||
| 359 | AND ( @Evaluated LocationTy pe IS NULL | |||||
| 360 | OR (@Evalu atedLocati onType = ' NLA' | |||||
| 361 | AND NO T EXISTS( SELECT * F ROM AHOBPR .REGISTRAN T_VISIT ev al | |||||
| 362 | WHERE eva l.REGISTRA NT_ID = Re g.REGISTRA NT_ID | |||||
| 363 | AND eva l.EVALUATI ON_FLAG = 'Y' ) | |||||
| 364 | ) | |||||
| 365 | OR (@Evalu atedLocati onType = ' VISN' | |||||
| 366 | AND E XISTS(SELE CT * FROM AHOBPR.REG ISTRANT_VI SIT eval | |||||
| 367 | JOIN AHOBPR.VIE W_FACILITY _LOOKUP in st ON inst .ID = eval .STD_INSTI TUTION_ID | |||||
| 368 | WHERE eval.REGIS TRANT_ID = Reg.REGIS TRANT_ID | |||||
| 369 | AND inst.VisnI D = @Evalu atedLocati onKey | |||||
| 370 | AND eval.EVALU ATION_FLAG = 'Y' ) | |||||
| 371 | ) | |||||
| 372 | OR (@Evalu atedLocati onType = ' Base' | |||||
| 373 | AND E XISTS(SELE CT * FROM AHOBPR.REG ISTRANT_VI SIT eval | |||||
| 374 | JOIN AHOBPR.VIE W_FACILITY _LOOKUP in st ON inst .ID = eval .STD_INSTI TUTION_ID | |||||
| 375 | WHERE eval.REGIS TRANT_ID = Reg.REGIS TRANT_ID | |||||
| 376 | AND inst.BASE_ ID = @Eval uatedInsti tutionId | |||||
| 377 | AND eval.EVALU ATION_FLAG = 'Y' ) | |||||
| 378 | ) | |||||
| 379 | OR (@Evalu atedLocati onType = ' Institutio n' | |||||
| 380 | AND E XISTS(SELE CT * FROM AHOBPR.REG ISTRANT_VI SIT eval | |||||
| 381 | WHERE eval.REGIS TRANT_ID = Reg.REGIS TRANT_ID | |||||
| 382 | AND eval.EVALU ATION_FLAG = 'Y' | |||||
| 383 | AND eval.STD_I NSTITUTION _ID = @Eva luatedInst itutionId) | |||||
| 384 | ) | |||||
| 385 | ); | |||||
| 386 | ||||||
| 387 | DROP TAB LE #state | |||||
| 388 | END | |||||
| 389 | ||||||
| 390 | -- EXEC [A HOBPR].[SP _ReportSta tusByLocat ion] | |||||
| 391 | -- EXEC [A HOBPR].[SP _ReportSta tusByLocat ion] @stat e = 'AA,Fo reign Coun try/Other' | |||||
| 392 | -- EXEC [A HOBPR].[SP _ReportSta tusByLocat ion] @stat us = 7 | |||||
| 393 | ||||||
| 394 | -- exec [A HOBPR].[SP _ReportSta tusByLocat ion] | |||||
| 395 | -- exec [A HOBPR].[SP _ReportSta tusByLocat ion] @Assi gnedLocati onType = ' NLA' | |||||
| 396 | -- exec [A HOBPR].[SP _ReportSta tusByLocat ion] @Assi gnedLocati onType = ' VISN', @As signedLoca tionKey = 'V16' | |||||
| 397 | -- exec [A HOBPR].[SP _ReportSta tusByLocat ion] @Assi gnedLocati onType = ' Base', @As signedLoca tionKey = '1000089' | |||||
| 398 | -- exec [A HOBPR].[SP _ReportSta tusByLocat ion] @Assi gnedLocati onType = ' Institutio n', @Assig nedLocatio nKey = '10 00089' | |||||
| 399 | -- exec [A HOBPR].[SP _ReportSta tusByLocat ion] | |||||
| 400 | -- exec [A HOBPR].[SP _ReportSta tusByLocat ion] @Eval uatedLocat ionType = 'NLA' | |||||
| 401 | -- exec [A HOBPR].[SP _ReportSta tusByLocat ion] @Eval uatedLocat ionType = 'VISN', @E valuatedLo cationKey = 'V16' | |||||
| 402 | -- exec [A HOBPR].[SP _ReportSta tusByLocat ion] @Eval uatedLocat ionType = 'Base', @E valuatedLo cationKey = '1000089 ' | |||||
| 403 | -- exec [A HOBPR].[SP _ReportSta tusByLocat ion] @Eval uatedLocat ionType = 'Instituti on', @Eval uatedLocat ionKey = ' 1000089' | |||||
| 404 | GO | |||||
| 405 | ||||||
| 406 | PRINT 'ALT ER PROCEDU RE [AHOBPR ].[SP_Repo rtAdHocByL ocation].. .'; | |||||
| 407 | GO | |||||
| 408 | ||||||
| 409 | -- ======= ========== ========== ========== ======== | |||||
| 410 | -- Author: Debora h Barr | |||||
| 411 | -- Create date: Nove mber 12, 2 014 | |||||
| 412 | -- Descrip tion: Used for the A HOBPR Ad H oc Report | |||||
| 413 | ||||||
| 414 | -- Modific ation log | |||||
| 415 | -- 2014-12 -31 - Chan ged from F LAG to RES PONSE for Health Con cerns and REQUEST_SE EN, Reform atted stat ements for readabili ty | |||||
| 416 | -- 2015-01 -05 - Chan ge Date Fo rmat to MM /DD/YYYY | |||||
| 417 | -- 2015-01 -14 - Sher ry Wang Ad d more par ameters: @ healthFact or, @formS tartFromDa te, @formS tartToDate , @subpopu lationFlag | |||||
| 418 | -- 2015-01 -14 - Sher ry Wang Ad d more par ameters: @ adminFlag, @deployme ntAll, @de ploymentEx posure, @a dminFlagFr omDate, @a dminFlagTo Date | |||||
| 419 | -- 2015-01 -16 - Bruc e Clegg - Fix parame ters, Add distinct a nd outer q uery to gr oup counts . | |||||
| 420 | -- 2015-02 -09 - Bruc e Clegg - Change Hea lth Factor Exists st atements t o use new REGISTRANT _VISIT | |||||
| 421 | -- 2015-05 -07 - Bruc e Clegg - Change Fac ility name from "Oth er" to "No Facitilty Assigned" when not found | |||||
| 422 | -- 2015-06 -04 - Bruc e Clegg - Add more p arameters | |||||
| 423 | -- 2015-06 -18 - Bruc e Clegg - Changed @s eparationT ype to an Integer | |||||
| 424 | -- 2015-07 -09 - Bruc e Clegg - Rewrote as Dynamic S QL for per formance | |||||
| 425 | -- ======= ========== ========== ========== ======== | |||||
| 426 | ALTER PROC EDURE [AHO BPR].[SP_R eportAdHoc ByLocation ] | |||||
| 427 | @st atus varch ar(100) = NULL, -- M ultiple st atues, com ma-separat ed values when not N ULL | |||||
| 428 | @du tyStatus v archar(100 ) = NULL, -- Multipl e states, comma-sepa rated valu es when no t NULL | |||||
| 429 | @fo rmStartFro mDateText varchar(10 0) = NULL, | |||||
| 430 | @fo rmStartToD ateText va rchar(100) = NULL, | |||||
| 431 | @he althFactor varchar(1 00) = NULL , -- Multi ple health factor ID s, comma-s eparated v alues when not NULL | |||||
| 432 | @fo rmCompleti onFromDate Text varch ar(100) = NULL, | |||||
| 433 | @fo rmCompleti onToDateTe xt varchar (100) = NU LL, | |||||
| 434 | @qu estionNumb er varchar (100) = NU LL, | |||||
| 435 | @an swer varch ar(100) = NULL, | |||||
| 436 | @he althConcer ns varchar (10) = 'Al l', | |||||
| 437 | @re questToBeS een varcha r(10) = 'A ll', | |||||
| 438 | @gr oupBy VARC HAR(50) = '', -- 'VISN' or 'Facili ty' | |||||
| 439 | @su bpopulatio nFlag varc har (10) = NULL, | |||||
| 440 | @ad minFlag va rchar (10) = NULL, | |||||
| 441 | @de ploymentAl l varchar (256) = NU LL, | |||||
| 442 | @de ploymentEx posure var char (256) = NULL, | |||||
| 443 | @ad minFlagFro mDateText varchar (2 0) = NULL, | |||||
| 444 | @ad minFlagToD ateText va rchar (20) = NULL, | |||||
| 445 | @ex cludeDead varchar(1) = 'N', | |||||
| 446 | @ge nder varch ar(50) = ' ', | |||||
| 447 | @ra ce varchar (50) = '', | |||||
| 448 | @et hnicity va rchar(50) = '', | |||||
| 449 | @se parationTy pe INT = 0 , | |||||
| 450 | @se parationFr omDateText varchar ( 20) = NULL , | |||||
| 451 | @se parationTo DateText v archar (20 ) = NULL, | |||||
| 452 | @en rollmentSt atus varch ar(50) = ' ' | |||||
| 453 | AS | |||||
| 454 | ||||||
| 455 | BEGIN | |||||
| 456 | ||||||
| 457 | DECLARE @formStart FromDate D ATETIME2(0 ) = NULL, | |||||
| 458 | @formStart ToDate DAT ETIME2(0) = NULL, | |||||
| 459 | @formCompl etionFromD ate DATETI ME2(0) = N ULL, | |||||
| 460 | @formCompl etionToDat e DATETIME 2(0) = NUL L, | |||||
| 461 | @adminFlag FromDate D ATETIME2(0 ) = NULL, | |||||
| 462 | @adminFlag ToDate DAT ETIME2(0) = NULL, | |||||
| 463 | @separatio nFromDate DATETIME2( 0) = NULL, | |||||
| 464 | @separatio nToDate DA TETIME2(0) = NULL; | |||||
| 465 | ||||||
| 466 | DECLARE @Query VAR CHAR(8000) ; | |||||
| 467 | ||||||
| 468 | -- Conve rt date pa rameters | |||||
| 469 | ||||||
| 470 | SET @for mStartFrom Date = dbo .CleanDate (@formStar tFromDateT ext); | |||||
| 471 | SET @for mStartToDa te = dbo.A ddMaxTime( dbo.CleanD ate(@formS tartToDate Text)); | |||||
| 472 | SET @for mCompletio nFromDate = dbo.Clea nDate(@for mCompletio nFromDateT ext); | |||||
| 473 | SET @for mCompletio nToDate = dbo.AddMax Time(dbo.C leanDate(@ formComple tionToDate Text)); | |||||
| 474 | SET @adm inFlagFrom Date = ISN ULL(dbo.Cl eanDate(@a dminFlagFr omDateText ),'1900010 1'); | |||||
| 475 | SET @adm inFlagToDa te = dbo.A ddMaxTime( ISNULL(dbo .CleanDate (@adminFla gToDateTex t),GETDATE ())); | |||||
| 476 | SET @sep arationFro mDate = db o.CleanDat e(@separat ionFromDat eText); | |||||
| 477 | SET @sep arationToD ate = dbo. AddMaxTime (dbo.Clean Date(@sepa rationToDa teText)); | |||||
| 478 | ||||||
| 479 | -- Build Src TDE | |||||
| 480 | SET @Que ry = ' WIT H Src | |||||
| 481 | AS( SE LECT a.REG ISTRANT_ID , a.STD_IN STITUTION_ ID FROM AH OBPR.REGIS TRANT a WH ERE 1 = 1 '; | |||||
| 482 | ||||||
| 483 | IF @stat us IS NOT NULL | |||||
| 484 | SET @Q uery = @Qu ery + ' AN D a.STD_RE GISTRANT_S TATUS_ID I N (' + @st atus + ')' ; | |||||
| 485 | ||||||
| 486 | IF ISNUL L(@dutySta tus,'') > '' | |||||
| 487 | SET @Q uery = @Qu ery + ' AN D a.STD_SE RVICE_STAT US_ID IN ( ' + @dutyS tatus + ') '; | |||||
| 488 | ||||||
| 489 | IF @heal thConcerns != 'All' | |||||
| 490 | SET @Q uery = @Qu ery + ' AN D a.HEALTH _CONCERNS_ RESPONSE = ''' + @he althConcer ns + ''''; | |||||
| 491 | ||||||
| 492 | IF @requ estToBeSee n != 'All' | |||||
| 493 | SET @Q uery = @Qu ery + ' AN D a.REQUES T_SEEN_RES PONSE = '' ' + @reque stToBeSeen + ''''; | |||||
| 494 | ||||||
| 495 | IF @form StartFromD ate IS NOT NULL OR @ formStartT oDate IS N OT NULL | |||||
| 496 | OR @form Completion FromDate I S NOT NULL OR @formC ompletionT oDate IS N OT NULL | |||||
| 497 | BEGIN | |||||
| 498 | SET @Query = @ Query + ' AND EXISTS ( SELECT d .REGISTRAN T_ID FROM AHOBPR.FOR M_RESPONSE d | |||||
| 499 | JOIN AHOBP R.FORM_RES PONSE_STAT US e ON d. FORM_RESPO NSE_ID = e .FORM_RESP ONSE_ID | |||||
| 500 | W HERE a.REG ISTRANT_ID = d.REGIS TRANT_ID ' ; | |||||
| 501 | IF @formStar tFromDate IS NOT NUL L | |||||
| 502 | SET @Quer y = @Query + ' AND e .QUESTIONN AIRE_START ED_DATE >= ''' + CON VERT(VARCH AR(20),@fo rmStartFro mDate,121) + ''''; | |||||
| 503 | IF @formStar tToDate IS NOT NULL | |||||
| 504 | SET @Quer y = @Query + ' AND e .QUESTIONN AIRE_START ED_DATE <= ''' + CON VERT(VARCH AR(20),@fo rmStartToD ate,121) + ''''; | |||||
| 505 | IF @formComp letionFrom Date IS NO T NULL | |||||
| 506 | SET @Quer y = @Query + ' AND e .QUESTIONN AIRE_COMPL ETED_DATE >= ''' + C ONVERT(VAR CHAR(20),@ formComple tionFromDa te,121) + ''''; | |||||
| 507 | IF @formComp letionToDa te IS NOT NULL | |||||
| 508 | SET @Quer y = @Query + ' AND e .QUESTIONN AIRE_COMPL ETED_DATE <= ''' + C ONVERT(VAR CHAR(20),@ formComple tionToDate ,121) + '' ''; | |||||
| 509 | S ET @Query = @Query + ' ) ' -- Close Exis its statem ent | |||||
| 510 | END | |||||
| 511 | ||||||
| 512 | IF ISNUL L(@answer, '') != '' | |||||
| 513 | SET @Q uery = @Qu ery + ' AN D EXISTS(S ELECT fr.R EGISTRANT_ ID FROM AH OBPR.FORM_ RESPONSE_A NSWER ra ' + | |||||
| 514 | 'JOI N AHOBPR.F ORM_RESPON SE_QUESTIO N rq ON rq .FORM_RESP ONSE_QUEST ION_ID = r a.FORM_RES PONSE_QUES TION_ID ' + | |||||
| 515 | 'JOI N AHOBPR.F ORM_RESPON SE fr ON f r.FORM_RES PONSE_ID = rq.FORM_R ESPONSE_ID ' + | |||||
| 516 | ' WHER E ra.STD_F ORM_ANSWER _ID IN (' + @answer + ') AND f r.REGISTRA NT_ID = a. REGISTRANT _ID )'; | |||||
| 517 | ||||||
| 518 | IF ISNUL L(@subpopu lationFlag ,'') != '' | |||||
| 519 | SET @Q uery = @Qu ery + ' AN D EXISTS(S ELECT * FR OM AHOBPR. REGISTRANT _REGISTRY_ FLAG subpo p ' + | |||||
| 520 | ' WHERE subp op.STD_REG ISTRY_FLAG _ID IN (' + @subpopu lationFlag + ') ' + | |||||
| 521 | ' AND subp op.REGISTR ANT_ID = a .REGISTRAN T_ID ) '; | |||||
| 522 | ||||||
| 523 | IF ISNULL(@a dminFlag,' ') != '' | |||||
| 524 | SET @Q uery = @Qu ery + ' AN D EXISTS(S ELECT * FR OM AHOBPR. REGISTRANT _REGISTRY_ FLAG admin flag ' + | |||||
| 525 | ' WHER E adminfla g.STD_REGI STRY_FLAG_ ID IN (' + @adminFla g + ') ' + | |||||
| 526 | ' AN D adminfla g.REGISTRA NT_ID = a. REGISTRANT _ID ' + | |||||
| 527 | ' AN D adminfla g.CREATED BETWEEN '' ' + CONVER T(VARCHAR( 20),@admin FlagFromDa te,121) + | |||||
| 528 | ''' AND '' ' + CONVER T(VARCHAR( 20),@admin FlagToDate ,121) + '' ' ) '; | |||||
| 529 | ||||||
| 530 | IF ISNUL L(@healthF actor,'') != '' | |||||
| 531 | SET @Q uery = @Qu ery + ' AN D EXISTS ( SELECT re. REGISTRANT _ID FROM A HOBPR.REGI STRANT_VIS IT re ' + | |||||
| 532 | ' JOIN AHO BPR.REGIST RANT_HEALT H_FACTOR h f ON re.RE GISTRANT_V ISIT_ID = hf.REGISTR ANT_VISIT_ ID ' + | |||||
| 533 | ' WHERE a.R EGISTRANT_ ID = re.RE GISTRANT_I D AND re.E VALUATION_ FLAG = ''Y '' ' + | |||||
| 534 | ' AND hf. STD_HEALTH _FACTOR_ID IN (' + @ healthFact or + ') ) ' | |||||
| 535 | ||||||
| 536 | IF ISNUL L(@deploym entAll,'') != '' | |||||
| 537 | SET @Q uery = @Qu ery + ' AN D EXISTS ( SELECT dep l.REGISTRA NT_ID FROM AHOBPR.RE GISTRANT_D EPLOYMENT depl ' + | |||||
| 538 | ' WHERE a.R EGISTRANT_ ID = depl. REGISTRANT _ID | |||||
| 539 | AND dep l.DEPLOYME NT_COUNTRY = ''' + @ deployment All + ''') ' ; | |||||
| 540 | ||||||
| 541 | IF ISNUL L(@deploym entExposur e,'') != ' ' | |||||
| 542 | SET @Q uery = @Qu ery + ' AN D EXISTS(S ELECT depl oymentExpo sure.REGIS TRANT_ID F ROM AHOBPR .REGISTRAN T_DEPLOYME NT deploym entExposur e ' + | |||||
| 543 | ' JOIN AH OBPR.FORM_ RESPONSE_Q UESTION ex posure ON deployment Exposure.R EGISTRANT_ DEPLOYMENT _ID = expo sure.REGIS TRANT_DEPL OYMENT_ID ' + | |||||
| 544 | ' JOIN AH OBPR.STD_F ORM_QUESTI ON quest O N exposure .STD_FORM_ QUESTION_I D = quest. STD_FORM_Q UESTION_ID ' + | |||||
| 545 | ' WHERE qu est.FORM_Q UESTION_UN IQUE_ID = ''1.2.A'' ' + | |||||
| 546 | ' AND de ploymentEx posure.DEP LOYMENT_CO UNTRY = '' ' + @deplo ymentExpos ure + '''' + | |||||
| 547 | ' AND de ploymentEx posure.REG ISTRANT_ID = a.REGIS TRANT_ID ) '; | |||||
| 548 | IF ISNUL L(@exclude Dead,'N') = 'Y' | |||||
| 549 | SET @Q uery = @Qu ery + ' AN D a.DECEAS ED_FLAG = 0 '; | |||||
| 550 | ||||||
| 551 | IF ISNUL L(@gender, '') != '' | |||||
| 552 | SET @Q uery = @Qu ery + ' AN D ''' + @g ender + '' ' = ISNULL (a.GENDER, ''No Data Available' ') '; | |||||
| 553 | ||||||
| 554 | IF ISNUL L(@ethnici ty,'') != '' | |||||
| 555 | SET @Q uery = @Qu ery + ' AN D ''' + @e thnicity + ''' = ISN ULL(a.ETHN ICITY,''No Data Avai lable'') ' ; | |||||
| 556 | ||||||
| 557 | IF ISNUL L(@separat ionType,0) != 0 | |||||
| 558 | SET @Q uery = @Qu ery + ' AN D ''' + @s eparationT ype + ''' = ISNULL(a .STD_SEPAR ATION_REAS ON_ID_CURR ENT,0) '; | |||||
| 559 | ||||||
| 560 | IF @sepa rationFrom Date IS NO T NULL | |||||
| 561 | SET @Q uery = @Qu ery + ' AN D a.SEPARA TION_DATE_ CURRENT >= ''' + CON VERT(VARCH AR(20),@se parationFr omDate,121 ) + ''''; | |||||
| 562 | ||||||
| 563 | IF @sepa rationToDa te IS NOT NULL | |||||
| 564 | SET @Q uery = @Qu ery + ' AN D a.SEPAR ATION_DATE _CURRENT < = ''' + CO NVERT(VARC HAR(20),@s eparationT oDate,121) + ''''; | |||||
| 565 | ||||||
| 566 | IF ISNUL L(@race,'' ) != '' | |||||
| 567 | SET @Q uery = @Qu ery + ' AN D ''' + @r ace + ''' = ISNULL( a.RACE ,'' No Data Av ailable'') '; | |||||
| 568 | ||||||
| 569 | IF ISNUL L(@enrollm entStatus, '') != '' | |||||
| 570 | SET @Q uery = @Qu ery + ' AN D ''' + @e nrollmentS tatus + '' ' = ISNULL (a.ENROLLM ENT_STATUS ,''No Data Available '') '; | |||||
| 571 | ||||||
| 572 | -- Add S ummary TDE | |||||
| 573 | SET @Que ry = @Quer y + ' ) ,Summary AS( ' + | |||||
| 574 | ' SELE CT Src.STD _INSTITUTI ON_ID, COU NT(*) AS T otalRegist rants FROM Src ' + | |||||
| 575 | ' GROU P BY STD_I NSTITUTION _ID ) '; | |||||
| 576 | -- By Faci lity | |||||
| 577 | IF @groupBy = 'Facilit y' | |||||
| 578 | SET @Query = @Query + ' SELECT inst.Name AS Locati on, ' + | |||||
| 579 | ' ISNULL(C ONVERT(VAR CHAR(10),S ummary.STD _INSTITUTI ON_ID),''- 1'') AS Lo cationId, ' + | |||||
| 580 | ' SU M(TotalReg istrants) AS TotalRe gistrants FROM Summa ry ' + | |||||
| 581 | ' JOIN AHOBPR.VI EW_INSTITU TION_NAME inst ON in st.ID = IS NULL(Summa ry.STD_INS TITUTION_I D,-1) ' + | |||||
| 582 | ' GROUP BY inst.N ame,STD_IN STITUTION_ ID ' + | |||||
| 583 | ' O PTION (OPT IMIZE FOR UNKNOWN);' ; | |||||
| 584 | ||||||
| 585 | -- By VISN | |||||
| 586 | IF @groupBy = 'VISN' | |||||
| 587 | SET @Quer y = @Query + ' ,Visn Summary AS ( ' + | |||||
| 588 | ' S ELECT ISNU LL(inst.Vi snID,''NLA '') AS Loc ation, ' + | |||||
| 589 | ' ISNU LL(inst.Vi snID, ''-1 '') AS Loc ationId, ' + | |||||
| 590 | ' SUM( TotalRegis trants) AS TotalRegi strants ' + | |||||
| 591 | ' FROM Summ ary ' + | |||||
| 592 | ' LEFT JOIN AHOBPR.VI EW_FACILIT Y_LOOKUP i nst ON ins t.ID = ISN ULL(Summar y.STD_INST ITUTION_ID ,-1) ' + | |||||
| 593 | ' GROUP BY inst.VisnI D ) ' + | |||||
| 594 | ' S ELECT REPL ACE(Locati on,''NLA'' ,''No Faci tilty Assi gned'') AS Location, ' + | |||||
| 595 | ' CONV ERT(VARCHA R(10),Loca tionId) AS LocationI d, TotalRe gistrants ' + | |||||
| 596 | ' FROM Visn Summary ' + | |||||
| 597 | ' ORDER BY L ocation ' + | |||||
| 598 | ' OPTION (OP TIMIZE FOR UNKNOWN); ' ; | |||||
| 599 | ||||||
| 600 | PRINT @Q uery; | |||||
| 601 | ||||||
| 602 | EXECUTE (@Query); | |||||
| 603 | END | |||||
| 604 | -- Paramet ers | |||||
| 605 | --@statu s, @dutySt atus ,@que stionnaire StartDate, @question naireCompl eteDate, | |||||
| 606 | --@quest ionNumber, @answer, @healthCon cerns= 'Al l', @reque stToBeSeen = 'All', | |||||
| 607 | --@regis tryFlag,@I nstitution Id = 0, @V isnId = '' | |||||
| 608 | -- Test Ca ses | |||||
| 609 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @st atus = '6, 7' | |||||
| 610 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @du tyStatus = '1,2' | |||||
| 611 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @fo rmStartFro mDateText = '200101 01' | |||||
| 612 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @fo rmStartToD ateText = '20141231' | |||||
| 613 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @he althFactor = '44,45, 46,47' | |||||
| 614 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @fo rmCompleti onFromDate Text = '2 0010101' | |||||
| 615 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @fo rmCompleti onToDateTe xt = '201 41231' | |||||
| 616 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @he althConcer ns = 'Yes' | |||||
| 617 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @re questToBeS een = 'Yes ' | |||||
| 618 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @su bpopulatio nFlag = '6 4,65,66,67 ' | |||||
| 619 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @de ploymentAl l = 'Iraq' -- 'Eg ypt' | |||||
| 620 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @de ploymentEx posure = 'Iraq' | |||||
| 621 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @ad minFlag = '59,60' ,@ adminFlagF romDateTex t = '20150 101' , @ad minFlagToD ateText = '20150201' | |||||
| 622 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = 'V ISN', @qu estionNumb er = '1.2. E' , @ans wer = '234 6,1571,17' | |||||
| 623 | -- EXECUTE [AHOBPR]. [SP_Report AdHocByLoc ation] @gr oupBy = ' Facility' , @status = '6,7' ,@ answer = ' 2346,1571, 17' -- ' 20,795,157 0' | |||||
| 624 | GO | |||||
| 625 | ||||||
| 626 | -- ======= ========== ========== ========== ======== | |||||
| 627 | -- Au thor: Bruce Clegg | |||||
| 628 | -- Create date: Febr uary 4, 20 15 | |||||
| 629 | -- Descrip tion: Used for the A HOBPR Clin ically Rev elant Summ ary | |||||
| 630 | -- Note: Data is massag ed for que stions 1.2 .A, 1.2.F, 1.2.G, 2. 5.A and 2. 5.C | |||||
| 631 | -- Modific ation log | |||||
| 632 | -- 2015042 7 - Clegg - get depl oyment cou nts indepe ndent of Q uestion nu mbers | |||||
| 633 | -- ======= ========== ========== ========== ======== | |||||
| 634 | ALTER PROC EDURE [AHO BPR].[SP_R eportClini callyRevel antSummary ] | |||||
| 635 | @Re gistrantId INT = 0 | |||||
| 636 | AS | |||||
| 637 | BEGIN | |||||
| 638 | ||||||
| 639 | --Temp table conc atenate An swers for Questions | |||||
| 640 | CREATE T ABLE #Answ ers | |||||
| 641 | ( | |||||
| 642 | Quest ionNumber VARCHAR(10 0), | |||||
| 643 | Quest ionNumberD isplay VAR CHAR(100), | |||||
| 644 | Answe rValues VA RCHAR(8000 ) | |||||
| 645 | ); | |||||
| 646 | ||||||
| 647 | ||||||
| 648 | -- Load all clinic al releven t answers that are N OT from a Deployment | |||||
| 649 | WITH Res ponses | |||||
| 650 | AS (SELE CT qst.FOR M_QUESTION _UNIQUE_ID AS Questi onNumber, | |||||
| 651 | I SNULL(rAns .ANSWER_VA LUE,ans.[T EXT]) AS AnswerValu e | |||||
| 652 | FROM A HOBPR.REGI STRANT reg | |||||
| 653 | JOIN A HOBPR.FORM _RESPONSE fr ON fr.R EGISTRANT_ ID = Reg.R EGISTRANT_ ID | |||||
| 654 | JOIN A HOBPR.FORM _RESPONSE_ QUESTION r Qst ON fr. FORM_RESPO NSE_ID = r Qst.FORM_R ESPONSE_ID | |||||
| 655 | JOIN A HOBPR.FORM _RESPONSE_ ANSWER rAn s ON rQst. FORM_RESPO NSE_QUESTI ON_ID = rA ns.FORM_RE SPONSE_QUE STION_ID | |||||
| 656 | JOIN A HOBPR.STD_ FORM_ANSWE R ans ON r Ans.STD_FO RM_ANSWER_ ID = ans.S TD_FORM_AN SWER_ID | |||||
| 657 | JOIN A HOBPR.STD_ FORM_QUEST ION qst ON rQst.STD_ FORM_QUEST ION_ID = q st.STD_FOR M_QUESTION _ID | |||||
| 658 | WHERE f r.STD_FORM _ID = ans. STD_FORM_I D | |||||
| 659 | AND q st.STD_FOR M_ID = fr. STD_FORM_I D | |||||
| 660 | AND a ns.CLINICA L_RELEVANT _FLAG = 1 | |||||
| 661 | AND r eg.REGISTR ANT_ID = @ Registrant Id | |||||
| 662 | AND r Qst.REGIST RANT_DEPLO YMENT_ID I S NULL | |||||
| 663 | ) | |||||
| 664 | ||||||
| 665 | INSERT I NTO #Answe rs (Questi onNumber, QuestionNu mberDispla y, AnswerV alues) | |||||
| 666 | SELECT a.Question Number, a. QuestionNu mber, | |||||
| 667 | STUFF((SEL ECT '~' + b.AnswerVa lue | |||||
| 668 | FROM Respo nses b | |||||
| 669 | W HERE a.Que stionNumbe r = b.Ques tionNumber | |||||
| 670 | FOR XML PATH(' ')), 1, 1, '') Answ erValues | |||||
| 671 | FROM Respo nses a | |||||
| 672 | GROU P BY a.Que stionNumbe r | |||||
| 673 | ORDE R BY a.Que stionNumbe r; | |||||
| 674 | ||||||
| 675 | ||||||
| 676 | -- Get D eployment Count with out limiti ng it to a specific Question. | |||||
| 677 | DECLA RE @Deploy mentCount INT = 0; | |||||
| 678 | With Deployment s | |||||
| 679 | AS( | |||||
| 680 | S ELECT DIST INCT rQst. REGISTRANT _DEPLOYMEN T_ID | |||||
| 681 | FROM AHOB PR.REGISTR ANT reg | |||||
| 682 | JOIN AHOB PR.FORM_RE SPONSE fr ON fr.REGI STRANT_ID = Reg.REGI STRANT_ID | |||||
| 683 | JOIN AHOB PR.FORM_RE SPONSE_QUE STION rQst ON fr.FOR M_RESPONSE _ID = rQst .FORM_RESP ONSE_ID | |||||
| 684 | WHERE reg. REGISTRANT _ID = @Reg istrantId | |||||
| 685 | AND rQst .REGISTRAN T_DEPLOYME NT_ID IS N OT NULL | |||||
| 686 | ) | |||||
| 687 | SELEC T @Deploym entCount = COUNT(RE GISTRANT_D EPLOYMENT_ ID) | |||||
| 688 | FRO M Deployme nts; | |||||
| 689 | ||||||
| 690 | -- Load specific c linical re levent ans wers summa rized for all Deploy ments - '1 .2.A','1.2 .F' | |||||
| 691 | INSERT I NTO #Answe rs (Questi onNumber, QuestionNu mberDispla y, AnswerV alues) | |||||
| 692 | SEL ECT qst.FO RM_QUESTIO N_UNIQUE_I D AS Quest ionNumber | |||||
| 693 | ,qst.FO RM_QUESTIO N_UNIQUE_I D AS Quest ionNumberD isplay | |||||
| 694 | , 'Said yes to '+ CONV ERT(VARCHA R(2),SUM(C ASE WHEN I SNULL(rAns .ANSWER_VA LUE,ans.[T EXT]) = 'Y es' THEN 1 ELSE 0 EN D)) | |||||
| 695 | + ' of ' + CONVERT(VA RCHAR(2),@ Deployment Count) + ' deploymen ts' AS Ans werValues | |||||
| 696 | FROM AHOBP R.REGISTRA NT reg | |||||
| 697 | JOIN AHOBP R.FORM_RES PONSE fr O N fr.REGIS TRANT_ID = Reg.REGIS TRANT_ID | |||||
| 698 | JOIN AHOBP R.FORM_RES PONSE_QUES TION rQst ON fr.FORM _RESPONSE_ ID = rQst. FORM_RESPO NSE_ID | |||||
| 699 | LEFT JOIN AHOBPR.FOR M_RESPONSE _ANSWER rA ns ON rQst .FORM_RESP ONSE_QUEST ION_ID = r Ans.FORM_R ESPONSE_QU ESTION_ID | |||||
| 700 | LEFT JOIN AHOBPR.STD _FORM_ANSW ER ans ON rAns.STD_F ORM_ANSWER _ID = ans. STD_FORM_A NSWER_ID | |||||
| 701 | JOIN AHOBP R.STD_FORM _QUESTION qst ON rQs t.STD_FORM _QUESTION_ ID = qst.S TD_FORM_QU ESTION_ID | |||||
| 702 | W HERE qst.S TD_FORM_ID = fr.STD_ FORM_ID | |||||
| 703 | AND reg.R EGISTRANT_ ID = @Regi strantId | |||||
| 704 | AND qst.F ORM_QUESTI ON_UNIQUE_ ID in ('1. 2.A','1.2. F') | |||||
| 705 | GROUP BY qst.FORM_Q UESTION_UN IQUE_ID; | |||||
| 706 | ||||||
| 707 | -- Alw ays Delete any zero counts fro m above th at were cr eated in o rder to ca pture true Deploymen t count. | |||||
| 708 | DELETE F ROM #Answe rs WHERE A nswerValue s LIKE 'Sa id yes to 0 of % dep loyments' | |||||
| 709 | AND QuestionNu mber in (' 1.2.A','1. 2.F'); | |||||
| 710 | ||||||
| 711 | ||||||
| 712 | -- Load specific c linical re levent ans wers summa rized for all Deploy ments -- ' 1.2.G' | |||||
| 713 | INSERT I NTO #Answe rs (Questi onNumber, QuestionNu mberDispla y, AnswerV alues) | |||||
| 714 | SELE CT qst.FOR M_QUESTION _UNIQUE_ID AS Questi onNumber | |||||
| 715 | ,qst.FORM _QUESTION_ UNIQUE_ID AS Questio nNumberDis play | |||||
| 716 | ,'M aximum: '+ CONVERT(V ARCHAR(2), MAX(CONVER T(INT,rAns .ANSWER_VA LUE))) | |||||
| 717 | + ' hours, Av erage: '+ LEFT(CONVE RT(VARCHAR (20),AVG(C ONVERT(DEC IMAL(6,2), rAns.ANSWE R_VALUE))) ,4) | |||||
| 718 | + ' hours, De ployments: ' + CONVE RT(VARCHAR (2),@Deplo ymentCount ) AS Answe rValues | |||||
| 719 | FR OM AHOBPR. REGISTRANT reg | |||||
| 720 | JO IN AHOBPR. FORM_RESPO NSE fr ON fr.REGISTR ANT_ID = R eg.REGISTR ANT_ID | |||||
| 721 | JO IN AHOBPR. FORM_RESPO NSE_QUESTI ON rQst ON fr.FORM_R ESPONSE_ID = rQst.FO RM_RESPONS E_ID | |||||
| 722 | JO IN AHOBPR. FORM_RESPO NSE_ANSWER rAns ON r Qst.FORM_R ESPONSE_QU ESTION_ID = rAns.FOR M_RESPONSE _QUESTION_ ID | |||||
| 723 | JO IN AHOBPR. STD_FORM_Q UESTION qs t ON rQst. STD_FORM_Q UESTION_ID = qst.STD _FORM_QUES TION_ID | |||||
| 724 | WHE RE qst.STD _FORM_ID = fr.STD_FO RM_ID | |||||
| 725 | A ND qst.STD _FORM_ID = fr.STD_FO RM_ID | |||||
| 726 | A ND reg.REG ISTRANT_ID = @Regist rantId | |||||
| 727 | A ND qst.FOR M_QUESTION _UNIQUE_ID = '1.2.G' | |||||
| 728 | G ROUP BY qs t.FORM_QUE STION_UNIQ UE_ID; | |||||
| 729 | ||||||
| 730 | -- Alw ays Delete any Null or Empty A nswers. | |||||
| 731 | DELETE F ROM #Answe rs WHERE I SNULL(Answ erValues,' ') = ''; | |||||
| 732 | ||||||
| 733 | ||||||
| 734 | -- Tobac co Exposur e | |||||
| 735 | -- if bo th 2.5.A a nd 2.5.C e xist, repl ace with C ombined an swer text' | |||||
| 736 | DECLARE @25A VARCH AR(200) = (SELECT An swerValues FROM #Ans wers WHERE QuestionN umber = '2 .5.A') | |||||
| 737 | DECLARE @25C VARCH AR(200) = (SELECT An swerValues FROM #Ans wers WHERE QuestionN umber = '2 .5.C') | |||||
| 738 | IF @25A = 'Yes' | |||||
| 739 | IF @25C = 'N ot at all' | |||||
| 740 | UPDATE #An swers SET AnswerValu es = 'Past Smoker' | |||||
| 741 | , QuestionNu mberDispla y = '2.5' | |||||
| 742 | WHERE QuestionNu mber = '2. 5.A'; | |||||
| 743 | ELS E | |||||
| 744 | UPDATE #An swers SET AnswerValu es = 'Curr ent Smoker ' | |||||
| 745 | , QuestionNu mberDispla y = '2.5' | |||||
| 746 | WHERE QuestionNu mber = '2. 5.A'; | |||||
| 747 | IF @25 A = 'No' | |||||
| 748 | UPD ATE #Answe rs SET Ans werValues = 'Never s moked' | |||||
| 749 | , QuestionNu mberDispla y = '2.5' | |||||
| 750 | WHERE QuestionNu mber = '2. 5.A'; | |||||
| 751 | ||||||
| 752 | -- Alway s Delete 2 .5.C, as i t cannot s tand on it 's own | |||||
| 753 | DELETE F ROM #Answe rs WHERE Q uestionNum ber = '2.5 .C'; | |||||
| 754 | ||||||
| 755 | -- Final Query | |||||
| 756 | SE LECT DISTI NCT | |||||
| 757 | list.Quest ionNumberD isplay AS QuestionNu mber | |||||
| 758 | ,CASE WHEN qst. SHORT_TEXT = 'Have y ou smoked at least 1 00 cigaret tes in you r entire l ife?' -- 2.5.A | |||||
| 759 | THEN 'Hav e you ever smoked?' | |||||
| 760 | ELSE qst. SHORT_TEXT END AS Q uestionTex t | |||||
| 761 | ,REPL ACE(list.A nswerValue s,'~','<br />') AS An swerValues | |||||
| 762 | ,sec. STD_FORM_S ECTION_ID AS Section Id | |||||
| 763 | ,sub. STD_FORM_S UB_SECTION _ID AS Sub sectionId | |||||
| 764 | ,CASE WHEN ISNU LL(sub.MEN U_ITEM_NAM E, '') = ' ' | |||||
| 765 | THEN Conv ert(VARCHA R, sec.BRP _FORM_SECT ION_ID) + ' ' + sec. MENU_ITEM_ NAME | |||||
| 766 | ELSE Conv ert(VARCHA R, sec.BRP _FORM_SECT ION_ID) + '.' + Conv ert(VARCHA R, sub.BRP _FORM_SUB_ SECTION_ID ) + ' ' + sec.MENU_I TEM_NAME + ' > ' + s ub.MENU_IT EM_NAME | |||||
| 767 | END AS Se ctionAndSu bSection | |||||
| 768 | FROM AHOBP R.REGISTRA NT reg | |||||
| 769 | JOIN AHOBP R.FORM_RES PONSE fr O N fr.REGIS TRANT_ID = Reg.REGIS TRANT_ID | |||||
| 770 | JOIN AHOBP R.FORM_RES PONSE_QUES TION rQst ON fr.FORM _RESPONSE_ ID = rQst. FORM_RESPO NSE_ID | |||||
| 771 | JOIN AHOBP R.STD_FORM _QUESTION qst ON rQs t.STD_FORM _QUESTION_ ID = qst.S TD_FORM_QU ESTION_ID | |||||
| 772 | JOIN #Answ ers list O N qst.FORM _QUESTION_ UNIQUE_ID = list.Que stionNumbe r | |||||
| 773 | JOIN STD_F ORM_SECTIO N sec ON s ec.STD_FOR M_SECTION_ ID = qst.S TD_FORM_SE CTION_ID | |||||
| 774 | JOIN STD_F ORM_SUB_SE CTION sub ON sub.STD _FORM_SUB_ SECTION_ID = qst.STD _FORM_SUB_ SECTION_ID | |||||
| 775 | W HERE qst.S TD_FORM_ID = fr.STD_ FORM_ID | |||||
| 776 | AND reg.R EGISTRANT_ ID = @Regi strantId; | |||||
| 777 | ||||||
| 778 | DROP TAB LE #Answer s | |||||
| 779 | END | |||||
| 780 | ||||||
| 781 | -- EXEC [A HOBPR].[SP _ReportCli nicallyRev elantSumma ry] 149 | |||||
| 782 | -- 5 6 7 8 108 | |||||
| 783 | ||||||
| 784 | ||||||
| 785 | ||||||
| 786 | PRINT 'Dro p Index IX _DOD_DEPLO YMENT_IMPO RT_EDIPI.. .'; | |||||
| 787 | GO | |||||
| 788 | ||||||
| 789 | IF EXISTS (SELECT * FROM sys. indexes WH ERE object _id = OBJE CT_ID(N'[A HOBPR].[DO D_DEPLOYME NT_IMPORT] ') AND nam e = N'IX_D OD_DEPLOYM ENT_IMPORT _EDIPI') | |||||
| 790 | DROP INDEX [IX_DOD_D EPLOYMENT_ IMPORT_EDI PI] ON [AH OBPR].[DOD _DEPLOYMEN T_IMPORT] WITH ( ONL INE = OFF ) | |||||
| 791 | GO | |||||
| 792 | ||||||
| 793 | PRINT 'DEL ETE PROCED URE [AHOBP R].[SP_Loa dDodDeploy mentInsert ]'; | |||||
| 794 | GO | |||||
| 795 | ||||||
| 796 | IF EXISTS (SELECT * FROM sys. objects WH ERE object _id = OBJE CT_ID(N'[A HOBPR].[SP _LoadDodDe ploymentIn sert]') AN D type in (N'P', N'P C')) | |||||
| 797 | DROP PROCE DURE [AHOB PR].[SP_Lo adDodDeplo ymentInser t] | |||||
| 798 | GO | |||||
| 799 | ||||||
| 800 | ||||||
| 801 | PRINT 'DRO P TABLE [A HOBPR].[ST AGED_DOD_D EPLOYMENT_ IMPORT]'; | |||||
| 802 | GO | |||||
| 803 | IF EXISTS (SELECT * FROM sys. objects WH ERE object _id = OBJE CT_ID(N'[A HOBPR].[ST AGED_DOD_D EPLOYMENT_ IMPORT]') AND type i n (N'U')) | |||||
| 804 | DROP TABLE [AHOBPR]. [STAGED_DO D_DEPLOYME NT_IMPORT] | |||||
| 805 | GO | |||||
| 806 | ||||||
| 807 | -- ======= ========== ========== ========== ======== | |||||
| 808 | -- Author: Bruce Clegg | |||||
| 809 | -- Create date: 6/12 /2015 | |||||
| 810 | -- Descrip tion: Call ed after l oading CDW Staging t ables | |||||
| 811 | -- ======= ========== ========== ========== ======== | |||||
| 812 | ALTER PROC EDURE [AHO BPR].[SP_U pdateFromC DW] | |||||
| 813 | AS | |||||
| 814 | BEGIN | |||||
| 815 | ||||||
| 816 | DECLARE @Now DATET IME2(0) = GETDATE(); | |||||
| 817 | DECLARE @ProcName VARCHAR(30 ) = 'AHOBP R.SP_Updat eFromCDW'; | |||||
| 818 | ||||||
| 819 | PRINT 'S et Institu tion ID in Staged Pa tient'; | |||||
| 820 | ||||||
| 821 | WITH Src | |||||
| 822 | AS( | |||||
| 823 | SELECT R EGISTRANT_ ID | |||||
| 824 | ,Preferr edInstitut ionCode | |||||
| 825 | ,Inst.ID | |||||
| 826 | FROM [ AHOBPR].[S TAGED_PATI ENT] Stg | |||||
| 827 | JOIN A HOBPR.VIEW _INSTITUTI ON Inst ON Inst.STAT IONNUMBER = Stg.Pref erredInsti tutionCode | |||||
| 828 | ) | |||||
| 829 | MERGE INTO [AHOB PR].[STAGE D_PATIENT] AS Tgt | |||||
| 830 | USING Src | |||||
| 831 | ON Tgt.RE GISTRANT_I D = Src.RE GISTRANT_I D | |||||
| 832 | WHEN M ATCHED | |||||
| 833 | THEN U PDATE | |||||
| 834 | SET Tgt.ST D_INSTITUT ION_ID = S rc.ID; | |||||
| 835 | ||||||
| 836 | PRINT 'U pdate Regi strant fro m staged p atient...' ; | |||||
| 837 | ||||||
| 838 | WITH Src | |||||
| 839 | AS ( | |||||
| 840 | SELECT [REGISTRA NT_ID] | |||||
| 841 | ,[GENDER] | |||||
| 842 | ,[DECEASED ] | |||||
| 843 | ,[DateOfDe ath] | |||||
| 844 | ,[RaceText ] | |||||
| 845 | ,[MaritalS tatus] | |||||
| 846 | ,[Eligibil ityStatus] | |||||
| 847 | ,[Eligibil ity] | |||||
| 848 | ,[PatientI CN] | |||||
| 849 | ,[Enrollme ntStatus] | |||||
| 850 | ,[Preferre dInstituti onCode] | |||||
| 851 | ,[Enrollme ntDate] | |||||
| 852 | ,[STD_INST ITUTION_ID ] | |||||
| 853 | FROM [AHOBPR]. [STAGED_PA TIENT] | |||||
| 854 | ) | |||||
| 855 | MERG E INTO [AH OBPR].[REG ISTRANT] A S Tgt | |||||
| 856 | USIN G Src | |||||
| 857 | ON Tgt. REGISTRANT _ID = Src. REGISTRANT _ID | |||||
| 858 | WHEN MATCHED | |||||
| 859 | THEN UPDATE | |||||
| 860 | SET Tgt. STD_INSTIT UTION_ID = Src.STD_I NSTITUTION _ID | |||||
| 861 | ,Tgt. GENDER = C ASE Src.GE NDER WHEN 'F' THEN ' FEMALE' | |||||
| 862 | WHEN 'M' THEN ' MALE' END | |||||
| 863 | ,Tgt. MARITAL_ST ATUS = Src .[MaritalS tatus] | |||||
| 864 | ,Tgt. RACE = Src .[RaceText ] | |||||
| 865 | ,Tgt. DECEASED_F LAG = CONV ERT(BIT,(C ASE Src.[D ECEASED] W HEN 'Y' TH EN 1 ELSE 0 END)) | |||||
| 866 | ,Tgt. DEATH_DATE = Src.[Da teOfDeath] | |||||
| 867 | ,Tgt. ELIGIBILIT Y_STATUS = Src.[Elig ibilitySta tus] | |||||
| 868 | ,Tgt. ELIGIBILIT Y = Src.[E ligibility ] | |||||
| 869 | ,Tgt. ENROLLMENT _STATUS = Src.[Enrol lmentStatu s] | |||||
| 870 | ,Tgt. ENROLLED_D ATE = Src. [Enrollmen tDate] | |||||
| 871 | ,Tgt. ETL_UPDATE D = @Now; | |||||
| 872 | ||||||
| 873 | PRINT 'D elete heal th factors for encou nters bein g updated' ; | |||||
| 874 | DELETE | |||||
| 875 | FROM AHO BPR.REGIST RANT_HEALT H_FACTOR | |||||
| 876 | WHERE EX ISTS(SELEC T REGISTRA NT_VISIT_I D | |||||
| 877 | FRO M AHOBPR.R EGISTRANT_ VISIT | |||||
| 878 | JOI N AHOBPR.S TAGED_VISI T ON STAGE D_VISIT.RE GISTRANT_I D = REGIST RANT_VISIT .REGISTRAN T_ID | |||||
| 879 | WHER E REGISTRA NT_VISIT.R EGISTRANT_ VISIT_ID = REGISTRAN T_HEALTH_F ACTOR.REGI STRANT_VIS IT_ID | |||||
| 880 | AN D STAGED_V ISIT.EVALU ATION_FLAG = 'Y'); | |||||
| 881 | ||||||
| 882 | PRINT 'D elete enco uters bein g updated' ; | |||||
| 883 | ||||||
| 884 | DELETE | |||||
| 885 | FROM AHO BPR.REGIST RANT_VISIT | |||||
| 886 | WHERE EV ALUATION_F LAG = 'Y' | |||||
| 887 | AND EX ISTS(SELEC T REGISTRA NT_ID FROM AHOBPR.ST AGED_VISIT | |||||
| 888 | WHER E STAGED_V ISIT.REGIS TRANT_ID = REGISTRAN T_VISIT.RE GISTRANT_I D | |||||
| 889 | AND STAGED_VIS IT.EVALUAT ION_FLAG = 'Y'); | |||||
| 890 | ||||||
| 891 | PRINT 'D elete rece nt visits being upda ted'; | |||||
| 892 | ||||||
| 893 | DELETE | |||||
| 894 | FROM AHO BPR.REGIST RANT_VISIT | |||||
| 895 | WHERE EV ALUATION_F LAG = 'N' | |||||
| 896 | AND EX ISTS(SELEC T REGISTRA NT_ID FROM AHOBPR.ST AGED_VISIT | |||||
| 897 | WHER E STAGED_V ISIT.REGIS TRANT_ID = REGISTRAN T_VISIT.RE GISTRANT_I D | |||||
| 898 | AND STAGED_VIS IT.EVALUAT ION_FLAG = 'N'); | |||||
| 899 | ||||||
| 900 | PRINT 'S et Institu tion ID in Staged VI SIT'; | |||||
| 901 | ||||||
| 902 | WITH Src | |||||
| 903 | AS( | |||||
| 904 | SELECT S tg.VisitSI D | |||||
| 905 | ,S tg.INSTITU TION_CODE | |||||
| 906 | ,I nst.ID | |||||
| 907 | FROM [ AHOBPR].[S TAGED_VISI T] Stg | |||||
| 908 | JOIN A HOBPR.VIEW _INSTITUTI ON Inst ON Inst.STAT IONNUMBER = Stg.INST ITUTION_CO DE | |||||
| 909 | ) | |||||
| 910 | MERGE INTO [AHOB PR].[STAGE D_VISIT] A S Tgt | |||||
| 911 | USING Src | |||||
| 912 | ON Tgt.Vi sitSID = S rc.VisitSI D | |||||
| 913 | WHEN M ATCHED | |||||
| 914 | THEN U PDATE | |||||
| 915 | SET Tgt.ST D_INSTITUT ION_ID = S rc.ID; | |||||
| 916 | ||||||
| 917 | PRINT 'I nsert enco unters and visits... '; | |||||
| 918 | ||||||
| 919 | INSERT I NTO [AHOBP R].[REGIST RANT_VISIT ] | |||||
| 920 | ([REGIS TRANT_ID] | |||||
| 921 | ,[VISIT _DATE_TIME ] | |||||
| 922 | ,[STD_I NSTITUTION _ID] | |||||
| 923 | ,[VISTA _Encounter ID] | |||||
| 924 | ,[VISTA _Sta3n] | |||||
| 925 | ,[VISTA _Eligibili tyStatus] | |||||
| 926 | ,[EVALU ATION_FLAG ] | |||||
| 927 | ,[APPOI NTMENT_TYP E] | |||||
| 928 | ,[STOP_ CODE] | |||||
| 929 | ,[CREAT EDBY] | |||||
| 930 | ,[UPDAT EDBY] | |||||
| 931 | ,[CREAT ED] | |||||
| 932 | ,[UPDAT ED]) | |||||
| 933 | SELE CT [REGIST RANT_ID] | |||||
| 934 | ,[VISIT_ DATE_TIME] | |||||
| 935 | ,[STD_IN STITUTION_ ID] | |||||
| 936 | ,[VISTA_ EncounterI D] | |||||
| 937 | ,[VISTA_ Sta3n] | |||||
| 938 | ,[VISTA_ Eligibilit y] | |||||
| 939 | ,[EVALUA TION_FLAG] | |||||
| 940 | ,[APPOIN TMENT_TYPE ] | |||||
| 941 | ,[STOP_C ODE] | |||||
| 942 | ,@ProcNa me | |||||
| 943 | ,@ProcNa me | |||||
| 944 | ,@Now | |||||
| 945 | ,@Now | |||||
| 946 | FROM [ AHOBPR].[S TAGED_VISI T]; | |||||
| 947 | ||||||
| 948 | PRINT 'S et Standar d Health F actors ID from STD_H EALTH_FACT OR...'; | |||||
| 949 | ||||||
| 950 | WITH Src | |||||
| 951 | AS( | |||||
| 952 | SELE CT [CDW_VI SIT_SID] | |||||
| 953 | ,[REGIST RANT_ID] | |||||
| 954 | ,std.[ST D_HEALTH_F ACTOR_ID] | |||||
| 955 | ,[HEALTH _FACTOR_TE XT] | |||||
| 956 | FR OM [AHOBPR ].[STAGED_ HEALTH_FAC TOR] stage d | |||||
| 957 | JO IN AHOBPR. STD_HEALTH _FACTOR st d ON std.N AME = stag ed.HEALTH_ FACTOR_TEX T | |||||
| 958 | ) | |||||
| 959 | MERGE INTO AHOBP R.[STAGED_ HEALTH_FAC TOR] AS Tg t | |||||
| 960 | USING Src ON Tg t.[CDW_VIS IT_SID] = Src.[CDW_V ISIT_SID] | |||||
| 961 | WHEN M ATCHED | |||||
| 962 | AND Tgt .[REGISTRA NT_ID] = S rc.[REGIST RANT_ID] | |||||
| 963 | AND Tgt .[HEALTH_F ACTOR_TEXT ] = Src.[H EALTH_FACT OR_TEXT] | |||||
| 964 | THEN U PDATE | |||||
| 965 | SET Tgt.[S TD_HEALTH_ FACTOR_ID] = Src.[ST D_HEALTH_F ACTOR_ID]; | |||||
| 966 | ||||||
| 967 | PRINT ' Insert Hea lth Factor s...'; | |||||
| 968 | ||||||
| 969 | INSERT I NTO [AHOBP R].[REGIST RANT_HEALT H_FACTOR] | |||||
| 970 | ([REGIS TRANT_VISI T_ID] | |||||
| 971 | ,[STD_H EALTH_FACT OR_ID] | |||||
| 972 | ,[ACTIV E_FLAG] | |||||
| 973 | ,[HEALT H_FACTOR_T EXT] | |||||
| 974 | ,[COMME NTS] | |||||
| 975 | ,[CREAT EDBY] | |||||
| 976 | ,[UPDAT EDBY] | |||||
| 977 | ,[CREAT ED] | |||||
| 978 | ,[UPDAT ED]) | |||||
| 979 | SELE CT visit.R EGISTRANT_ VISIT_ID | |||||
| 980 | ,hf.[STD _HEALTH_FA CTOR_ID] | |||||
| 981 | ,1 | |||||
| 982 | ,hf.[HEA LTH_FACTOR _TEXT] | |||||
| 983 | ,hf.[COM MENTS] | |||||
| 984 | ,@ProcNa me | |||||
| 985 | ,@ProcNa me | |||||
| 986 | ,@Now | |||||
| 987 | ,@Now | |||||
| 988 | FROM [ AHOBPR].[S TAGED_HEAL TH_FACTOR] hf -- 295 | |||||
| 989 | JOIN A HOBPR.STAG ED_VISIT s tage ON st age.VisitS ID = hf.CD W_VISIT_SI D | |||||
| 990 | JOIN A HOBPR.REGI STRANT_VIS IT visit O N visit.VI STA_Encoun terID = st age.VISTA_ EncounterI D | |||||
| 991 | ||||||
| 992 | END; | |||||
| 993 | -- EXECUTE [AHOBPR]. [SP_Update FromCDW]; | |||||
| 994 | ||||||
| 995 | ||||||
| 996 | ||||||
| 997 | ||||||
| 998 | ||||||
| 999 | INSERT INT O [dbo].[D atabaseCha ngeLog] | |||||
| 1000 | ([MajorRe leaseNumbe r] | |||||
| 1001 | ,[MinorRe leaseNumbe r] | |||||
| 1002 | ,[PointRe leaseNumbe r] | |||||
| 1003 | ,[Hotfix] | |||||
| 1004 | ,[ScriptN ame] | |||||
| 1005 | ,[ScriptD escription ] | |||||
| 1006 | ,[TargetR egistry] | |||||
| 1007 | ,[DateApp lied]) | |||||
| 1008 | VALUE S | |||||
| 1009 | ('$(Major ReleaseNum ber)' | |||||
| 1010 | ,'$(Minor ReleaseNum ber)' | |||||
| 1011 | ,'$(Point ReleaseNum ber)' | |||||
| 1012 | ,0 | |||||
| 1013 | ,'Registr y.AHOBPR.D atabase.Ro llback.sql ' | |||||
| 1014 | ,'Regis try.AHOBPR .Database. Rollback.s ql Script' | |||||
| 1015 | ,'AHOBPR' | |||||
| 1016 | ,GETDATE( )) | |||||
| 1017 | ||||||
| 1018 | ||||||
| 1019 | PRINT ''; | |||||
| 1020 | PRINT 'Reg istry.AHOB PR.Databas e.Rollback .sql Scrip t Complete .'; | |||||
| 1021 | PRINT ''; | |||||
| 1022 | PRINT 'Com pleted ' + CAST(GETD ATE() AS v archar(20) ) + '.'; | |||||
| 1023 | ||||||
| 1024 | ---------- ---------- ---------- --- | |||||
| 1025 | -- END OF GENERATED DEPLOYMENT -- | |||||
| 1026 | ---------- ---------- ---------- --- |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.