- PSDRFM ;BIR/JPW-File/Adj Mail Msg ; 29 Aug 94
- ;;3.0; CONTROLLED SUBSTANCES ;;13 Feb 97
- MSG ;send mailman message with count correction adj info
- S PHARMN1=$S($P($G(^VA(200,+PHARM1,0)),"^")]"":$P(^(0),"^"),1:"UNKNOWN"),PSDRN=$S($P($G(^PSDRUG(+PSDR,0)),"^")]"":$P(^(0),"^"),1:"UNKNOWN")
- K XMY,^TMP("PSDTAMSG",$J) S Y=PSDT X ^DD("DD") S RDT=Y S ^TMP("PSDTAMSG",$J,1,0)="Controlled Substances count correction has been filed."
- S (^TMP("PSDTAMSG",$J,1.5,0),^TMP("PSDTAMSG",$J,1.7,0))=""
- S ^TMP("PSDTAMSG",$J,1.6,0)="Option used: "_$P($G(XQY0),U,2)
- S ^TMP("PSDTAMSG",$J,2,0)="Correction Date/Time: "_RDT,^TMP("PSDTAMSG",$J,3,0)=""
- S ^TMP("PSDTAMSG",$J,4,0)="Ward signed out from: "_$G(NAOUN)
- S:$G(PAT) ^TMP("PSDTAMSG",$J,4.5,0)="Patient: "_$P($G(^DPT(+PAT,0)),U)
- S ^TMP("PSDTAMSG",$J,5,0)="Drug: "_PSDRN
- S ^TMP("PSDTAMSG",$J,6,0)="Quantity adjusted: "_-QTY
- S ^TMP("PSDTAMSG",$J,7,0)="Adjusted by: "_PHARMN1
- S ^TMP("PSDTAMSG",$J,8,0)="Witnessed by: "_$P($G(^VA(200,+$G(NUR2),0)),U)
- S ^TMP("PSDTAMSG",$J,9,0)="Reason: "_$G(PSDRE)
- S XMSUB="CONTROLLED SUBS ADJUSTMENT",XMTEXT="^TMP(""PSDTAMSG"",$J,",XMDUZ="CONTROLLED SUBSTANCES MONITOR"
- F JJ=0:0 S JJ=$O(^XUSEC("PSD ERROR",JJ)) Q:'JJ S XMY(JJ)=""
- I $P($G(^PSD(58.8,+$G(NAOU),6)),U) S XMY("G."_$P($G(^XMB(3.8,+$P($G(^PSD(58.8,+$G(NAOU),6)),U),0)),U))="" W !!,"Notifying "
- S:'$D(XMY) XMY(.5)="" D ^XMD K XMY,^TMP("PSDTAMSG",$J)
- K JJ,PHARMN1,PSDRN,RDT,X,XMDUZ,XMSUB,XMTEXT,XMY,Y
- Q
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPSDRFM 1459 printed Feb 18, 2025@23:15:03 Page 2
- PSDRFM ;BIR/JPW-File/Adj Mail Msg ; 29 Aug 94
- +1 ;;3.0; CONTROLLED SUBSTANCES ;;13 Feb 97
- MSG ;send mailman message with count correction adj info
- +1 SET PHARMN1=$SELECT($PIECE($GET(^VA(200,+PHARM1,0)),"^")]"":$PIECE(^(0),"^"),1:"UNKNOWN")
- SET PSDRN=$SELECT($PIECE($GET(^PSDRUG(+PSDR,0)),"^")]"":$PIECE(^(0),"^"),1:"UNKNOWN")
- +2 KILL XMY,^TMP("PSDTAMSG",$JOB)
- SET Y=PSDT
- XECUTE ^DD("DD")
- SET RDT=Y
- SET ^TMP("PSDTAMSG",$JOB,1,0)="Controlled Substances count correction has been filed."
- +3 SET (^TMP("PSDTAMSG",$JOB,1.5,0),^TMP("PSDTAMSG",$JOB,1.7,0))=""
- +4 SET ^TMP("PSDTAMSG",$JOB,1.6,0)="Option used: "_$PIECE($GET(XQY0),U,2)
- +5 SET ^TMP("PSDTAMSG",$JOB,2,0)="Correction Date/Time: "_RDT
- SET ^TMP("PSDTAMSG",$JOB,3,0)=""
- +6 SET ^TMP("PSDTAMSG",$JOB,4,0)="Ward signed out from: "_$GET(NAOUN)
- +7 if $GET(PAT)
- SET ^TMP("PSDTAMSG",$JOB,4.5,0)="Patient: "_$PIECE($GET(^DPT(+PAT,0)),U)
- +8 SET ^TMP("PSDTAMSG",$JOB,5,0)="Drug: "_PSDRN
- +9 SET ^TMP("PSDTAMSG",$JOB,6,0)="Quantity adjusted: "_-QTY
- +10 SET ^TMP("PSDTAMSG",$JOB,7,0)="Adjusted by: "_PHARMN1
- +11 SET ^TMP("PSDTAMSG",$JOB,8,0)="Witnessed by: "_$PIECE($GET(^VA(200,+$GET(NUR2),0)),U)
- +12 SET ^TMP("PSDTAMSG",$JOB,9,0)="Reason: "_$GET(PSDRE)
- +13 SET XMSUB="CONTROLLED SUBS ADJUSTMENT"
- SET XMTEXT="^TMP(""PSDTAMSG"",$J,"
- SET XMDUZ="CONTROLLED SUBSTANCES MONITOR"
- +14 FOR JJ=0:0
- SET JJ=$ORDER(^XUSEC("PSD ERROR",JJ))
- if 'JJ
- QUIT
- SET XMY(JJ)=""
- +15 IF $PIECE($GET(^PSD(58.8,+$GET(NAOU),6)),U)
- SET XMY("G."_$PIECE($GET(^XMB(3.8,+$PIECE($GET(^PSD(58.8,+$GET(NAOU),6)),U),0)),U))=""
- WRITE !!,"Notifying "
- +16 if '$DATA(XMY)
- SET XMY(.5)=""
- DO ^XMD
- KILL XMY,^TMP("PSDTAMSG",$JOB)
- +17 KILL JJ,PHARMN1,PSDRN,RDT,X,XMDUZ,XMSUB,XMTEXT,XMY,Y
- +18 QUIT