- ORY405NV ;ALB/BKG/gsn - POST-INIT ORDER DIALOG UPDATE ;Apr 29, 2022@10:02:04
- ;;3.0;ORDER ENTRY/RESULTS REPORTING;**405**;Dec 17, 1997;Build 211
- ;This routine will update the Order Dialog File (#101.41)
- ;Non-Va entry with new sequences
- ;
- Q
- ;
- EN ;entry point for post install
- N ORIEN,ORITEM,ORPARENT
- S ORIEN=$O(^ORD(101.41,"B","PSH OERR",0))
- S ORPARENT=$O(^ORD(101.41,"B","OR GTX INSTRUCTIONS",0))
- I 'ORIEN D Q
- . D BMES^XPDUTL
- . D MES^XPDUTL("******************************************************************")
- . D MES^XPDUTL("* ERROR Dialog PSH OERR was not found in the ORDER DIALOG file!! *")
- . D MES^XPDUTL("* *")
- . D MES^XPDUTL("* This is required for patch OR*3*405 to function properly. *")
- . D MES^XPDUTL("* Post Install Aborting... *")
- . D MES^XPDUTL("******************************************************************")
- . D BMES^XPDUTL
- . D MAILERR
- . H 5
- ;continue and update Dialog
- D BMES^XPDUTL
- D MES^XPDUTL("Updtating PSH OERR order dialog...")
- D SETDATA
- D MES^XPDUTL("Completed")
- D BMES^XPDUTL
- Q
- ;
- SETDATA ;
- N I,OREC,OREC1
- F I=1:1 S OREC=$P($T(TEXT1+I),";;",2) Q:OREC="QUIT" D
- .S OREC1=$P($T(TEXT+I),";;",2)
- .S:$P(OREC,"^")=2.4 OREC1=OREC1_"~"_$P($T(TEXT2+I),";;",2),ORITEM=$O(^ORD(101.41,"B","OR GTX AND/THEN",0))
- .S:$P(OREC,"^")=2.3 ORITEM=$O(^ORD(101.41,"B","OR GTX DURATION",0))
- .S:$P(OREC,"^")=2.8 ORITEM=$O(^ORD(101.41,"B","OR GTX SCHEDULE TYPE",0))
- .D UPDATE
- Q
- ;
- UPDATE ;setup die call
- K DR,DIC,DD,DA,DO,DINUM,FDA
- S DIC="^ORD(101.41,"
- S DA(1)=ORIEN
- S FDA(101.412,"?+1,"_DA(1)_",",.01)=$P((OREC),"^")
- S FDA(101.412,"?+1,"_DA(1)_",",.1)=$P((OREC1),"~")
- S FDA(101.412,"?+1,"_DA(1)_",",1)=ORPARENT
- S FDA(101.412,"?+1,"_DA(1)_",",2)=ORITEM
- S FDA(101.412,"?+1,"_DA(1)_",",4)=$P((OREC),"^",4)
- S FDA(101.412,"?+1,"_DA(1)_",",9)=$P((OREC),"^",9)
- S FDA(101.412,"?+1,"_DA(1)_",",13)=$P((OREC1),"~",3)
- S FDA(101.412,"?+1,"_DA(1)_",",11)=$P((OREC1),"~",2)
- S FDA(101.412,"?+1,"_DA(1)_",",15)=$P((OREC1),"~",4)
- S FDA(101.412,"?+1,"_DA(1)_",",19)=$P((OREC1),"~",5)
- S FDA(101.412,"?+1,"_DA(1)_",",20)=$P((OREC1),"~",6)
- S FDA(101.412,"?+1,"_DA(1)_",",17)=$P((OREC1),"~",7)
- D UPDATE^DIE("","FDA")
- K FDA
- Q
- ;
- MAILERR ;Send err message to insatller mailman
- N ORTEXT
- S XMY(DUZ)=DUZ
- S XMSUB="OR*3*405 ** INSTALL ERROR ** NON-VA MEDICATIONS"
- S ORTEXT(1)="ERROR Dialog PSH OERR was not found in the ORDER DIALOG file!!"
- S ORTEXT(2)=""
- S ORTEXT(3)="This is required for patch OR*3*405 to function properly."
- S ORTEXT(4)="Post Install Aborted Prematurely."
- S ORTEXT(5)=""
- S XMTEXT="ORTEXT(" N DIFROM D ^XMD K XMDUZ,XMTEXT,XMSUB
- Q
- ;
- TEXT ;dialog text
- ;;D INPCONJ^ORCDPS1~Enter AND if the next dose is to be administered concurrently with this one, or THEN if it is to follow after~I $G(ORCOMPLX)~I $G(ORESET)'=$P(Y,U) D CHANGED^ORCDPS1("QUANTITY")~D ENCONJ^ORCDPS1
- ;;~Enter the length of time over which this Non-VA Medication is being taken~I $$ASKDUR^ORCDPS3~D DUR^ORCDPS3~~~Q I $G(ORTYPE)'="Z",$G(ORCAT)="I",$G(ORCOMPLX),$P($G(ORSD),U,3) S Y=+$P(ORSD,U,3)_" DAYS"
- ;;~~I 0
- ;;QUIT
- TEXT1 ;dialog text
- ;;2.4^^^^^^^^^^
- ;;2.3^^^How Long:^^^^^C^^
- ;;2.8^^^^^^^^*^^
- ;;QUIT
- TEXT2 ;ONLY FOR SEQUENCE 2.4
- ;;I $G(ORCOMPLX),'$L($G(ORDIALOG(PROMPT,INST))),FIRST S MAX=1
- Q
- ;
- INDPR ;adding OR GTX INDICATION entry to ORDER DIALOG file ;*405-IND
- N ORIND,ORITEM,FDA,DA,ORSTA
- S ORIND="OR GTX INDICATION"
- S ORITEM=$O(^ORD(101.41,"B",ORIND,0))
- D BMES^XPDUTL
- I ORITEM D Q
- . D MES^XPDUTL("******************************************************************")
- . D MES^XPDUTL("* OR GTX INDICATION already exists in ORDER DIALOG (#101.41) file*")
- . D MES^XPDUTL("* Quitting from here.... *")
- . D MES^XPDUTL("******************************************************************")
- . D BMES^XPDUTL
- D MES^XPDUTL("*******************************************************************")
- D MES^XPDUTL("*Adding OR GTX INDICATION entry to the ORDER DIALOG (#101.41) file*")
- D MES^XPDUTL("*******************************************************************")
- D BMES^XPDUTL
- S FDA(101.41,"?+1,",.01)=ORIND
- S FDA(101.41,"?+1,",2)="Indication:"
- S FDA(101.41,"?+1,",4)="P"
- S FDA(101.41,"?+1,",11)="F"
- S FDA(101.41,"?+1,",12)="3:40"
- S FDA(101.41,"?+1,",13)="INDICATION"
- D UPDATE^DIE("","FDA","ORSTA")
- I $G(ORSTA)'=""!('$G(ORSTA(1))) D Q
- . D MES^XPDUTL("*******************************************************************")
- . D MES^XPDUTL("*OR GTX INDICATION addition failed. Quitting from here.... *")
- . D MES^XPDUTL("*******************************************************************")
- . D BMES^XPDUTL
- Q
- ;
- INDPT ;adding OR GTX INDICATION to the order dialog listed in OPT
- N ORIND,ORITEM,FDA,DA,ORSTA,ORIEN,I,OPTX,REQ,ZZ,ORD
- S ORIND="OR GTX INDICATION"
- S ORITEM=$O(^ORD(101.41,"B",ORIND,0))
- I 'ORITEM D Q
- . D MES^XPDUTL("******************************************************************")
- . D MES^XPDUTL("* OR GTX INDICATION does not exist in ORDER DIALOG (#101.41) file*")
- . D MES^XPDUTL("* Quitting order dialog updates..................................*")
- . D MES^XPDUTL("******************************************************************")
- . D BMES^XPDUTL
- F I=1:1 S OPTX=$P($T(OPT+I),";;",2) Q:OPTX="" D
- . S REQ=1 S:OPTX="PSH OERR"!(OPTX="PSO SUPPLY") REQ=0
- . S ORIEN=$O(^ORD(101.41,"B",OPTX,0)) I 'ORIEN D Q
- .. D BMES^XPDUTL
- .. D MES^XPDUTL("******************************************************************")
- .. D MES^XPDUTL("* "_OPTX_" was not found in the *")
- .. D MES^XPDUTL("* ORDER DIALOG (#101.41) file!! *")
- .. D MES^XPDUTL("******************************************************************")
- . D ADDITEM
- ;allow Park or Clinic for Pick Up in quick order dialog
- F ZZ="PSO OERR","PSO SUPPLY" S ORD=$O(^ORD(101.41,"B",ZZ,0)) Q:'ORD D
- . S I=0 F S I=$O(^ORD(101.41,ORD,10,I)) Q:'I I ^(I,0)["Pick Up:" D Q
- .. S ^ORD(101.41,ORD,10,I,.1)="D PARKCK^ORCDPS3",^ORD(101.41,ORD,10,I,5)=""
- .. S ^ORD(101.41,ORD,10,I,1)="Enter if the patient is to receive this medication by mail, at the window, or to be parked."
- D BMES^XPDUTL
- D MES^XPDUTL("****..Completed..****")
- D BMES^XPDUTL
- Q
- ;
- ADDITEM ;
- K FDA,DA
- S DA(1)=ORIEN
- S FDA(101.412,"?+1,"_DA(1)_",",.01)=8.5
- S FDA(101.412,"?+1,"_DA(1)_",",.1)="D INDIT^ORCDPS3"
- S FDA(101.412,"?+1,"_DA(1)_",",2)=ORITEM
- S FDA(101.412,"?+1,"_DA(1)_",",4)="Indication: "
- S:REQ FDA(101.412,"?+1,"_DA(1)_",",6)=1
- S FDA(101.412,"?+1,"_DA(1)_",",11)="You can choose a common indication from the list or free text an indication between 3-40 characters. "
- S FDA(101.412,"?+1,"_DA(1)_",",11)=FDA(101.412,"?+1,"_DA(1)_",",11)_"This field is not required in a quick order. If left blank the provider will have to fill it during order entry."
- S FDA(101.412,"?+1,"_DA(1)_",",16)="D XHELP^ORCDPS3:$G(ORDIALOG(PROMPT,""LIST""))"
- S FDA(101.412,"?+1,"_DA(1)_",",17)="D DFIND^ORCDPS3"
- S FDA(101.412,"?+1,"_DA(1)_",",19)="D IND^ORCDPS3"
- S FDA(101.412,"?+1,"_DA(1)_",",20)="I $L(Y) W "" ""_Y"
- S FDA(101.412,"?+1,"_DA(1)_",",21)=20
- S FDA(101.412,"?+1,"_DA(1)_",",24)="Indication:"
- S FDA(101.412,"?+1,"_DA(1)_",",26)=1
- I $D(^ORD(101.41,DA(1),10,"B",8.5)) D MES^XPDUTL("...updating "_OPTX_" with "_ORIND)
- I '$D(^ORD(101.41,DA(1),10,"B",8.5)) D MES^XPDUTL("...adding "_OPTX_" with "_ORIND)
- D UPDATE^DIE("","FDA")
- Q
- ;
- OPT ;
- ;;PSO OERR
- ;;PSJ OR PAT OE
- ;;PSJI OR PAT FLUID OE
- ;;PSO SUPPLY
- ;;PSH OERR
- ;;PS MEDS
- ;;PSJ OR CLINIC OE
- ;;CLINIC OR PAT FLUID OE
- Q
- ;
- CLINMED ;
- ;
- ; Remove the Route and Days supply prompts from PSJ OR CLINIC OE since
- ; they are not needed for Clin Meds and prevent QOs from being Auto Accepted
- ;
- N DA,DIK,ORDAYDLGIEN,ORDLG,ORIMODLGIEN,ORRTNGDLGIEN,ORX
- ;
- D BMES^XPDUTL("Updating 'PSJ OR CLINIC OE'... removing Route and Days Supply prompts.")
- ;
- S ORIMODLGIEN=$O(^ORD(101.41,"B","PSJ OR CLINIC OE",0))
- S ORDAYDLGIEN=$O(^ORD(101.41,"B","OR GTX DAYS SUPPLY",0))
- S ORRTNGDLGIEN=$O(^ORD(101.41,"B","OR GTX ROUTING",0))
- I 'ORIMODLGIEN!('ORDAYDLGIEN)!('ORRTNGDLGIEN) D Q
- . S ORX=$S('ORIMODLGIEN:"PSJ OR CLINIC OE",'ORDAYDLGIEN:"OR GTX DAYS SUPPLY",1:"OR GTX ROUTING")
- . D MES^XPDUTL("**************************************************************************")
- . D MES^XPDUTL("* ERROR Dialog "_ORX_" was not found in the ORDER DIALOG file!! *")
- . D MES^XPDUTL("* *")
- . D MES^XPDUTL("* This is required for patch OR*3*405 to function properly. *")
- . D MES^XPDUTL("**************************************************************************")
- ;
- F ORDLG=ORDAYDLGIEN,ORRTNGDLGIEN D
- . S DA=$O(^ORD(101.41,ORIMODLGIEN,10,"D",ORDLG,0))
- . I 'DA D Q
- . . D MES^XPDUTL($S(ORDLG=ORDAYDLGIEN:"OR GTX DAYS SUPPLY",1:"OR GTX ROUTING")_" already removed from PSJ OR CLINIC OE.")
- . S DA(1)=ORIMODLGIEN
- . S DIK="^ORD(101.41,"_DA(1)_",10,"
- . D ^DIK
- . D MES^XPDUTL("Removing "_$S(ORDLG=ORDAYDLGIEN:"OR GTX DAYS SUPPLY",1:"OR GTX ROUTING")_" from PSJ OR CLINIC OE.")
- ;
- D BMES^XPDUTL
- ;
- Q
- ;
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HORY405NV 9329 printed Feb 19, 2025@00:08:21 Page 2
- ORY405NV ;ALB/BKG/gsn - POST-INIT ORDER DIALOG UPDATE ;Apr 29, 2022@10:02:04
- +1 ;;3.0;ORDER ENTRY/RESULTS REPORTING;**405**;Dec 17, 1997;Build 211
- +2 ;This routine will update the Order Dialog File (#101.41)
- +3 ;Non-Va entry with new sequences
- +4 ;
- +5 QUIT
- +6 ;
- EN ;entry point for post install
- +1 NEW ORIEN,ORITEM,ORPARENT
- +2 SET ORIEN=$ORDER(^ORD(101.41,"B","PSH OERR",0))
- +3 SET ORPARENT=$ORDER(^ORD(101.41,"B","OR GTX INSTRUCTIONS",0))
- +4 IF 'ORIEN
- Begin DoDot:1
- +5 DO BMES^XPDUTL
- +6 DO MES^XPDUTL("******************************************************************")
- +7 DO MES^XPDUTL("* ERROR Dialog PSH OERR was not found in the ORDER DIALOG file!! *")
- +8 DO MES^XPDUTL("* *")
- +9 DO MES^XPDUTL("* This is required for patch OR*3*405 to function properly. *")
- +10 DO MES^XPDUTL("* Post Install Aborting... *")
- +11 DO MES^XPDUTL("******************************************************************")
- +12 DO BMES^XPDUTL
- +13 DO MAILERR
- +14 HANG 5
- End DoDot:1
- QUIT
- +15 ;continue and update Dialog
- +16 DO BMES^XPDUTL
- +17 DO MES^XPDUTL("Updtating PSH OERR order dialog...")
- +18 DO SETDATA
- +19 DO MES^XPDUTL("Completed")
- +20 DO BMES^XPDUTL
- +21 QUIT
- +22 ;
- SETDATA ;
- +1 NEW I,OREC,OREC1
- +2 FOR I=1:1
- SET OREC=$PIECE($TEXT(TEXT1+I),";;",2)
- if OREC="QUIT"
- QUIT
- Begin DoDot:1
- +3 SET OREC1=$PIECE($TEXT(TEXT+I),";;",2)
- +4 if $PIECE(OREC,"^")=2.4
- SET OREC1=OREC1_"~"_$PIECE($TEXT(TEXT2+I),";;",2)
- SET ORITEM=$ORDER(^ORD(101.41,"B","OR GTX AND/THEN",0))
- +5 if $PIECE(OREC,"^")=2.3
- SET ORITEM=$ORDER(^ORD(101.41,"B","OR GTX DURATION",0))
- +6 if $PIECE(OREC,"^")=2.8
- SET ORITEM=$ORDER(^ORD(101.41,"B","OR GTX SCHEDULE TYPE",0))
- +7 DO UPDATE
- End DoDot:1
- +8 QUIT
- +9 ;
- UPDATE ;setup die call
- +1 KILL DR,DIC,DD,DA,DO,DINUM,FDA
- +2 SET DIC="^ORD(101.41,"
- +3 SET DA(1)=ORIEN
- +4 SET FDA(101.412,"?+1,"_DA(1)_",",.01)=$PIECE((OREC),"^")
- +5 SET FDA(101.412,"?+1,"_DA(1)_",",.1)=$PIECE((OREC1),"~")
- +6 SET FDA(101.412,"?+1,"_DA(1)_",",1)=ORPARENT
- +7 SET FDA(101.412,"?+1,"_DA(1)_",",2)=ORITEM
- +8 SET FDA(101.412,"?+1,"_DA(1)_",",4)=$PIECE((OREC),"^",4)
- +9 SET FDA(101.412,"?+1,"_DA(1)_",",9)=$PIECE((OREC),"^",9)
- +10 SET FDA(101.412,"?+1,"_DA(1)_",",13)=$PIECE((OREC1),"~",3)
- +11 SET FDA(101.412,"?+1,"_DA(1)_",",11)=$PIECE((OREC1),"~",2)
- +12 SET FDA(101.412,"?+1,"_DA(1)_",",15)=$PIECE((OREC1),"~",4)
- +13 SET FDA(101.412,"?+1,"_DA(1)_",",19)=$PIECE((OREC1),"~",5)
- +14 SET FDA(101.412,"?+1,"_DA(1)_",",20)=$PIECE((OREC1),"~",6)
- +15 SET FDA(101.412,"?+1,"_DA(1)_",",17)=$PIECE((OREC1),"~",7)
- +16 DO UPDATE^DIE("","FDA")
- +17 KILL FDA
- +18 QUIT
- +19 ;
- MAILERR ;Send err message to insatller mailman
- +1 NEW ORTEXT
- +2 SET XMY(DUZ)=DUZ
- +3 SET XMSUB="OR*3*405 ** INSTALL ERROR ** NON-VA MEDICATIONS"
- +4 SET ORTEXT(1)="ERROR Dialog PSH OERR was not found in the ORDER DIALOG file!!"
- +5 SET ORTEXT(2)=""
- +6 SET ORTEXT(3)="This is required for patch OR*3*405 to function properly."
- +7 SET ORTEXT(4)="Post Install Aborted Prematurely."
- +8 SET ORTEXT(5)=""
- +9 SET XMTEXT="ORTEXT("
- NEW DIFROM
- DO ^XMD
- KILL XMDUZ,XMTEXT,XMSUB
- +10 QUIT
- +11 ;
- TEXT ;dialog text
- +1 ;;D INPCONJ^ORCDPS1~Enter AND if the next dose is to be administered concurrently with this one, or THEN if it is to follow after~I $G(ORCOMPLX)~I $G(ORESET)'=$P(Y,U) D CHANGED^ORCDPS1("QUANTITY")~D ENCONJ^ORCDPS1
- +2 ;;~Enter the length of time over which this Non-VA Medication is being taken~I $$ASKDUR^ORCDPS3~D DUR^ORCDPS3~~~Q I $G(ORTYPE)'="Z",$G(ORCAT)="I",$G(ORCOMPLX),$P($G(ORSD),U,3) S Y=+$P(ORSD,U,3)_" DAYS"
- +3 ;;~~I 0
- +4 ;;QUIT
- TEXT1 ;dialog text
- +1 ;;2.4^^^^^^^^^^
- +2 ;;2.3^^^How Long:^^^^^C^^
- +3 ;;2.8^^^^^^^^*^^
- +4 ;;QUIT
- TEXT2 ;ONLY FOR SEQUENCE 2.4
- +1 ;;I $G(ORCOMPLX),'$L($G(ORDIALOG(PROMPT,INST))),FIRST S MAX=1
- +2 QUIT
- +3 ;
- INDPR ;adding OR GTX INDICATION entry to ORDER DIALOG file ;*405-IND
- +1 NEW ORIND,ORITEM,FDA,DA,ORSTA
- +2 SET ORIND="OR GTX INDICATION"
- +3 SET ORITEM=$ORDER(^ORD(101.41,"B",ORIND,0))
- +4 DO BMES^XPDUTL
- +5 IF ORITEM
- Begin DoDot:1
- +6 DO MES^XPDUTL("******************************************************************")
- +7 DO MES^XPDUTL("* OR GTX INDICATION already exists in ORDER DIALOG (#101.41) file*")
- +8 DO MES^XPDUTL("* Quitting from here.... *")
- +9 DO MES^XPDUTL("******************************************************************")
- +10 DO BMES^XPDUTL
- End DoDot:1
- QUIT
- +11 DO MES^XPDUTL("*******************************************************************")
- +12 DO MES^XPDUTL("*Adding OR GTX INDICATION entry to the ORDER DIALOG (#101.41) file*")
- +13 DO MES^XPDUTL("*******************************************************************")
- +14 DO BMES^XPDUTL
- +15 SET FDA(101.41,"?+1,",.01)=ORIND
- +16 SET FDA(101.41,"?+1,",2)="Indication:"
- +17 SET FDA(101.41,"?+1,",4)="P"
- +18 SET FDA(101.41,"?+1,",11)="F"
- +19 SET FDA(101.41,"?+1,",12)="3:40"
- +20 SET FDA(101.41,"?+1,",13)="INDICATION"
- +21 DO UPDATE^DIE("","FDA","ORSTA")
- +22 IF $GET(ORSTA)'=""!('$GET(ORSTA(1)))
- Begin DoDot:1
- +23 DO MES^XPDUTL("*******************************************************************")
- +24 DO MES^XPDUTL("*OR GTX INDICATION addition failed. Quitting from here.... *")
- +25 DO MES^XPDUTL("*******************************************************************")
- +26 DO BMES^XPDUTL
- End DoDot:1
- QUIT
- +27 QUIT
- +28 ;
- INDPT ;adding OR GTX INDICATION to the order dialog listed in OPT
- +1 NEW ORIND,ORITEM,FDA,DA,ORSTA,ORIEN,I,OPTX,REQ,ZZ,ORD
- +2 SET ORIND="OR GTX INDICATION"
- +3 SET ORITEM=$ORDER(^ORD(101.41,"B",ORIND,0))
- +4 IF 'ORITEM
- Begin DoDot:1
- +5 DO MES^XPDUTL("******************************************************************")
- +6 DO MES^XPDUTL("* OR GTX INDICATION does not exist in ORDER DIALOG (#101.41) file*")
- +7 DO MES^XPDUTL("* Quitting order dialog updates..................................*")
- +8 DO MES^XPDUTL("******************************************************************")
- +9 DO BMES^XPDUTL
- End DoDot:1
- QUIT
- +10 FOR I=1:1
- SET OPTX=$PIECE($TEXT(OPT+I),";;",2)
- if OPTX=""
- QUIT
- Begin DoDot:1
- +11 SET REQ=1
- if OPTX="PSH OERR"!(OPTX="PSO SUPPLY")
- SET REQ=0
- +12 SET ORIEN=$ORDER(^ORD(101.41,"B",OPTX,0))
- IF 'ORIEN
- Begin DoDot:2
- +13 DO BMES^XPDUTL
- +14 DO MES^XPDUTL("******************************************************************")
- +15 DO MES^XPDUTL("* "_OPTX_" was not found in the *")
- +16 DO MES^XPDUTL("* ORDER DIALOG (#101.41) file!! *")
- +17 DO MES^XPDUTL("******************************************************************")
- End DoDot:2
- QUIT
- +18 DO ADDITEM
- End DoDot:1
- +19 ;allow Park or Clinic for Pick Up in quick order dialog
- +20 FOR ZZ="PSO OERR","PSO SUPPLY"
- SET ORD=$ORDER(^ORD(101.41,"B",ZZ,0))
- if 'ORD
- QUIT
- Begin DoDot:1
- +21 SET I=0
- FOR
- SET I=$ORDER(^ORD(101.41,ORD,10,I))
- if 'I
- QUIT
- IF ^(I,0)["Pick Up:"
- Begin DoDot:2
- +22 SET ^ORD(101.41,ORD,10,I,.1)="D PARKCK^ORCDPS3"
- SET ^ORD(101.41,ORD,10,I,5)=""
- +23 SET ^ORD(101.41,ORD,10,I,1)="Enter if the patient is to receive this medication by mail, at the window, or to be parked."
- End DoDot:2
- QUIT
- End DoDot:1
- +24 DO BMES^XPDUTL
- +25 DO MES^XPDUTL("****..Completed..****")
- +26 DO BMES^XPDUTL
- +27 QUIT
- +28 ;
- ADDITEM ;
- +1 KILL FDA,DA
- +2 SET DA(1)=ORIEN
- +3 SET FDA(101.412,"?+1,"_DA(1)_",",.01)=8.5
- +4 SET FDA(101.412,"?+1,"_DA(1)_",",.1)="D INDIT^ORCDPS3"
- +5 SET FDA(101.412,"?+1,"_DA(1)_",",2)=ORITEM
- +6 SET FDA(101.412,"?+1,"_DA(1)_",",4)="Indication: "
- +7 if REQ
- SET FDA(101.412,"?+1,"_DA(1)_",",6)=1
- +8 SET FDA(101.412,"?+1,"_DA(1)_",",11)="You can choose a common indication from the list or free text an indication between 3-40 characters. "
- +9 SET FDA(101.412,"?+1,"_DA(1)_",",11)=FDA(101.412,"?+1,"_DA(1)_",",11)_"This field is not required in a quick order. If left blank the provider will have to fill it during order entry."
- +10 SET FDA(101.412,"?+1,"_DA(1)_",",16)="D XHELP^ORCDPS3:$G(ORDIALOG(PROMPT,""LIST""))"
- +11 SET FDA(101.412,"?+1,"_DA(1)_",",17)="D DFIND^ORCDPS3"
- +12 SET FDA(101.412,"?+1,"_DA(1)_",",19)="D IND^ORCDPS3"
- +13 SET FDA(101.412,"?+1,"_DA(1)_",",20)="I $L(Y) W "" ""_Y"
- +14 SET FDA(101.412,"?+1,"_DA(1)_",",21)=20
- +15 SET FDA(101.412,"?+1,"_DA(1)_",",24)="Indication:"
- +16 SET FDA(101.412,"?+1,"_DA(1)_",",26)=1
- +17 IF $DATA(^ORD(101.41,DA(1),10,"B",8.5))
- DO MES^XPDUTL("...updating "_OPTX_" with "_ORIND)
- +18 IF '$DATA(^ORD(101.41,DA(1),10,"B",8.5))
- DO MES^XPDUTL("...adding "_OPTX_" with "_ORIND)
- +19 DO UPDATE^DIE("","FDA")
- +20 QUIT
- +21 ;
- OPT ;
- +1 ;;PSO OERR
- +2 ;;PSJ OR PAT OE
- +3 ;;PSJI OR PAT FLUID OE
- +4 ;;PSO SUPPLY
- +5 ;;PSH OERR
- +6 ;;PS MEDS
- +7 ;;PSJ OR CLINIC OE
- +8 ;;CLINIC OR PAT FLUID OE
- +9 QUIT
- +10 ;
- CLINMED ;
- +1 ;
- +2 ; Remove the Route and Days supply prompts from PSJ OR CLINIC OE since
- +3 ; they are not needed for Clin Meds and prevent QOs from being Auto Accepted
- +4 ;
- +5 NEW DA,DIK,ORDAYDLGIEN,ORDLG,ORIMODLGIEN,ORRTNGDLGIEN,ORX
- +6 ;
- +7 DO BMES^XPDUTL("Updating 'PSJ OR CLINIC OE'... removing Route and Days Supply prompts.")
- +8 ;
- +9 SET ORIMODLGIEN=$ORDER(^ORD(101.41,"B","PSJ OR CLINIC OE",0))
- +10 SET ORDAYDLGIEN=$ORDER(^ORD(101.41,"B","OR GTX DAYS SUPPLY",0))
- +11 SET ORRTNGDLGIEN=$ORDER(^ORD(101.41,"B","OR GTX ROUTING",0))
- +12 IF 'ORIMODLGIEN!('ORDAYDLGIEN)!('ORRTNGDLGIEN)
- Begin DoDot:1
- +13 SET ORX=$SELECT('ORIMODLGIEN:"PSJ OR CLINIC OE",'ORDAYDLGIEN:"OR GTX DAYS SUPPLY",1:"OR GTX ROUTING")
- +14 DO MES^XPDUTL("**************************************************************************")
- +15 DO MES^XPDUTL("* ERROR Dialog "_ORX_" was not found in the ORDER DIALOG file!! *")
- +16 DO MES^XPDUTL("* *")
- +17 DO MES^XPDUTL("* This is required for patch OR*3*405 to function properly. *")
- +18 DO MES^XPDUTL("**************************************************************************")
- End DoDot:1
- QUIT
- +19 ;
- +20 FOR ORDLG=ORDAYDLGIEN,ORRTNGDLGIEN
- Begin DoDot:1
- +21 SET DA=$ORDER(^ORD(101.41,ORIMODLGIEN,10,"D",ORDLG,0))
- +22 IF 'DA
- Begin DoDot:2
- +23 DO MES^XPDUTL($SELECT(ORDLG=ORDAYDLGIEN:"OR GTX DAYS SUPPLY",1:"OR GTX ROUTING")_" already removed from PSJ OR CLINIC OE.")
- End DoDot:2
- QUIT
- +24 SET DA(1)=ORIMODLGIEN
- +25 SET DIK="^ORD(101.41,"_DA(1)_",10,"
- +26 DO ^DIK
- +27 DO MES^XPDUTL("Removing "_$SELECT(ORDLG=ORDAYDLGIEN:"OR GTX DAYS SUPPLY",1:"OR GTX ROUTING")_" from PSJ OR CLINIC OE.")
- End DoDot:1
- +28 ;
- +29 DO BMES^XPDUTL
- +30 ;
- +31 QUIT
- +32 ;