Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: PSXLBLT

PSXLBLT.m

Go to the documentation of this file.
  1. PSXLBLT ;BIR/HTW-CMOP Label Print..Trailer Docs ;[ 03/06/98 7:00 AM ]
  1. ;;2.0;CMOP;**1,13**;11 Apr 97
  1. DOC1 ; Print Multi-Rx documents
  1. I '$D(MRX) G FINAL
  1. S RXCT=0
  1. DOCNEW W ?54,PNAME," ",SSN
  1. W !?54,PADD1
  1. W !?54,PADD2
  1. I $G(PADD3)]"" W !?54,$G(PADD3)
  1. I $G(PADD4)]"" W !?54,$G(PADD4)
  1. W !,?54,"Please check prescriptions to be refilled"
  1. F I=1:1:3 S RXCT=$O(MRX(RXCT)) Q:'RXCT S MRX=MRX(RXCT) D
  1. .S RX=$P(MRX,U),TRUG=$P(MRX,U,2),REFREM=$P(MRX,U,3)
  1. .S EXPDT=$P(MRX,U,4),BAR=$P(MRX,U,5)
  1. .S EXPDT=$E(EXPDT,5,6)_"/"_$E(EXPDT,7,8)_"/"_$E(EXPDT,1,4)
  1. .W !,?54,"(____) ",TRUG
  1. .W !,?55,REFREM," ",?60,"Expires ",$G(EXPDT)," Rx# ",RX
  1. .I $G(PSXBAR) S X="S",X2=BAR W !,?55 S X1=$X W @IOBARON,X2,@IOBAROFF
  1. W !?54,"(______________________________________)"
  1. W !?55,"PATIENT'S SIGNATURE ",$E(DT,4,5),"/",$E(DT,6,7),"/",($E(DT,1,3)+1700)
  1. W @IOF
  1. I +$G(RXCT)>0 S RXCK=$O(MRX(RXCT)) I RXCK]"" K RXCK G DOCNEW
  1. K RXCT,RXCK,MRX,I,RX,TRUG,REFEM,EXPDT,X,X2
  1. FINAL ;Set up Suspense Notification
  1. I $D(SRX) D
  1. .S SUS(1)=SSN
  1. .S SUS(2)=PNAME
  1. .S SUS(3)=PADD1
  1. .S SUS(4)=PADD2,CT=5
  1. .I $G(ADDR3)]"" S SUS(5)=PADD3,CT=6
  1. .I $G(PADD4)]"" S SUS(6)=PADD4,CT=7
  1. .S SUS(CT)="",CT=CT+1
  1. .S SUS(CT)=" The following prescriptions will be",CT=CT+1
  1. .S SUS(CT)="mailed to you at a future date.",CT=CT+1
  1. .S SUS(CT)="",CT=CT+1
  1. .S SUS(CT)="Rx# Drug",CT=CT+1
  1. .S SUS(CT)="============================================",CT=CT+1
  1. .S SUS(CT)="",CT=CT+1
  1. .F XX=0:0 S XX=$O(SRX(XX)) Q:'XX D
  1. ..S SN=SRX(XX)
  1. ..S $P(PSXLGTH," ",(20-($L($P(SRX(XX),"^")))))=""
  1. ..S SUS(CT)=$P(SN,"^")_PSXLGTH_$P(SN,"^",2),CT=CT+1
  1. ..K PSXLGTH,SN
  1. ; Set up return address info for print
  1. S RAD($S($G(COPAYES):1,1:3))="Pharmacy Service (119)"
  1. S RAD($S($G(COPAYES):2,1:4))=SNAME
  1. S RAD($S($G(COPAYES):3,1:5))=SADD1
  1. S RAD($S($G(COPAYES):4,1:6))=SADD2
  1. S RAD($S($G(COPAYES):5,1:7))=SADD3
  1. I $G(COPAYES) F ZZZ=6:1:15 S RAD(ZZZ)=""
  1. I '$G(COPAYES) F ZZZ=8:1:17 S RAD(ZZZ)=""
  1. S RAD($S($G(COPAYES):16,1:18))="Use the label above to mail the computer"
  1. S RAD($S($G(COPAYES):17,1:19))="copies back to us. Apply enough postage"
  1. S RAD($S($G(COPAYES):18,1:20))="to your envelope to ensure delivery."
  1. ;Print Return Address(Left),REF/NOREF/COPAY narr(middle),SUS(right)
  1. S CT=1
  1. TOF W ?54,PNAME," ",SSN," ",$P(RNOW,"@"),!
  1. I $D(COPAYES),($G(PSXBAR)) S X="S",X1=$X,X2=SSN1 W ?54,@IOBARON,X2,@IOBAROFF,*13
  1. PRINT I $G(F1),($G(F2)),($G(F3)) G EXIT
  1. W $G(RAD(CT)) I '$O(RAD(CT)) S F1=1
  1. I $G(NARR(CT))="COPAY",('$D(COPAYES)) S NARR("COPAY")="NO",F2=1
  1. I $G(NARR("COPAY"))="NO" G SUSP
  1. I $G(NARR(CT))="COPAY" G SUSP
  1. W ?54,$G(NARR(CT)) I '$O(NARR(CT)) S F2=1
  1. SUSP I '$D(SUS) S CT=CT+1,F3=1 W ! G PRINT
  1. W ?102,$G(SUS(CT)),! I '$O(SUS(CT)) S F3=1
  1. S CT=CT+1
  1. G PRINT
  1. EXIT K DIWF,DIWL,DIWR,Q2,Z1,Z2,XX
  1. K PADD1,PADD2,PADD3,PCITY,PNAME,PSTATE,PTEMP,PZIP,MAILID,W1,W2,W3,MRX
  1. K QTY,ID,TRUG,SPARE,REFCT,REFREM,REFLST,RX,SIG,SIG1,ADDR(2),SRX,CLINIC
  1. K RXCT,RFTXT,PHYS,REGMAIL,CLKRPH,FDT,COPAY,RENW,CAP,ISD,EXPDT,PSTAT,ZZT
  1. K TAYS,WARN,ADDR(3),LOT,MFG,NURSE,SSN,TEMP,ZX,VERPHARM,RX1,BAR,SIGN,Z
  1. K RESET,SSN1,SUS,ISD1,RAD,F1,F2,F3,COPAYES,NARR("COPAY"),PADD4
  1. W @IOF
  1. Q