Produced by Araxis Merge on 8/31/2018 11:26:37 AM Central 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 | BMS_Source.zip\Source\Sources\Database\BMSv2Updates\2.2.14.1 | usp_Rpt_VISNDiversion_ByDate.sql | Thu Aug 30 15:00:04 2018 UTC |
| 2 | BMS_Source.zip\Source\Sources\Database\BMSv2Updates\2.2.14.1 | usp_Rpt_VISNDiversion_ByDate.sql | Thu Aug 30 19:19:40 2018 UTC |
| Description | Between Files 1 and 2 |
|
|---|---|---|
| Text Blocks | Lines | |
| Unchanged | 2 | 380 |
| Changed | 1 | 2 |
| Inserted | 0 | 0 |
| 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 | USE [BMS_D W] | |
| 2 | GO | |
| 3 | /****** Ob ject: Sto redProcedu re [dbo].[ usp_Rpt_VI SNDiversio n_ByDate] Script Date: 6/28 /2016 4:05 :50 PM *** ***/ | |
| 4 | SET ANSI_N ULLS ON | |
| 5 | GO | |
| 6 | SET QUOTED _IDENTIFIE R ON | |
| 7 | GO | |
| 8 | ||
| 9 | /* | |
| 10 | exec [usp_ Rpt_VISNDi version_By Date] N'
|
|
| 11 | N' 27127BEC-7 FFC-4AE3-A B51-5FC12E 94978E,-24 0,EMPTY_CO DE;8988050 7-FF65-457 0-A1C4-A68 25A3429B5' , | |
| 12 | -1 , -1,'All Wards', -1 , '2014-11 -05 05:52: 00.000','2 016-06-30 13:42:00.0 00',0 | |
| 13 | ||
| 14 | NOTE: WHEN FINISHED, UNCOMMENT THE DELET E FROM @FA CILITY LIN E 124 | |
| 15 | */ | |
| 16 | ||
| 17 | create PRO CEDURE [db o].[usp_Rp t_VISNDive rsion_ByDa te] | |
| 18 | @U serID NVAR CHAR(500)= NULL, | |
| 19 | @F ACILITIES NVARCHAR(M AX), | |
| 20 | @D iversion_T ype Int, | |
| 21 | @D IVISION_ID INT = NUL L, | |
| 22 | @D IVISION_NA ME NVARCHA R(250), | |
| 23 | @S PECIALTY_I D Int, | |
| 24 | @S TART_DATE DATETIME, | |
| 25 | @E ND_DATE DA TETIME, | |
| 26 | @T IME_ZONE_M INUTES_OFF SET INT | |
| 27 | AS | |
| 28 | ||
| 29 | IF @Divers ion_Type = -1 | |
| 30 | Se t @Diversi on_Type = Null | |
| 31 | IF @SPECIA LTY_ID = - 1 | |
| 32 | Se t @SPECIAL TY_ID = Nu ll | |
| 33 | ||
| 34 | BEGIN | |
| 35 | IF @START_DA TE > @END_ DATE | |
| 36 | RAIS ERROR ('Th e start da te is grea ter than t he end dat e. Please correct.', 18, 13) | |
| 37 | EL SE | |
| 38 | BE GIN | |
| 39 | se t @START_D ATE = DATE ADD (minut e , -@TIME _ZONE_MINU TES_OFFSET , @START_ DATE ); | |
| 40 | se t @END_DAT E = DATEAD D (minute , -@TIME_Z ONE_MINUTE S_OFFSET , @END_DATE ); | |
| 41 | EN D | |
| 42 | -- SPLIT FACI LITY VALUE S | |
| 43 | CR EATE TABLE #SPLIT_FA CILITY_MED ICAL_CENTE R | |
| 44 | (I D INT IDEN TITY(1,1) PRIMARY KE Y, NAME NV ARCHAR(250 )) | |
| 45 | ||
| 46 | IN SERT INTO #SPLIT_FAC ILITY_MEDI CAL_CENTER (NAME) | |
| 47 | SE LECT SPLIT _FACILITIE S.VALUE FR OM dbo.ufn _Split(@FA CILITIES, ';') AS SP LIT_FACILI TIES | |
| 48 | ||
| 49 | DE CLARE @FAC ILITY TABL E(FACILITY _ID INT, F ACILITY_NA ME NVARCHA R(250), ME DICAL_CENT ER_CODE VA RCHAR(100) ) | |
| 50 | ||
| 51 | DE CLARE @FAC ILITY_AND_ MEDICAL_CE NTER_CODE NVARCHAR(2 50) | |
| 52 | DE CLARE FACI LITY_CURSO R CURSOR F OR | |
| 53 | SELE CT NAME FR OM #SPLIT_ FACILITY_M EDICAL_CEN TER | |
| 54 | ||
| 55 | OPEN FACILITY_ CURSOR | |
| 56 | ||
| 57 | FETC H NEXT FRO M FACILITY _CURSOR | |
| 58 | INTO @FACILITY _AND_MEDIC AL_CENTER_ CODE | |
| 59 | ||
| 60 | WHIL E @@FETCH_ STATUS = 0 | |
| 61 | BEGIN | |
| 62 | DECLARE @FACILITY_ AND_MEDICA L_CENTER T ABLE(ROWNU MBER INT P RIMARY KEY , NAME NVA RCHAR(250) ) | |
| 63 | DECLARE @FACILITY_ EXTENSION NVARCHAR(5 0), @OFFSE T INT, @ME DICAL_CENT ER_CODE VA RCHAR(100) , @FACILIT Y_ID INT, @FACILITY_ NAME NVARC HAR(250) | |
| 64 | ||
| 65 | INSERT I NTO @FACIL ITY_AND_ME DICAL_CENT ER(ROWNUMB ER, NAME) | |
| 66 | SELECT R OW_NUMBER( ) OVER (OR DER BY ID ASC) AS RO WNUMBER, N AME | |
| 67 | FROM (SE LECT SPLIT _FACILITIE S.ID AS ID , SPLIT_FA CILITIES.V ALUE AS NA ME FROM db o.ufn_Spli t(@FACILIT Y_AND_MEDI CAL_CENTER _CODE, ',' ) AS SPLIT _FACILITIE S ) AS ROW _FAC_MED_C ODE | |
| 68 | ||
| 69 | SELECT @ FACILITY_E XTENSION = NAME FROM @FACILITY _AND_MEDIC AL_CENTER WHERE ROWN UMBER = 1 | |
| 70 | SELECT @ OFFSET = c ast(NAME a s int) FRO M @FACILIT Y_AND_MEDI CAL_CENTER WHERE ROW NUMBER = 2 | |
| 71 | SELECT @ MEDICAL_CE NTER_CODE = NAME FRO M @FACILIT Y_AND_MEDI CAL_CENTER WHERE ROW NUMBER = 3 | |
| 72 | ||
| 73 | IF @MEDI CAL_CENTER _CODE = 'E MPTY_CODE' | |
| 74 | SET @MEDIC AL_CENTER_ CODE = NUL L | |
| 75 | ||
| 76 | SELECT @ FACILITY_I D = ID, @F ACILITY_NA ME = NAME FROM DIM_O RGANIZATIO N | |
| 77 | WHERE ID = dbo.ufn _GetFacili tyIdByIden tifier(@FA CILITY_EXT ENSION) | |
| 78 | ||
| 79 | INSERT I NTO @FACIL ITY(FACILI TY_ID, FAC ILITY_NAME , MEDICAL_ CENTER_COD E) | |
| 80 | SELECT Distinct @ FACILITY_I D, @FACILI TY_NAME, @ MEDICAL_CE NTER_CODE | |
| 81 | FROM dbo .DIM_WARD AS WARD | |
| 82 | INNER JO IN dbo.ufn _GetWardsB yFacilityI d(@FACILIT Y_ID) AS F AC_WARD ON FAC_WARD. ID = WARD. ID | |
| 83 | ||
| 84 | DELETE F ROM @FACIL ITY_AND_ME DICAL_CENT ER | |
| 85 | ||
| 86 | FE TCH NEXT F ROM FACILI TY_CURSOR | |
| 87 | INTO @FA CILITY_AND _MEDICAL_C ENTER_CODE | |
| 88 | END | |
| 89 | CLOS E FACILITY _CURSOR; | |
| 90 | DEAL LOCATE FAC ILITY_CURS OR; | |
| 91 | ||
| 92 | -- create pe rmission t able | |
| 93 | CR EATE TABLE #PERMISSI ON | |
| 94 | ( | |
| 95 | D IM_ORGANIZ ATION_ID I NT, | |
| 96 | D IM_WARD_ID INT | |
| 97 | ) | |
| 98 | --inse rt permiss ion for th e user | |
| 99 | INSERT INTO #PER MISSION | |
| 100 | SELE CT * FROM dbo.ufn_Ge tPermissio nByUserNam e(@UserID) | |
| 101 | CREATE NONCLUSTE RED INDEX [DIM_ORGAN IZATION_ID ] ON #PERM ISSION ([D IM_ORGANIZ ATION_ID] ASC) | |
| 102 | WITH ( | |
| 103 | PAD_INDEX = OFF, | |
| 104 | STATISTIC S_NORECOMP UTE = OFF , | |
| 105 | SORT_IN_T EMPDB = OF F, | |
| 106 | IGNORE_DU P_KEY = OF F, | |
| 107 | DROP_EXIS TING = OFF , | |
| 108 | ONLINE = OFF, | |
| 109 | ALLOW_ROW _LOCKS = ON, | |
| 110 | ALLOW_PAG E_LOCKS = ON) | |
| 111 | CREATE NONCLUSTE RED INDEX DIM_WARD_I D ON #PERM ISSION (DI M_WARD_ID ASC) | |
| 112 | WITH ( | |
| 113 | PAD_INDEX = OFF, | |
| 114 | STATISTIC S_NORECOMP UTE = OFF , | |
| 115 | SORT_IN_T EMPDB = OF F, | |
| 116 | IGNORE_DU P_KEY = OF F, | |
| 117 | DROP_EXIS TING = OFF , | |
| 118 | ONLINE = OFF, | |
| 119 | ALLOW_ROW _LOCKS = ON, | |
| 120 | ALLOW_PAG E_LOCKS = ON) ; | |
| 121 | ||
| 122 | ||
| 123 | ||
| 124 | -- DELETE FRO M @FACILIT Y WHERE FA CILITY_ID NOT IN (SE LECT DIM_O RGANIZATIO N_ID FROM #PERMISSIO N) | |
| 125 | ||
| 126 | -- check if t he user ha s permissi on for the facility | |
| 127 | IF EXISTS(SE LECT 1 FRO M @FACILIT Y) | |
| 128 | BEGI N | |
| 129 | ||
| 130 | CREATE TABLE #DI VERSION ( | |
| 131 | ID Int, | |
| 132 | FACILI TY_UID UniqueIden tifier, | |
| 133 | FACILI TY_NAME NVar char(250), | |
| 134 | WARD_N AME NV archar(250 ), --Need to tie in | |
| 135 | SPECIA LTY_NAME NVarchar(2 50), --Ne ed to tie in | |
| 136 | VISTA_ SITE_UID UniqueIden tifier, | |
| 137 | ACTIVE BI T, | |
| 138 | START_ DATE DA TETIME, | |
| 139 | END_DA TE DA TETIME, | |
| 140 | LOCATI ON_ID IN T, | |
| 141 | LOCATI ON_TYPE nvARCHAR(2 50), | |
| 142 | COMMEN TS NV ARCHAR(MAX ), | |
| 143 | SECOND S Varchar(25 0), | |
| 144 | DURATI ON Varchar(25 0) | |
| 145 | ) | |
| 146 | ||
| 147 | INSERT INTO #DIV ERSION | |
| 148 | SELECT | |
| 149 | D.ID, | |
| 150 | D.FACI LITY_UID, | |
| 151 | DO.NAM E as FACIL ITY_NAME, | |
| 152 | 'Ward Name' AS W ARD_NAME, --Need to tie in | |
| 153 | 'Speci alty Name' AS SPECIA LTY_NAME, --Need to tie in | |
| 154 | D.VIST A_SITE_UID , | |
| 155 | D.ACTI VE, | |
| 156 | D.STAR T_DATE, | |
| 157 | D.END_ DATE, | |
| 158 | D.LOCA TION_ID, | |
| 159 | C.DISP LAY_NAME a s LOCATION _TYPE, | |
| 160 | D.COMM ENTS, | |
| 161 | DateDi ff(SECOND, D.START_DA TE,CURRENT _TIMESTAMP ) AS SECON DS, | |
| 162 | CONVER T(varchar( 6),DateDif f(Second,D .Start_Dat e,Current_ Timestamp) /3600) + ' :' | |
| 163 | + RIGHT( '0' + Conv ert(varcha r(2),(DATE DIFF(Secon d,D.Start_ Date,Curre nt_Timesta mp)%3600)/ 60),2) as DURATION --+ ' Minu tes,' | |
| 164 | --+ RIGH T('0' + Co nvert(varc har(2),DAT EDIFF(Seco nd,D.Start _Date,Curr ent_Timest amp) % 60) ,2) + ' Se conds' | |
| 165 | ||
| 166 | FROM b ms.dbo.DIV ERSION D | |
| 167 | INNER JOIN BMS_D W.dbo.DIM_ ORGANIZATI ON DO | |
| 168 | ON D.FAC ILITY_UID = DO.Sourc e_ID | |
| 169 | INNER JOIN @Faci lity F | |
| 170 | ON F.FACILIT Y_ID = DO. ID | |
| 171 | LEFT J OIN BMS.DB O.CONCEPT C | |
| 172 | ON C.ID = D.LOCATI ON_ID | |
| 173 | WHERE D.Active = 1 | |
| 174 | AND D.ST ART_DATE B ETWEEN @ST ART_DATE A ND DATEADD (ms, -3, @ END_DATE + 1) | |
| 175 | AND D.Lo cation_ID = ISNULL(@ Diversion_ Type, D.Lo cation_ID) | |
| 176 | --AND D. WARD_ID = ISNULL(@DI VISION_ID, D.Locatio n_ID) | |
| 177 | --AND D. SPECIALTY_ ID = ISNUL L(@SPECIAL TY_ID, D.L ocation_ID ) | |
| 178 | ||
| 179 | ||
| 180 | --Sele ct * from @Facility | |
| 181 | Select * from #D IVERSION O rder By ID asc | |
| 182 | ||
| 183 | ||
| 184 | DROP T ABLE #DIVE RSION | |
| 185 | END | |
| 186 | ||
| 187 | ||
| 188 | ||
| 189 | DR OP TABLE # SPLIT_FACI LITY_MEDIC AL_CENTER | |
| 190 | DR OP TABLE # PERMISSION | |
| 191 | END |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.