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

APSQPMI.m

Go to the documentation of this file.
  1. APSQPMI ;IHS/ASDS/ENM/POC - PRINTS THE PATIENT MEDICATION SHEETS ;09-Oct-2008 11:27;SM
  1. ;;7.0;IHS PHARMACY MODIFICATIONS;**1007**;Sep 23, 2004
  1. ; Modified - IHS/CIA/PLS - 01/21/04
  1. ; IHS/MSC/PLS - 08/19/08 - Line EN1+8
  1. EN ;EP - NORMAL ENTRY POINT
  1. S PSNDFN=DFN
  1. I ('$D(APSPCPP))!($G(APSPCPP)=ION) G PMI
  1. TSK F I="PPL","APSPCPP","PSNDFN" S ZTSAVE(I)=""
  1. S ZTRTN="PMI^APSQPMI"
  1. S ZTDESC="PRINTS PATIENT MED SHEETS"
  1. S ZTDTH=$H
  1. S ZTIO=APSPCPP
  1. S ZTREQ="@"
  1. D ^%ZTLOAD
  1. Q
  1. ;
  1. EN1 ;ENTRY FROM PATIENT NAME
  1. N PPL,PSOSD,DFN,APSQRXN,APSQIEN,APSQDRG,APSQ
  1. N PSRX,PSNDFN,NAM,APSDNAM,APSDOC,APSPNDC,CR,DFN,ED,ED1,ED2,ED3,NDC,NUM
  1. N P2,PG,PPI,PPL,PS,PSODFN,SSN,SEX,VA,VADM,XNDC
  1. N Z,PSCNT,PSOCT,PSODTCUT,PSOERR,PSOLIST,PSOOPT,PSOSTA,RXN,STP,STR
  1. N J,JJ,IEN,DIWI,DIW,DIWT,DN,APSPIRN,APSPZDT
  1. N POP,VAERR,CNT,DIR,DIWTC,DOB,DRG,IOHG,DIWX,IOBS
  1. D PAT^APSPNUM ;IHS/CIA/PLS - 01/21/04
  1. Q:'$D(PSODFN) ; IHS/MSC/PLS - 08/19/08
  1. S PSONUM="LIST"
  1. D EN^APSPNUM
  1. G:'$D(PSOLIST) END
  1. S PPL=PSOLIST(1) ;BETTER WATCH THIS AS IT CAN BE TOO LONG
  1. G EN
  1. ;
  1. PMI ;SET UP AND PRINT
  1. I $E(IOST)="P" S APSQCOM=$P($G(^%ZIS(2,IOST(0),12.1)),"^"),APSQRSET=$P($G(^(6)),"^") W:APSQCOM]"" @APSQCOM ;COMPRESS IF A PRINTER TO 16 PITCH
  1. Q:'$D(PPL) ;NO RXS TO PRINT SO NO MED SHEETS TO PRINT EITHER
  1. F I=1:1 S APSQIEN=$P(PPL,",",I) Q:'APSQIEN D
  1. .S APSQDRG=$P(^PSRX(APSQIEN,0),"^",6)
  1. .Q:$$TEST(APSQDRG)
  1. .S APSQRXN=+^PSRX(APSQIEN,0)
  1. .S PPI=^PSDRUG(APSQDRG,"ND")
  1. .S PPI=$P(^PSNDF(+PPI,5,$P(PPI,"^",3),0),"^",7)
  1. .S APSQ(I)=PPI_"^"_APSQDRG_"^"_APSQRXN ;SO ONLY GET ONE OF SHEET EVEN IF TWO DRUGS POINT TO SAME PATIENT INFORMATION SHEET
  1. .Q
  1. S TYPE=$S($G(APSQTYPE):APSQTYPE,1:2) ;IHS/OKCAO/POC APSQTYPE IS IN APSPCONTROL FILE FIELD 301
  1. S NUM=1
  1. PRINT S JJ=0 F S JJ=$O(APSQ(JJ)) Q:'JJ S PPI=+APSQ(JJ),DRG=$P(APSQ(JJ),"^",2),PSRX=$P(APSQ(JJ),"^",3) D DOONE^PSNPPIP
  1. END Q
  1. TEST(N) ;TEST FOR ENTRY OF PATIENT MED SHEET IN ^PSPPI GLOBAL
  1. N TEST S TEST=$G(^PSDRUG(N,"ND"))
  1. S TEST=$P($G(^PSNDF(+TEST,5,+$P(TEST,"^",3),0)),"^",7)
  1. I TEST,$D(^PSPPI(+TEST)),$S('$G(^PSDRUG(+N,"I")):1,DT'>^("I"):1,1:0) Q 0
  1. E Q 1 ;1=NO GO