Produced by Araxis Merge on 10/26/2017 10:43:32 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 | OSCIF_BMS_v2_iter 2_September_2017.zip\BMS_Cand\BMS_Source_C72993\C72993-Sources.zip\C72993\Source\Sources\Database\CreationScripts\BMS_HISTORY\4.StoredProcedures | dbo.usp_Rpt_StaffAssignment.StoredProcedure.sql | Fri Nov 22 17:02:56 2013 UTC |
| 2 | OSCIF_BMS_v2_iter 2_September_2017.zip\BMS_Cand\BMS_Source_C72993\C72993-Sources.zip\C72993\Source\Sources\Database\CreationScripts\BMS_HISTORY\4.StoredProcedures | dbo.usp_Rpt_StaffAssignment.StoredProcedure.sql | Wed Oct 25 23:15:57 2017 UTC |
| Description | Between Files 1 and 2 |
|
|---|---|---|
| Text Blocks | Lines | |
| Unchanged | 8 | 238 |
| Changed | 7 | 20 |
| 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 | IF EXISTS (SELECT * FROM sys. objects WH ERE object _id = OBJE CT_ID(N'[d bo].[usp_R pt_StaffAs signment]' ) AND type in (N'P', N'PC')) | |
| 2 | DROP PROCE DURE [dbo] .[usp_Rpt_ StaffAssig nment] | |
| 3 | GO | |
| 4 | ||
| 5 | SET ANSI_N ULLS ON | |
| 6 | GO | |
| 7 | SET QUOTED _IDENTIFIE R ON | |
| 8 | GO | |
| 9 | ||
| 10 | CREATE PRO CEDURE [db o].[usp_Rp t_StaffAss ignment] | |
| 11 | @D ATE_FROM D ATETIME, | |
| 12 | @D ATE_TO DAT ETIME, | |
| 13 | @T IME_ZONE_M INUTES_OFF SET INT, | |
| 14 | @U serID N DNS AR(500), | |
| 15 | @F ACILITIES_ IDS N DNS AR(MAX) = '', | |
| 16 | @R EPORT_TYPE N DNS AR(50) | |
| 17 | AS | |
| 18 | BEGIN | |
| 19 | ||
| 20 | SE T NOCOUNT ON; | |
| 21 | ||
| 22 | IF (@REPORT_ TYPE = 'ST AFF') | |
| 23 | BE GIN | |
| 24 | ||
| 25 | IF @ DATE_FROM > @DATE_TO | |
| 26 | RAISER ROR ('The start date is greate r than the end date. Please co rrect.', 1 8, 13) | |
| 27 | ELSE | |
| 28 | BEGI N | |
| 29 | set @D ATE_FROM = DATEADD ( minute, -@ TIME_ZONE_ MINUTES_OF FSET, @DAT E_FROM ); | |
| 30 | set @D ATE_TO = D ATEADD (mi nute, -@TI ME_ZONE_MI NUTES_OFFS ET, @DATE_ TO ); | |
| 31 | ||
| 32 | --GET INFORMATIO N ABOUT SE LECTED FAC ILITIES | |
| 33 | CREATE TAB LE #TBL_FA CILITY (SO URCE_ID N DNS AR(250) PR IMARY KEY, TIMEZONE_O FFSET INT) | |
| 34 | INSERT INTO #TBL _FACILITY( SOURCE_ID, TIMEZONE_ OFFSET) | |
| 35 | SELECT DIS TINCT CONV ERT(N DNS AR(250), F ACILITY.VA LUE), [dbo ].[ufn_Get OffsetByFa cilityUID] (VALUE) | |
| 36 | FROM d bo.ufn_Spl it(@FACILI TIES_IDS, ',') AS FA CILITY | |
| 37 | ||
| 38 | CREATE TABLE #BE D_STAFF | |
| 39 | ( | |
| 40 | BED_UID UNIQUEIDEN TIFIER NUL L, | |
| 41 | PATIENT_ UID UNIQUE IDENTIFIER NULL, | |
| 42 | STAFF N DNS AR(250) NU LL, | |
| 43 | [DATE] D ATETIME NU LL, | |
| 44 | CREATED_BY N DNS AR(50), | |
| 45 | EVENT_TYPE N DNS AR(100) | |
| 46 | ) | |
| 47 | INSER T INTO #BE D_STAFF(BE D_UID, PAT IENT_UID, STAFF, [DA TE], CREAT ED_BY, EVE NT_TYPE) | |
| 48 | SELEC T STAFF.BE D_UID, STA FF.PATIENT _UID, STAF F.STAFF, | |
| 49 | DATEADD (m inute, | |
| 50 | ISNULL(FAC ILITY.TIME ZONE_OFFSE T * 60, | |
| 51 | @TIM E_ZONE_MIN UTES_OFFSE T), STAFF. [DATE]), | |
| 52 | CASE WHEN STAFF.CREA TED_BY IS NULL THEN 'SYSTEM' | |
| 53 | E LSE [DBO]. [UFN_GETUS ERNAMEBYSI D](STAFF.C REATED_BY) | |
| 54 | END , | |
| 55 | CASE STAFF .TRANSACTI ON_TYPE_CO DE WHEN 'I ' THEN 'In serted' | |
| 56 | WHEN 'U' T HEN 'Updat ed' WHEN ' D' THEN 'D eleted' EN D | |
| 57 | FROM dbo.BED_ST AFF_H AS S TAFF | |
| 58 | INNER JOIN #TBL _FACILITY AS FACILIT Y ON FACIL ITY.SOURCE _ID = STAF F.FACILITY _UID | |
| 59 | WHERE STAFF.[DA TE] >= @DA TE_FROM an d STAFF.[D ATE] <= @D ATE_TO | |
| 60 | ||
| 61 | DROP TABLE #TBL _FACILITY | |
| 62 | ||
| 63 | CREATE TAB LE #PATIEN TS (PATIEN T_UID UNIQ UEIDENTIFI ER PRIMARY KEY, PATI ENT_NAME N DNS AR(250)) | |
| 64 | INSERT INTO #PAT IENTS(PATI ENT_UID, P ATIENT_NAM E) | |
| 65 | SELECT DISTINCT PAC.PATIEN T_UID, SUB STRING(PER SON.[NAME_ FAMILY], 1 , 1) + SUB STRING(s.[ IDENTIFIER _EXTENSION ], 7, 5) | |
| 66 | FROM # BED_STAFF AS PAC | |
| 67 | INNER JOIN $(var BMS_EIS).d bo.ENTITY AS ENTITY ON ENTITY. IDENTIFIER = PAC.PAT IENT_UID | |
| 68 | INNER JOIN $(var BMS_EIS).d bo.EHL7_PE RSON AS PE RSON ON PE RSON.PFK_P ERSON = EN TITY.PK_EN TITY | |
| 69 | INNER JOIN $(var BMS_EIS).d bo.EHL7_UI D AS S ON S.FK_ENTIT Y = PERSON .PFK_PERSO N AND S.ID ENTIFIER_R OOT = 'SSN ' | |
| 70 | ||
| 71 | CREATE TAB LE #BEDS ( BED_UID UN IQUEIDENTI FIER, BED_ NAME N DNS AR(250), D IVISION_NA ME N DNS AR(MAX)) | |
| 72 | INSERT INTO #BED S(BED_UID, BED_NAME, DIVISION_ NAME) | |
| 73 | SELECT DISTINCT E.IDENTIF IER, BED.N AME, WARD_ GROUP.NAME | |
| 74 | FROM $ (varBMS_EI S).[dbo].[ EHL7_PLACE ] AS BED | |
| 75 | INNER JOIN $(var BMS_EIS).[ dbo].[ENTI TY] AS E O N E.PK_ENT ITY = BED. PFK_PLACE | |
| 76 | INNER JOIN #BED_ STAFF AS B ED_STAFF O N BED_STAF F.BED_UID = E.IDENTI FIER | |
| 77 | INNER JOIN $(var BMS_EIS).[ dbo].[EHL7 _ROLE] AS R_BED ON R _BED.FK_PL AYER_ENTIT Y = BED.PF K_PLACE AN D R_BED.[C LASS_CODE] = 'MNT' | |
| 78 | INNER JOIN $(var BMS_EIS).[ dbo].[EHL7 _ORGANIZAT ION]AS WAR D_GROUP ON WARD_GROU P.PFK_ORGA NIZATION = R_BED.FK_ SCOPER_ENT ITY | |
| 79 | WHERE BED.CODE_D ISPLAY_NAM E ='BED' A ND E.IDENT IFIER IN ( SELECT DIS TINCT BED_ UID FROM # BED_STAFF AS BED) | |
| 80 | ||
| 81 | ;WITH SET_BED_AS SOCIATION_ TO_MULTIPL E_DIVISION AS | |
| 82 | ( | |
| 83 | SELECT A.B ED_UID, ST UFF((SELEC T DISTINCT ',' + DI VISION_NAM E | |
| 84 | F ROM #BEDS | |
| 85 | W HERE BED_U ID = A.BED _UID | |
| 86 | F OR XML PAT H('')), 1, 1, '') AS DIVISIONS | |
| 87 | ||
| 88 | FROM ( | |
| 89 | SELECT BED _UID | |
| 90 | FROM #BEDS | |
| 91 | GROUP BY B ED_UID | |
| 92 | HAVING COU NT(BED_UID ) > 1 ) A | |
| 93 | ) | |
| 94 | ||
| 95 | UPDATE B | |
| 96 | SET B.DI VISION_NAM E = G_BED_ WARD.DIVIS IONS | |
| 97 | FROM # BEDS B | |
| 98 | INNER JOIN SET_B ED_ASSOCIA TION_TO_MU LTIPLE_DIV ISION AS G _BED_WARD ON G_BED_W ARD.BED_UI D = B.BED_ UID | |
| 99 | ||
| 100 | ;WITH BED_ASSOCI ATION_TO_M ULTIPLE_DI VISION AS | |
| 101 | ( | |
| 102 | SELECT B ED_UID, BE D_NAME, DI VISION_NAM E | |
| 103 | FROM #BE DS | |
| 104 | GROUP BY BED_UID, BED_NAME, DIVISION_N AME | |
| 105 | ) | |
| 106 | ||
| 107 | SELECT CAST(BED_ STAFF.BED_ UID as nva rchar(50)) as BED_UI D, | |
| 108 | BED.DI VISION_NAM E AS DIVIS ION, | |
| 109 | BED.BE D_NAME AS BED, | |
| 110 | BED_ST AFF.STAFF, | |
| 111 | PATIEN T.PATIENT_ NAME AS PA TIENT, | |
| 112 | BED_ST AFF.CREATE D_BY, | |
| 113 | BED_ST AFF.[DATE] as [DATE] , | |
| 114 | BED_ST AFF.EVENT_ TYPE AS EV ENT_TYPE | |
| 115 | FROM # BED_STAFF AS BED_STA FF | |
| 116 | LEFT J OIN #PATIE NTS AS PAT IENT ON PA TIENT.PATI ENT_UID = BED_STAFF. PATIENT_UI D | |
| 117 | LEFT J OIN BED_AS SOCIATION_ TO_MULTIPL E_DIVISION AS BED ON BED.BED_U ID= BED_ST AFF.BED_UI D | |
| 118 | ORDER BY BED.DIV ISION_NAME , BED.BED_ NAME, BED_ STAFF.[DAT E] | |
| 119 | DROP T ABLE #BEDS | |
| 120 | DROP T ABLE #PATI ENTS | |
| 121 | DROP T ABLE #BED_ STAFF | |
| 122 | ||
| 123 | END | |
| 124 | ||
| 125 | EN D | |
| 126 | ||
| 127 | END | |
| 128 | ||
| 129 | GO |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.