- BWLETPR ;IHS/ANMC/MWR - BW PRINT LETTERS. [ 06/06/99 8:10 AM ];15-Feb-2003 21:56;PLS
- ;;2.0;WOMEN'S HEALTH;**6,8**;MAY 16, 1996
- ;;* MICHAEL REMILLARD, DDS * ALASKA NATIVE MEDICAL CENTER *
- ;; CALLED BY OPTION: "BW PRINT INDIVIDUAL LETTERS" TO PRINT A
- ;; LETTER FOR A SINGLE INDIVIDUAL (AS OPPOSED TO ALL THOSE QUEUED).
- ;;IHS/CMI/LAB PATCHED AT LINE LABELS SELECT AND NONE. PATCH 6
- ;
- ;/IHS/ANMC/DLG 21JUN2002 I haven't found who/what sets IOF = null,
- ; but somehow it's happening and it's causing SYNTAX errors. I slapped bandaids here & there.
- D SETVARS^BWUTL5 S (BWPOP1,BWPOP)=0
- N BWDA,BWTITLE
- F S BWPOP=0 D Q:BWPOP1
- .D SELECT Q:BWPOP
- .D DEVICE Q:BWPOP
- .S BWCRT=$S($E(IOST)="C":1,1:0)
- .D PRINT
- D ^%ZISC
- ;
- EXIT ;EP
- D KILLALL^BWUTL8
- Q
- ;
- SELECT ;EP
- ;---> SELECT PATIENT, THEN SELECT NOTIFICATION.
- ;N DIC,Y ;IHS/CMI/LAB
- N BWNAM,DIC,X,Y ;IHS/CMI/LAB
- D TITLE^BWUTL5("PRINT INDIVIDUAL PATIENT LETTERS")
- D PATLKUP^BWUTL8(.Y)
- I Y<0 S (BWPOP,BWPOP1)=1 Q
- S BWDFN=+Y,BWNAM=$$NAME^BWUTL1(BWDFN)
- ;---> On some systems DIC lookup needs to be by name ;IHS/CMI/LAB
- ;---> rather than by DFN. ;IHS/CMI/LAB
- ;D DIC^BWFMAN(9002086.4,"EM",.Y,"","","",BWDFN,.BWPOP) ;IHS/CMI/LAB
- D DIC^BWFMAN(9002086.4,"EM",.Y,"","","",BWNAM,.BWPOP) ;IHS/CMI/LAB
- I $D(DUOUT)!($D(DTOUT)) S BWPOP=1 Q
- I Y<0 D NONE S BWPOP=1 Q
- S BWDA=+Y
- ;
- ;---> IF FACILITIES OF LETTER AND USER DON'T MATCH, QUIT.
- N BWFACIL S BWFACIL=$P(^BWNOT(BWDA,0),U,7)
- I ((BWFACIL'=DUZ(2))&(BWFACIL)) D TEXT1,DIRZ^BWUTL3 S BWPOP=1 Q
- ;
- S BWPURP=$P(^BWNOT(BWDA,0),U,4)
- S BWTYPE=$P(^BWNOT(BWDA,0),U,3)
- ;
- ;---> CHECK IF PURPOSE HAS BEEN ENTERED.
- I 'BWPURP D Q
- .W !!?5,"No Purpose has been entered for this Notification."
- .D DIRZ^BWUTL3 S BWPOP=1 Q
- ;
- ;---> CHECK IF THIS PURPOSE OF NOTIFICATION HAS A LETTER.
- I '$D(^BWNOTP(BWPURP,1,0)) D Q
- .W !!!?5,"No letter has been entered for this Purpose of Notification."
- .W !?5,"Programmer information: Notification=^BWNOT("_BWDA_",0)."
- .W !?5," Purpose IEN=",BWPURP
- .W !?5," Patient IEN=",BWDFN
- .D DIRZ^BWUTL3 S BWPOP=1 Q
- ;
- ;---> CHECK IF TYPE OF NOTIFICATION FOR THIS NOTIFICATION IS PRINTABLE.
- I 'BWTYPE D CANTPRT Q
- I '$P(^BWNOTT(BWTYPE,0),U,2) D CANTPRT Q
- Q
- ;
- CANTPRT ;EP
- ;---> CAN'T PRINT THIS NOTIFICATION.
- W !!?5,"This Type of Notification"
- W:BWTYPE ", ",$P(^BWNOTT(BWTYPE,0),U),"," W " is not printable."
- D DIRZ^BWUTL3 S BWPOP=1
- Q
- ;
- DEVICE ;EP
- ;---> GET DEVICE AND POSSIBLY QUEUE TO TASKMAN.
- K %ZIS,IOP
- S ZTRTN="PRINT^BWLETPR",ZTSAVE("BWDA")=""
- D ZIS^BWUTL2(.BWPOP,1)
- Q
- ;
- PRINT ;EP
- ;---> REQUIRED VARIABLE: BWDA=IEN IN ^BWNOT, ION=DEVICE
- ;---> NEXT LINE: IOP WILL INHIBIT ^DIWF FROM PROMPTING FOR DEVICE.
- D SETVARS^BWUTL5
- N BWDFN,BWPURP,IOP,BWIRAD,BWPDATE ;IHS/CMI/LAB patch 6 added 2 vars
- S IOP=ION
- ;---> IF FACILITIES OF LETTER AND USER DON'T MATCH, QUIT (IF NULL, OK).
- N BWFACIL S BWFACIL=$P(^BWNOT(BWDA,0),U,7)
- I ((BWFACIL'=DUZ(2))&(BWFACIL)) D TEXT1 H 5 S BWPOP=1 Q
- ;
- S BWDFN=$P(^BWNOT(BWDA,0),U)
- S BWPURP=$P(^BWNOT(BWDA,0),U,4)
- S BWIRAD=$P(^BWNOT(BWDA,0),U,6) I BWIRAD S BWIRAD=$P(^BWPCD(BWIRAD,0),U,35) ;IHS/CMI/LAB - patch 6
- S BWPDATE=$P(^BWNOT(BWDA,0),U,6) I BWPDATE S BWPDATE=$P(^BWPCD(BWPDATE,0),U,12) I BWPDATE]"" S BWPDATE=$$FMTE^XLFDT(BWPDATE) ;IHS/CMI/LAB - patch 6
- ;---> BWN=DATE OF "PRINT DATE", USE TO KILL "APRT" XREF BELOW.
- S:'$D(BWKDT) BWKDT=$P(^BWNOT(BWDA,0),U,11)
- ;---> IF NO PURPOSE (DELETED), KILL "APRT" XREF AND QUIT.
- I 'BWPURP D Q
- .W !!?5,"No Purpose of Notification has been chosen; therefore, this"
- .W !?5,"notification cannot be printed."
- .D KILLXREF(BWDA,BWKDT)
- ;---> IF QUEUED AND BWCRT IS NOT SET, THEN SET IT.
- S:'$D(BWCRT) BWCRT=$S($E(IOST)="C":1,1:0)
- S DIWF="^BWNOTP(BWPURP,1,"
- S DIWF(1)=9002086
- S BY="INTERNAL(#.01)="_BWDFN
- ;/IHS/ANMC/DLG 21JUN2002 sometimes IOF is null.
- ;S:'BWCRT DIOEND="W @IOF"
- S:'BWCRT DIOEND=$S(IOF]"":"W @IOF",1:"W #")
- ;/DLG
- ;---> IF LOCKED, PROMPT DEVICE, QUIT AND LEAVE IN THE QUEUE.
- L +^BWNOT(BWDA):0 I '$T U IO D D PROMPT Q
- .W !!?5,"The selected Notification is being edited by another user."
- .W !?5,"Programmer information: Notification=^BWNOT("_BWDA_",0)."
- .;/IHS/ANMC/DLG 21JUN2002 sometimes IOF is null
- .;W:'BWCRT @IOF
- .W:('BWCRT)&(IOF]"") @IOF W:('BWCRT)&(IOF="") #
- .;/DLG
- ;
- ;---> IF PATIENT IS DECEASED, DON'T PRINT LETTER; PRINT EXPLANATION,
- ;---> CHANGE THE STATUS OF THE NOTIFICATION TO "CLOSED", AND GIVE
- ;---> THE OUTCOME OF "PATIENT DECEASED".
- I $$DECEASED^BWUTL1(BWDFN) D DECEASED Q
- ;
- ;---> PRINT IT TO IOP, PRESERVE BWPOP.
- D EN2^DIWF
- D PROMPT
- ;---> DON'T STUFF "DATE PRINTED" IF IT ALREADY HAS A "DATE PRINTED".
- I $P(^BWNOT(BWDA,0),U,10)]"" D KILLXREF(BWDA,BWKDT) L -^BWNOT(BWDA) Q
- ;
- ;---> DON'T STUFF "DATE PRINTED" IF IT'S JUST TO THE SCREEN.
- I BWCRT D Q
- .W !!?3,"NOTE: Because this letter was only displayed on a screen and"
- .W !?9,"not printed on a printer, it will NOT yet be logged by the"
- .W !?9,"program as having been ""PRINTED"".",!
- .L -^BWNOT(BWDA) D DIRZ^BWUTL3
- ;
- ;---> NEXT LINES KILL "APRT" XREF AND SET "DATE PRINTED"=TODAY.
- ;---> ("APRT" XREF INDICATE A NOTIFICATION IS QUEUED TO BE PRINTED.)
- D KILLXREF(BWDA,BWKDT)
- D DIE^BWFMAN(9002086.4,".1////"_DT,BWDA)
- L -^BWNOT(BWDA) Q
- Q
- ;
- KILLXREF(BWDA,BWKDT) ;EP
- ;---> KILL "APRT" XREF (REMOVE LETTER FROM QUEUE).
- Q:'$G(BWDA) Q:'$G(BWKDT)
- K ^BWNOT("APRT",BWKDT,BWDA)
- Q
- ;
- DECEASED ;EP
- ;---> IF THE PATIENT IS DECEASED.
- ;---> DON'T STUFF "DATE PRINTED" IF IT'S JUST TO THE SCREEN.
- W !!?3,"NOTE: Because this patient, ",$$NAME^BWUTL1(BWDFN)," #"
- W $$HRCN^BWUTL1(BWDFN),", is now"
- W !?9,"registered as deceased, the letter will NOT be printed."
- W !?9,"Instead, this notification will be given a status of CLOSED"
- W !?9,"and an outcome of ""Patient Deceased""."
- ;/IHS/ANMC/DLG 21JUN2002 sometimes IOF is null
- ;D:BWCRT DIRZ^BWUTL3 W:'BWCRT @IOF
- D:BWCRT DIRZ^BWUTL3 W:('BWCRT)&(IOF]"") @IOF W:('BWCRT)&(IOF="") #
- ;/DLG
- S DR=".14////c;.05///Patient Deceased"
- D DIE^BWFMAN(9002086.4,DR,BWDA)
- ;---> KILL "APRT" XREF (FLAGS NOTIFICATION AS QUEUED TO BE PRINTED).
- D KILLXREF(BWDA,BWKDT)
- L -^BWNOT(BWDA)
- Q
- ;
- PROMPT ;EP
- ;---> PROMPT IF NECESSARY, PROMPT DEVICE.
- D:BWCRT DIRZ^BWUTL3
- Q
- ;
- NONE ;EP
- ;---> Patched message covers all possibilities. ;IHS/CMI/LAB
- ;S BWTITLE="* There are no letters for this patient" ;IHS/CMI/LAB
- ;S BWTITLE=BWTITLE_" waiting to be printed. *" ;IHS/CMI/LAB
- S BWTITLE="* No letters selected for printing. *" ;IHS/CMI/LAB
- D CENTERT^BWUTL5(.BWTITLE)
- W !!!!,BWTITLE,!!
- D DIRZ^BWUTL3
- Q
- ;
- TEXT1 ;EP
- ;;
- ;;* NOTE: The Facility with which this letter is associated does not
- ;; match the Facility under which you are currently logged on.
- ;; To print this Notification, you must either edit the Facility
- ;; for this Notification, or log off and log back in under the
- ;; same Facility with which the Notification is associated.
- S BWTAB=5,BWLINL="TEXT1" D PRINTX
- Q
- ;
- PRINTX ;EP
- N I,T,X S T="" F I=1:1:BWTAB S T=T_" "
- F I=1:1 S X=$T(@BWLINL+I) Q:X'[";;" W !,T,$P(X,";;",2)
- Q
- BWLETPR ;IHS/ANMC/MWR - BW PRINT LETTERS. [ 06/06/99 8:10 AM ];15-Feb-2003 21:56;PLS
- +1 ;;2.0;WOMEN'S HEALTH;**6,8**;MAY 16, 1996
- +2 ;;* MICHAEL REMILLARD, DDS * ALASKA NATIVE MEDICAL CENTER *
- +3 ;; CALLED BY OPTION: "BW PRINT INDIVIDUAL LETTERS" TO PRINT A
- +4 ;; LETTER FOR A SINGLE INDIVIDUAL (AS OPPOSED TO ALL THOSE QUEUED).
- +5 ;;IHS/CMI/LAB PATCHED AT LINE LABELS SELECT AND NONE. PATCH 6
- +6 ;
- +7 ;/IHS/ANMC/DLG 21JUN2002 I haven't found who/what sets IOF = null,
- +8 ; but somehow it's happening and it's causing SYNTAX errors. I slapped bandaids here & there.
- +9 DO SETVARS^BWUTL5
- SET (BWPOP1,BWPOP)=0
- +10 NEW BWDA,BWTITLE
- +11 FOR
- SET BWPOP=0
- Begin DoDot:1
- +12 DO SELECT
- IF BWPOP
- QUIT
- +13 DO DEVICE
- IF BWPOP
- QUIT
- +14 SET BWCRT=$SELECT($EXTRACT(IOST)="C":1,1:0)
- +15 DO PRINT
- End DoDot:1
- IF BWPOP1
- QUIT
- +16 DO ^%ZISC
- +17 ;
- EXIT ;EP
- +1 DO KILLALL^BWUTL8
- +2 QUIT
- +3 ;
- SELECT ;EP
- +1 ;---> SELECT PATIENT, THEN SELECT NOTIFICATION.
- +2 ;N DIC,Y ;IHS/CMI/LAB
- +3 ;IHS/CMI/LAB
- NEW BWNAM,DIC,X,Y
- +4 DO TITLE^BWUTL5("PRINT INDIVIDUAL PATIENT LETTERS")
- +5 DO PATLKUP^BWUTL8(.Y)
- +6 IF Y<0
- SET (BWPOP,BWPOP1)=1
- QUIT
- +7 SET BWDFN=+Y
- SET BWNAM=$$NAME^BWUTL1(BWDFN)
- +8 ;---> On some systems DIC lookup needs to be by name ;IHS/CMI/LAB
- +9 ;---> rather than by DFN. ;IHS/CMI/LAB
- +10 ;D DIC^BWFMAN(9002086.4,"EM",.Y,"","","",BWDFN,.BWPOP) ;IHS/CMI/LAB
- +11 ;IHS/CMI/LAB
- DO DIC^BWFMAN(9002086.4,"EM",.Y,"","","",BWNAM,.BWPOP)
- +12 IF $DATA(DUOUT)!($DATA(DTOUT))
- SET BWPOP=1
- QUIT
- +13 IF Y<0
- DO NONE
- SET BWPOP=1
- QUIT
- +14 SET BWDA=+Y
- +15 ;
- +16 ;---> IF FACILITIES OF LETTER AND USER DON'T MATCH, QUIT.
- +17 NEW BWFACIL
- SET BWFACIL=$PIECE(^BWNOT(BWDA,0),U,7)
- +18 IF ((BWFACIL'=DUZ(2))&(BWFACIL))
- DO TEXT1
- DO DIRZ^BWUTL3
- SET BWPOP=1
- QUIT
- +19 ;
- +20 SET BWPURP=$PIECE(^BWNOT(BWDA,0),U,4)
- +21 SET BWTYPE=$PIECE(^BWNOT(BWDA,0),U,3)
- +22 ;
- +23 ;---> CHECK IF PURPOSE HAS BEEN ENTERED.
- +24 IF 'BWPURP
- Begin DoDot:1
- +25 WRITE !!?5,"No Purpose has been entered for this Notification."
- +26 DO DIRZ^BWUTL3
- SET BWPOP=1
- QUIT
- End DoDot:1
- QUIT
- +27 ;
- +28 ;---> CHECK IF THIS PURPOSE OF NOTIFICATION HAS A LETTER.
- +29 IF '$DATA(^BWNOTP(BWPURP,1,0))
- Begin DoDot:1
- +30 WRITE !!!?5,"No letter has been entered for this Purpose of Notification."
- +31 WRITE !?5,"Programmer information: Notification=^BWNOT("_BWDA_",0)."
- +32 WRITE !?5," Purpose IEN=",BWPURP
- +33 WRITE !?5," Patient IEN=",BWDFN
- +34 DO DIRZ^BWUTL3
- SET BWPOP=1
- QUIT
- End DoDot:1
- QUIT
- +35 ;
- +36 ;---> CHECK IF TYPE OF NOTIFICATION FOR THIS NOTIFICATION IS PRINTABLE.
- +37 IF 'BWTYPE
- DO CANTPRT
- QUIT
- +38 IF '$PIECE(^BWNOTT(BWTYPE,0),U,2)
- DO CANTPRT
- QUIT
- +39 QUIT
- +40 ;
- CANTPRT ;EP
- +1 ;---> CAN'T PRINT THIS NOTIFICATION.
- +2 WRITE !!?5,"This Type of Notification"
- +3 IF BWTYPE
- WRITE ", ",$PIECE(^BWNOTT(BWTYPE,0),U),","
- WRITE " is not printable."
- +4 DO DIRZ^BWUTL3
- SET BWPOP=1
- +5 QUIT
- +6 ;
- DEVICE ;EP
- +1 ;---> GET DEVICE AND POSSIBLY QUEUE TO TASKMAN.
- +2 KILL %ZIS,IOP
- +3 SET ZTRTN="PRINT^BWLETPR"
- SET ZTSAVE("BWDA")=""
- +4 DO ZIS^BWUTL2(.BWPOP,1)
- +5 QUIT
- +6 ;
- PRINT ;EP
- +1 ;---> REQUIRED VARIABLE: BWDA=IEN IN ^BWNOT, ION=DEVICE
- +2 ;---> NEXT LINE: IOP WILL INHIBIT ^DIWF FROM PROMPTING FOR DEVICE.
- +3 DO SETVARS^BWUTL5
- +4 ;IHS/CMI/LAB patch 6 added 2 vars
- NEW BWDFN,BWPURP,IOP,BWIRAD,BWPDATE
- +5 SET IOP=ION
- +6 ;---> IF FACILITIES OF LETTER AND USER DON'T MATCH, QUIT (IF NULL, OK).
- +7 NEW BWFACIL
- SET BWFACIL=$PIECE(^BWNOT(BWDA,0),U,7)
- +8 IF ((BWFACIL'=DUZ(2))&(BWFACIL))
- DO TEXT1
- HANG 5
- SET BWPOP=1
- QUIT
- +9 ;
- +10 SET BWDFN=$PIECE(^BWNOT(BWDA,0),U)
- +11 SET BWPURP=$PIECE(^BWNOT(BWDA,0),U,4)
- +12 ;IHS/CMI/LAB - patch 6
- SET BWIRAD=$PIECE(^BWNOT(BWDA,0),U,6)
- IF BWIRAD
- SET BWIRAD=$PIECE(^BWPCD(BWIRAD,0),U,35)
- +13 ;IHS/CMI/LAB - patch 6
- SET BWPDATE=$PIECE(^BWNOT(BWDA,0),U,6)
- IF BWPDATE
- SET BWPDATE=$PIECE(^BWPCD(BWPDATE,0),U,12)
- IF BWPDATE]""
- SET BWPDATE=$$FMTE^XLFDT(BWPDATE)
- +14 ;---> BWN=DATE OF "PRINT DATE", USE TO KILL "APRT" XREF BELOW.
- +15 IF '$DATA(BWKDT)
- SET BWKDT=$PIECE(^BWNOT(BWDA,0),U,11)
- +16 ;---> IF NO PURPOSE (DELETED), KILL "APRT" XREF AND QUIT.
- +17 IF 'BWPURP
- Begin DoDot:1
- +18 WRITE !!?5,"No Purpose of Notification has been chosen; therefore, this"
- +19 WRITE !?5,"notification cannot be printed."
- +20 DO KILLXREF(BWDA,BWKDT)
- End DoDot:1
- QUIT
- +21 ;---> IF QUEUED AND BWCRT IS NOT SET, THEN SET IT.
- +22 IF '$DATA(BWCRT)
- SET BWCRT=$SELECT($EXTRACT(IOST)="C":1,1:0)
- +23 SET DIWF="^BWNOTP(BWPURP,1,"
- +24 SET DIWF(1)=9002086
- +25 SET BY="INTERNAL(#.01)="_BWDFN
- +26 ;/IHS/ANMC/DLG 21JUN2002 sometimes IOF is null.
- +27 ;S:'BWCRT DIOEND="W @IOF"
- +28 IF 'BWCRT
- SET DIOEND=$SELECT(IOF]"":"W @IOF",1:"W #")
- +29 ;/DLG
- +30 ;---> IF LOCKED, PROMPT DEVICE, QUIT AND LEAVE IN THE QUEUE.
- +31 LOCK +^BWNOT(BWDA):0
- IF '$TEST
- USE IO
- Begin DoDot:1
- +32 WRITE !!?5,"The selected Notification is being edited by another user."
- +33 WRITE !?5,"Programmer information: Notification=^BWNOT("_BWDA_",0)."
- +34 ;/IHS/ANMC/DLG 21JUN2002 sometimes IOF is null
- +35 ;W:'BWCRT @IOF
- +36 IF ('BWCRT)&(IOF]"")
- WRITE @IOF
- IF ('BWCRT)&(IOF="")
- WRITE #
- +37 ;/DLG
- End DoDot:1
- DO PROMPT
- QUIT
- +38 ;
- +39 ;---> IF PATIENT IS DECEASED, DON'T PRINT LETTER; PRINT EXPLANATION,
- +40 ;---> CHANGE THE STATUS OF THE NOTIFICATION TO "CLOSED", AND GIVE
- +41 ;---> THE OUTCOME OF "PATIENT DECEASED".
- +42 IF $$DECEASED^BWUTL1(BWDFN)
- DO DECEASED
- QUIT
- +43 ;
- +44 ;---> PRINT IT TO IOP, PRESERVE BWPOP.
- +45 DO EN2^DIWF
- +46 DO PROMPT
- +47 ;---> DON'T STUFF "DATE PRINTED" IF IT ALREADY HAS A "DATE PRINTED".
- +48 IF $PIECE(^BWNOT(BWDA,0),U,10)]""
- DO KILLXREF(BWDA,BWKDT)
- LOCK -^BWNOT(BWDA)
- QUIT
- +49 ;
- +50 ;---> DON'T STUFF "DATE PRINTED" IF IT'S JUST TO THE SCREEN.
- +51 IF BWCRT
- Begin DoDot:1
- +52 WRITE !!?3,"NOTE: Because this letter was only displayed on a screen and"
- +53 WRITE !?9,"not printed on a printer, it will NOT yet be logged by the"
- +54 WRITE !?9,"program as having been ""PRINTED"".",!
- +55 LOCK -^BWNOT(BWDA)
- DO DIRZ^BWUTL3
- End DoDot:1
- QUIT
- +56 ;
- +57 ;---> NEXT LINES KILL "APRT" XREF AND SET "DATE PRINTED"=TODAY.
- +58 ;---> ("APRT" XREF INDICATE A NOTIFICATION IS QUEUED TO BE PRINTED.)
- +59 DO KILLXREF(BWDA,BWKDT)
- +60 DO DIE^BWFMAN(9002086.4,".1////"_DT,BWDA)
- +61 LOCK -^BWNOT(BWDA)
- QUIT
- +62 QUIT
- +63 ;
- KILLXREF(BWDA,BWKDT) ;EP
- +1 ;---> KILL "APRT" XREF (REMOVE LETTER FROM QUEUE).
- +2 IF '$GET(BWDA)
- QUIT
- IF '$GET(BWKDT)
- QUIT
- +3 KILL ^BWNOT("APRT",BWKDT,BWDA)
- +4 QUIT
- +5 ;
- DECEASED ;EP
- +1 ;---> IF THE PATIENT IS DECEASED.
- +2 ;---> DON'T STUFF "DATE PRINTED" IF IT'S JUST TO THE SCREEN.
- +3 WRITE !!?3,"NOTE: Because this patient, ",$$NAME^BWUTL1(BWDFN)," #"
- +4 WRITE $$HRCN^BWUTL1(BWDFN),", is now"
- +5 WRITE !?9,"registered as deceased, the letter will NOT be printed."
- +6 WRITE !?9,"Instead, this notification will be given a status of CLOSED"
- +7 WRITE !?9,"and an outcome of ""Patient Deceased""."
- +8 ;/IHS/ANMC/DLG 21JUN2002 sometimes IOF is null
- +9 ;D:BWCRT DIRZ^BWUTL3 W:'BWCRT @IOF
- +10 IF BWCRT
- DO DIRZ^BWUTL3
- IF ('BWCRT)&(IOF]"")
- WRITE @IOF
- IF ('BWCRT)&(IOF="")
- WRITE #
- +11 ;/DLG
- +12 SET DR=".14////c;.05///Patient Deceased"
- +13 DO DIE^BWFMAN(9002086.4,DR,BWDA)
- +14 ;---> KILL "APRT" XREF (FLAGS NOTIFICATION AS QUEUED TO BE PRINTED).
- +15 DO KILLXREF(BWDA,BWKDT)
- +16 LOCK -^BWNOT(BWDA)
- +17 QUIT
- +18 ;
- PROMPT ;EP
- +1 ;---> PROMPT IF NECESSARY, PROMPT DEVICE.
- +2 IF BWCRT
- DO DIRZ^BWUTL3
- +3 QUIT
- +4 ;
- NONE ;EP
- +1 ;---> Patched message covers all possibilities. ;IHS/CMI/LAB
- +2 ;S BWTITLE="* There are no letters for this patient" ;IHS/CMI/LAB
- +3 ;S BWTITLE=BWTITLE_" waiting to be printed. *" ;IHS/CMI/LAB
- +4 ;IHS/CMI/LAB
- SET BWTITLE="* No letters selected for printing. *"
- +5 DO CENTERT^BWUTL5(.BWTITLE)
- +6 WRITE !!!!,BWTITLE,!!
- +7 DO DIRZ^BWUTL3
- +8 QUIT
- +9 ;
- TEXT1 ;EP
- +1 ;;
- +2 ;;* NOTE: The Facility with which this letter is associated does not
- +3 ;; match the Facility under which you are currently logged on.
- +4 ;; To print this Notification, you must either edit the Facility
- +5 ;; for this Notification, or log off and log back in under the
- +6 ;; same Facility with which the Notification is associated.
- +7 SET BWTAB=5
- SET BWLINL="TEXT1"
- DO PRINTX
- +8 QUIT
- +9 ;
- PRINTX ;EP
- +1 NEW I,T,X
- SET T=""
- FOR I=1:1:BWTAB
- SET T=T_" "
- +2 FOR I=1:1
- SET X=$TEXT(@BWLINL+I)
- IF X'[";;"
- QUIT
- WRITE !,T,$PIECE(X,";;",2)
- +3 QUIT