| [613] | 1 | PSBOHDR ;BIRMINGHAM/EFC-REPORT HEADERS ;Mar 2004 | 
|---|
|  | 2 | ;;3.0;BAR CODE MED ADMIN;**5,13**;Mar 2004 | 
|---|
|  | 3 | ; | 
|---|
|  | 4 | ; Reference/IA | 
|---|
|  | 5 | ; EN6^GMRVUTL/1120 | 
|---|
|  | 6 | ; WARD^NURSUT5/3052 | 
|---|
|  | 7 | ; IN5^VADPT/10061 | 
|---|
|  | 8 | ; DEM^VADPT/10061 | 
|---|
|  | 9 | ; | 
|---|
|  | 10 | PT(DFN,PSBHDR,PSBCONT,PSBDT) ; | 
|---|
|  | 11 | ; DFN:     Patient File IEN | 
|---|
|  | 12 | ; PSBCONT: True if this is a continuation page | 
|---|
|  | 13 | ; PSBDT:   Date of Pt Information (Default to DT) | 
|---|
|  | 14 | W:$Y>1 @IOF | 
|---|
|  | 15 | W:$X>1 ! | 
|---|
|  | 16 | S:'$G(PSBDT) PSBDT=DT | 
|---|
|  | 17 | ; BUILD PSBHDR WITH ALL HEADER STUFF | 
|---|
|  | 18 | D:'$D(PSBHDR("NAME")) | 
|---|
|  | 19 | .S VAIP("D")="LAST" | 
|---|
|  | 20 | .D DEM^VADPT,IN5^VADPT | 
|---|
|  | 21 | .S PSBHDR("NAME")=VADM(1) | 
|---|
|  | 22 | .S PSBHDR("SSN")=$P(VADM(2),U,2) | 
|---|
|  | 23 | .S PSBHDR("DOB")=$P(VADM(3),U,2) | 
|---|
|  | 24 | .S PSBHDR("AGE")=VADM(4) | 
|---|
|  | 25 | .S PSBHDR("SEX")=$P(VADM(5),U,2) | 
|---|
|  | 26 | .S PSBHDR("MVMTTYPE")=$P(VAIP(2),U,2) | 
|---|
|  | 27 | .S PSBHDR("MVMTLAST")=$P(VAIP(3),U,2) | 
|---|
|  | 28 | .S PSBHDR("WARD")=$P(VAIP(5),U,2) | 
|---|
|  | 29 | .S PSBHDR("ROOM")=$P(VAIP(6),U,2) | 
|---|
|  | 30 | .S PSBHDR("DX")=VAIP(9) | 
|---|
|  | 31 | .K VAIP,VADM | 
|---|
|  | 32 | .S GMRVSTR="HT" D EN6^GMRVUTL | 
|---|
|  | 33 | .S X=+$P(X,U,8) S:X X=X*2.54\1 S PSBHDR("HEIGHT")=$S(X:X_"cm",1:"*") | 
|---|
|  | 34 | .S GMRVSTR="WT" D EN6^GMRVUTL | 
|---|
|  | 35 | .S X=+$P(X,U,8) S:X X=X*.45\1 S PSBHDR("WEIGHT")=$S(X:X_"kg",1:"*") | 
|---|
|  | 36 | .N PSBADRX D ALLR^PSBALL(.PSBADRX,DFN) S X=0,Y="" | 
|---|
|  | 37 | .F  S X=$O(PSBADRX(X)) Q:'X  D | 
|---|
|  | 38 | ..Q:$P(PSBADRX(X),U,1)'="ADR"  S Z=$P(PSBADRX(X),U,2) Q:Z="" | 
|---|
|  | 39 | ..I $L(Y_Z)>(IOM-22) S PSBHDR("REAC",$O(PSBHDR("REAC",""),-1)+1)=Y,Y="" | 
|---|
|  | 40 | ..S Y=Y_$S(Y]"":", ",1:"")_$P(PSBADRX(X),U,2) | 
|---|
|  | 41 | .S:Y]"" PSBHDR("REAC",$O(PSBHDR("REAC",""),-1)+1)=Y | 
|---|
|  | 42 | .I '$D(PSBHDR("REAC")) S PSBHDR("REAC",1)="No ADRs on file." | 
|---|
|  | 43 | .D PSBALG | 
|---|
|  | 44 | .K GMRAL,GMRVSTR,GMRA,PSBARX | 
|---|
|  | 45 | .D NOW^%DTC S Y=+$E(%,1,12) D D^DIQ S PSBHDR("DATE")="Run Date: "_Y | 
|---|
|  | 46 | .S PSBHDR("PAGE")=0 | 
|---|
|  | 47 | W $C(13),$TR($J("",IOM)," ","=") | 
|---|
|  | 48 | W !,$G(PSBHDR(0)) | 
|---|
|  | 49 | W !,$G(PSBHDR(1)),?(IOM-$L(PSBHDR("DATE"))),PSBHDR("DATE") | 
|---|
|  | 50 | S PSBHDR("PAGE")=PSBHDR("PAGE")+1 | 
|---|
|  | 51 | W !,$G(PSBHDR(2)),?(IOM-10),$J("Page: "_PSBHDR("PAGE"),10) | 
|---|
|  | 52 | F X=3:1 Q:'$D(PSBHDR(X))  W !,PSBHDR(X)  ; More Lines If Needed | 
|---|
|  | 53 | I $G(PSBCONT) W !?(IOM-35\2),"*** CONTINUED FROM PREVIOUS PAGE ***" | 
|---|
|  | 54 | W !!,"Patient:",?10,PSBHDR("NAME") | 
|---|
|  | 55 | W ?40,"SSN:       ",PSBHDR("SSN") | 
|---|
|  | 56 | W ?75,"DOB:",?82,PSBHDR("DOB")," (",PSBHDR("AGE"),")" | 
|---|
|  | 57 | D:'$G(PSBCONT) | 
|---|
|  | 58 | .W !,"Sex: ",?10,PSBHDR("SEX"),?40,"Ht/Wt:     ",PSBHDR("HEIGHT"),"/",PSBHDR("WEIGHT"),?75,"Ward: ",?82,PSBHDR("WARD")," Rm ",PSBHDR("ROOM") | 
|---|
|  | 59 | .W !,"Dx:",?10,PSBHDR("DX"),?40,"Last Mvmt: ",PSBHDR("MVMTLAST"),?75,"Type:  ",PSBHDR("MVMTTYPE") | 
|---|
|  | 60 | .; Reactions/Allergies | 
|---|
|  | 61 | .W !!,"ADRs:" | 
|---|
|  | 62 | .F X=0:0 S X=$O(PSBHDR("REAC",X)) Q:'X  W:$X>12 ! W ?12,PSBHDR("REAC",X) | 
|---|
|  | 63 | .W !!,"Allergies:" | 
|---|
|  | 64 | .F X=0:0 S X=$O(PSBHDR("ALERGY",X)) Q:'X  W:$X>12 ! W ?12,PSBHDR("ALERGY",X) | 
|---|
|  | 65 | .; Local Mods Allowed Here and showup only on First Page | 
|---|
|  | 66 | .; Immunizations | 
|---|
|  | 67 | .;D SHOT80^ASFSHOTF | 
|---|
|  | 68 | W !,$TR($J("",IOM)," ","=") | 
|---|
|  | 69 | Q | 
|---|
|  | 70 | ; | 
|---|
|  | 71 | WARD(PSBWP,PSBHDR,PSBCONT,PSBDT) ; | 
|---|
|  | 72 | ; WARD:    Nurse Location File IEN | 
|---|
|  | 73 | ; PSBCONT: True if this is a continuation page | 
|---|
|  | 74 | ; PSBDT:   Date of Pt Information (Default to DT) | 
|---|
|  | 75 | N PSBWRDA | 
|---|
|  | 76 | S:'$G(PSBDT) PSBDT=DT | 
|---|
|  | 77 | I '$D(PSBHDR("DATE")) D NOW^%DTC S Y=+$E(%,1,12) D D^DIQ S PSBHDR("DATE")="Run Date: "_Y | 
|---|
|  | 78 | S:'$D(PSBHDR("PAGE")) PSBHDR("PAGE")=0 | 
|---|
|  | 79 | W:$Y>1 @IOF | 
|---|
|  | 80 | W:$X>0 ! | 
|---|
|  | 81 | W $TR($J("",IOM)," ","="),!,$G(PSBHDR(0)),!,$G(PSBHDR(1)),?(IOM-$L(PSBHDR("DATE"))),PSBHDR("DATE") | 
|---|
|  | 82 | S PSBHDR("PAGE")=PSBHDR("PAGE")+1 | 
|---|
|  | 83 | W !,$G(PSBHDR(2)),?(IOM-10),$J("Page: "_PSBHDR("PAGE"),10) | 
|---|
|  | 84 | F X=3:1 Q:'$D(PSBHDR(X))  W !,PSBHDR(X)  ; More Lines If Needed | 
|---|
|  | 85 | I $G(PSBCONT) W !?(IOM-35\2),"*** CONTINUED FROM PREVIOUS PAGE ***" | 
|---|
|  | 86 | D WARD^NURSUT5("L^"_PSBWP,.PSBWRDA) | 
|---|
|  | 87 | W !!,"Ward Location: "_$P(PSBWRDA(PSBWP,.01),U,2) | 
|---|
|  | 88 | S X="Division: "_$P(PSBWRDA(PSBWP,.02),U,2) | 
|---|
|  | 89 | W ?(IOM-$L(X)),X,!,$TR($J("",IOM)," ","=") | 
|---|
|  | 90 | Q | 
|---|
|  | 91 | ; | 
|---|
|  | 92 | PSBALG   ; | 
|---|
|  | 93 | S YA="" | 
|---|
|  | 94 | K PSBAL,GMRALA | 
|---|
|  | 95 | S PSBLIST="" | 
|---|
|  | 96 | D ALLR^PSBALL(.GMRALA,DFN) | 
|---|
|  | 97 | S X="" F  S X=$O(GMRALA(X)) Q:X=""  D | 
|---|
|  | 98 | .I $P(GMRALA(X),U,1)["ALL" D | 
|---|
|  | 99 | ..S PSBAL($P(GMRALA(X),U,2))="" | 
|---|
|  | 100 | S XAB="" F  S XAB=$O(PSBAL(XAB)) Q:XAB=""  D | 
|---|
|  | 101 | .S Z=XAB | 
|---|
|  | 102 | .I $L(YA_Z)>(IOM-22) S PSBHDR("ALERGY",$O(PSBHDR("ALERGY",""),-1)+1)=YA,YA="" | 
|---|
|  | 103 | .S YA=YA_$S(YA]"":", ",1:"")_XAB | 
|---|
|  | 104 | S:YA]"" PSBHDR("ALERGY",$O(PSBHDR("ALERGY",""),-1)+1)=YA | 
|---|
|  | 105 | I '$D(PSBHDR("ALERGY")) S PSBHDR("ALERGY",1)="No Allergies on file." | 
|---|
|  | 106 | Q | 
|---|
|  | 107 | ; | 
|---|
|  | 108 | PTFTR() ; [Extrinsic] Patient Page footer | 
|---|
|  | 109 | ; | 
|---|
|  | 110 | I (IOSL<100) F  Q:$Y>(IOSL-6)  W ! | 
|---|
|  | 111 | W !,$TR($J("",IOM)," ","=") | 
|---|
|  | 112 | S X="Ward: "_PSBHDR("WARD")_"  Room-Bed: "_PSBHDR("ROOM") | 
|---|
|  | 113 | W !,PSBHDR("NAME"),?(IOM-11\2),PSBHDR("SSN"),?(IOM-$L(X)),X | 
|---|
|  | 114 | I $G(PSBUNK) S X="Note:  ??  Indicates an administration with an *UNKNOWN* Action Status" W !!,X | 
|---|
|  | 115 | Q "" | 
|---|
|  | 116 | ; | 
|---|