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

PSORMRXP.m

Go to the documentation of this file.
  1. PSORMRXP ;BIRM/JAM - REMOTE DATA INTEROPERABILITY REPORT ; 12/05/08
  1. ;;7.0;OUTPATIENT PHARMACY;**320**;DEC 1997;Build 2
  1. ;;
  1. ;;Per VHA Directive 10-93-142, this routine should not be modified.
  1. ;
  1. ;
  1. EN(PSODFN) ;- Remote medication entry point
  1. N PSONAM,PSODOB
  1. ; - get remote data if available.
  1. I '$$RDI^PSORMRX(PSODFN) Q
  1. ; Get Patient data
  1. S PSONAM=$$GET1^DIQ(2,PSODFN,.01)
  1. S PSODOB=$$FMTE^XLFDT($$GET1^DIQ(2,PSODFN,.03),"5ZM")
  1. D PRINT
  1. ;
  1. EXIT ; kill variables before existing...
  1. K ^TMP($J,"PSORDI")
  1. Q
  1. ;
  1. PRINT ;Print remote medication data
  1. N LC,DATA,QTY,ISDT,LFDT,FSIG,SIG,SITE,SITEO,STA,EXPDT,PSQFLG
  1. S (LC,PSQFLG)=0,SITEO=""
  1. F S LC=$O(^TMP($J,"PSORDI",PSODFN,LC)) Q:'LC D I PSQFLG Q
  1. .S DATA=$G(^TMP($J,"PSORDI",PSODFN,LC,0))
  1. .S EXPDT=$P(DATA,"^",7),STA=$P(DATA,"^",5)
  1. .S STA=$$STACHK^PSORMRX(STA,EXPDT) I '+STA Q
  1. .S STA=$P(STA,"^",2)
  1. .S SITE=$P(DATA,"^") I SITE'=SITEO D HEADER I PSQFLG Q
  1. .S QTY=$P($P(DATA,"^",6),";")
  1. .S ISDT=$P(DATA,"^",8),LFDT=$P(DATA,"^",9)
  1. .W !,$E($P(DATA,"^",4),1,13),?15,$E($P(DATA,"^",2),1,35)
  1. .W ?50,$S(STA="DISCONTINUED":"DC",1:$E(STA)),?53,$J(QTY,4)
  1. .W ?59,$$FMTE^XLFDT(ISDT,"5ZM"),?70,$$FMTE^XLFDT(LFDT,"5ZM"),!
  1. .I ($Y+5)>IOSL D HEADER I PSQFLG Q
  1. .S SITEO=SITE
  1. .I $D(^TMP($J,"PSORDI",PSODFN,LC,"SIG")) D
  1. ..K FSIG D GETSIG
  1. ..W ?15,"SIG: " S SIG=0
  1. ..F S SIG=$O(FSIG(SIG)) Q:'SIG D
  1. ...W ?20,FSIG(SIG),!
  1. ...I ($Y+5)>IOSL D HEADER I PSQFLG Q
  1. .W ?15,"PROVIDER: "_$P(DATA,"^",11),!
  1. Q
  1. ;
  1. GETSIG ;Get SIG for remote sites from ^TMP($J,"PSORDI",
  1. N RSIG,I
  1. F I=0:1 Q:'$D(^TMP($J,"PSORDI",PSODFN,LC,"SIG",I)) S RSIG(I+1)=^(I)
  1. I $O(RSIG(""))'="" D FMTSIG^PSORMRX
  1. Q
  1. ;
  1. I SITEO="" D HDR Q
  1. I ($Y+5)>IOSL D:$E(IOST,1,2)="C-" EOP D HDR Q:PSQFLG D HDR1 Q
  1. I SITE'=SITEO W !,SITE,!
  1. Q
  1. EOP ; prints to end of page
  1. N XX,DIR,X,Y
  1. I $E(IOST,1,2)="C-" D
  1. .F XX=1:1:(21-$Y) W !
  1. .S DIR(0)="E" D ^DIR I 'Y S PSQFLG=1
  1. Q
  1. ;
  1. HDR ; report header
  1. N I
  1. W @IOF
  1. W ?21,"MEDICATION PROFILE FROM OTHER VAMC(s)"
  1. W ?68,"Page: ",$G(PAGE,1),!
  1. W ?28,"Date Printed: "_$$FMTE^XLFDT(DT,"5ZM"),!
  1. W !,"Patient: "_PSONAM,?60,"DOB: ",PSODOB
  1. W ! F I=1:1:79 W "="
  1. W !!
  1. W ?3,"RX #",?15,"DRUG",?50,"ST",?54,"QTY",?59,"ISSUED",?68,"LAST FILLED"
  1. W ! F I=1:1:79 W "="
  1. W !,SITE,!
  1. S PAGE=$G(PAGE,1)+1
  1. Q
  1. ;
  1. HDR1 ;Print partial header
  1. I SITEO="" Q
  1. W $E($P(DATA,"^",4),1,13),?15,$E($P(DATA,"^",2),1,35)," Cont'd",!
  1. Q