| 1 | PSJOE1 ;BIR/CML3-UD OE FOR COMBINED OE ;29 JAN 99 / 9:44 AM
|
---|
| 2 | ;;5.0; INPATIENT MEDICATIONS ;**2,7,25,30,47,56,64**;16 DEC 97
|
---|
| 3 | ;
|
---|
| 4 | ; Reference to ^DICN is supported by DBIA# 10009
|
---|
| 5 | ; Reference to ^VALM is supported by DBIA# 10118
|
---|
| 6 | ;
|
---|
| 7 | S PC=0 G AD
|
---|
| 8 | ;
|
---|
| 9 | EN ;
|
---|
| 10 | S PC=0
|
---|
| 11 | ;
|
---|
| 12 | AD ; Ask Drug
|
---|
| 13 | N PSJNORD,PSGORQF,PSGSDX,PSGFDX,PSGNEFDO S PSJNORD=1 I $D(VALM("TM")) S IOTM=VALM("TM"),IOBM=IOSL W IOSC,@IOSTBM,IORC
|
---|
| 14 | D ^PSGOE7
|
---|
| 15 | I PSGORQF>0 S PSJORQF=1 G DONE
|
---|
| 16 | S PC=1,PSJORQF=0 I X?1"S."1.E D ^PSGOES G AD
|
---|
| 17 | D ^PSGOE4:'$P(PSJSYSP0,"^",12),^PSGOE3:$P(PSJSYSP0,"^",12)
|
---|
| 18 | G:$G(PSGOROE1)=1 AD
|
---|
| 19 | K PSGEFN,PSGOEEF,PSGOEE,PSGOEOS S PSGEFN="1:13" F X=1:1:13 S PSGEFN(X)=""
|
---|
| 20 | S PSGPDN=$$OINAME^PSJLMUTL(PSGPDRG),PSGPD=PSGPDRG,PSGOINST="",PSGSDN=$$ENDD^PSGMI(PSGNESD)_U_$$ENDTC^PSGMI(PSGNESD),PSGFDN=$$ENDD^PSGMI(PSGNEFD)_U_$$ENDTC^PSGMI(PSGNEFD)
|
---|
| 21 | S PSGAT=PSGS0Y,PSGLIN=$$ENDD^PSGMI(PSGDT)_U_$$ENDTC^PSGMI(PSGDT),PSGLI=PSGDT,PSGEBN=$$ENNPN^PSGMI(DUZ),PSGSTAT=$S(PSGOEAV:"ACTIVE",1:"NON-VERIFIED")
|
---|
| 22 | D CHK^PSGOEV("^^"_PSGMR_"^^^^"_PSGST,PSGPDRG_U_PSGDO,PSGSCH_U_PSGNESD_"^^"_PSGNEFD)
|
---|
| 23 | S PSGSD=PSGNESD,PSGFD=PSGNEFD
|
---|
| 24 | K PSJACEPT S VALMBCK="Q" D:$D(Y) EN^VALM("PSJU LM ACCEPT")
|
---|
| 25 | S PSJNOO=-1 I $G(PSJACEPT)=1 S PSJNOO=$$ENNOO^PSJUTL5("N")
|
---|
| 26 | I $G(PSJNOO)<0 K PSJACEPT W !,"No order created." G AD
|
---|
| 27 | K PSGOEE D ^PSGOETO S PSJORD=PSGORD I PSGOEAV D G AD
|
---|
| 28 | .I '$D(PSGOEE),+PSJSYSU=3 D EN^PSGPEN(PSGORD)
|
---|
| 29 | S PSGOEEF=0 D GETUD^PSJLMGUD(PSGP,PSGORD),ENSFE^PSGOEE0(PSGP,PSGORD),^PSGOE1,EN^VALM("PSJ LM UD ACTION")
|
---|
| 30 | G AD
|
---|
| 31 | Q
|
---|
| 32 | ;
|
---|
| 33 | EDIT(PROMPT) ;
|
---|
| 34 | ; Edit fields in a UD order.
|
---|
| 35 | ; PROMPT=0 - Select fields to edit by number.
|
---|
| 36 | ; PROMPT=1 - Prompt to select fields for editing.
|
---|
| 37 | ;
|
---|
| 38 | ;* D @$S('PROMPT:"ENEFA2^PSGON",1:"ENEFA^PSGON") Q:'Y S PSGOEEG=3 D EDIT^PSGOEE ;$S(PSGOEEWF[53.1:3,1:5) D:Y EDIT^PSGOEE
|
---|
| 39 | D @$S('PROMPT:"ENEFA2^PSGON",1:"ENEFA^PSGON") Q:'Y S:$G(PSJNEWOE) PSGOEEWF="^PS(53.1," S PSGOEEG=$S('$D(PSGOEEWF):3,PSGOEEWF[53.1:3,1:5) D EDIT^PSGOEE
|
---|
| 40 | I $G(PSJNEWOE) S PSGOEENO=0,DR="",VALMBCK="R"
|
---|
| 41 | I '$G(PSJNEWOE) D ENNOU^PSGOEE0 I 'PSGOEENO,DR="" S VALMBCK="R" Q
|
---|
| 42 | I 'PSGOEENO,$D(PSGOES) D ENNOU^PSGOEE0 ; only update on order sets
|
---|
| 43 | I 'PSGOEENO,$G(PSGPDNX)=1 D CKDT^PSGOEE
|
---|
| 44 | K VALMSG I PSGOEENO D
|
---|
| 45 | .S VALMSG="This change will cause a new order to be created." D GTSTATUS^PSGOEE,CHKDD^PSGOEE,CKDT^PSGOEE
|
---|
| 46 | .S PSGEBN=$$ENNPN^PSGMI(DUZ),PSGLIN=$$ENDD^PSGMI(PSGDT)_U_$$ENDTC^PSGMI(PSGDT),PSGLI=PSGDT
|
---|
| 47 | D CHK^PSGOEV("^^"_PSGMR_"^^^^"_PSGST,PSGPDRG_U_PSGDO,PSGSCH_U_PSGSD_"^^"_PSGFD)
|
---|
| 48 | D INIT^PSJLMUDE(PSGP,$G(PSGORD))
|
---|
| 49 | Q
|
---|
| 50 | DONE ;
|
---|
| 51 | K %,DA,DIC,DIE,DR,DRG,DRGN,DRGO,ND,OC,ORIFN,ORIT,ORPK,ORSTOP,ORSTRT,ORSTS,ORTX,PC,PSGDO,PSGMR,PSGMRN,PSGNEDFD,PSGNEFD,PSGNESD,PSGOES,PSGOROE1,PSGORD,PSGS0XT,PSGS0Y,PSGSCH,PSGSI,PSGX,Y,Z Q
|
---|
| 52 | ;
|
---|
| 53 | GDO ;
|
---|
| 54 | W !!,"Drug is not found in Formulary List." F S %=1 W !,"Would you like to try to search the list again" D YN^DICN Q:% D TAM
|
---|
| 55 | Q:%<2
|
---|
| 56 | FTD ;
|
---|
| 57 | R !!,"Enter FREE TEXT DRUG: ",PSGDRGN:DTIME E W $C(7) S PSGDRGN="^" Q
|
---|
| 58 | Q:"^"[PSGDRGN S X=$S(PSGDRGN'?.ANP:"Control character(s)",PSGDRGN["^":"Up-arrow ('^') in text",$L(PSGDRGN)>39:"Reponse longer than 39 characters",1:"") I X]"" W $C(7)," ??",!?2,"(",X," not allowed.)" G FTD
|
---|
| 59 | Q:PSGDRGN'?1."?"
|
---|
| 60 | W !!?2,"ENTER DRUG ORDERED (1-39 CHARACTERS).",!?2,"Since the drug cannot be found in the DRUG file, enter the drug name here",!,"exactly as ordered. Press the RETURN key (or enter an '^') to skip over this",!,"drug, or to again search the"
|
---|
| 61 | W " DRUG file for this one." G FTD
|
---|
| 62 | ;
|
---|
| 63 | TAM ; Try Again Message
|
---|
| 64 | W !!," Enter a 'Y' to try again to find the drug ordered from the Formulary. (The",!,"order cannot become active until a Formulary drug has been entered.) Enter 'N'",!,"to enter the drug ordered as free text for later reference."
|
---|
| 65 | W " Enter '^' to exit.",! Q
|
---|