1 | PPPPRT9 ;ALB/DMB - MEDICATION PROFILE PRINT ROUTINE ; 6/25/92
|
---|
2 | ;;V1.0;PHARMACY PRESCRIPTION PRACTICE;**10,17**;APR 7,1995
|
---|
3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | ;
|
---|
5 | PLP(PATDFN) ; Print Label Profile
|
---|
6 | ;
|
---|
7 | N VISARRY,DI
|
---|
8 | S VISARRY="^TMP(""PPP"",$J,""VISIT"")"
|
---|
9 | ;
|
---|
10 | Q:$$GETVIS^PPPGET7(PATDFN,VISARRY)<1
|
---|
11 | D PRPROFIL(PATDFN,VISARRY)
|
---|
12 | K @VISARRY
|
---|
13 | Q
|
---|
14 | ;
|
---|
15 | PRPROFIL(PATDFN,ARRAYNM,OBFLAG) ; Print the med profile
|
---|
16 | ;
|
---|
17 | N PPPDOB,PPPNAME,PPPSSN,PPPTMP,BNR1,BNR3,DA,DIC,DIQ,DIR,DR,DI,D0
|
---|
18 | N DTOUT,DUOUT,I,NARRATIV,ND,OUT,PAGE,PARMERR,PHRMARRY,RVRSDT,RXIDX
|
---|
19 | N STANAME,STAPTR,TMP,Y
|
---|
20 | ;
|
---|
21 | S PARMERR=-9001
|
---|
22 | ;
|
---|
23 | I '$D(ARRAYNM) Q PARMERR
|
---|
24 | I '$D(OBFLAG) S OBFLAG="O"
|
---|
25 | I OBFLAG="" S OBFLAG="O"
|
---|
26 | S PHRMARRY="^TMP(""PPP"",$J,""PHR"")"
|
---|
27 | S PAGE=1,OUT=""
|
---|
28 | S BNR1="PPP - Medication Profile from other VAMC(s)"
|
---|
29 | S BNR3="Date Printed: "_$$DTE^PPPUTL1(DT,0)
|
---|
30 | ;
|
---|
31 | ; Get the local name, SSN and DOB
|
---|
32 | ;
|
---|
33 | S DIC="^DPT(",DA=PATDFN,DR=".01;.03;.09",DIQ="PPPTMP" D EN^DIQ1
|
---|
34 | S PPPNAME=PPPTMP(2,PATDFN,.01)
|
---|
35 | S PPPDOB=PPPTMP(2,PATDFN,.03)
|
---|
36 | S PPPSSN=PPPTMP(2,PATDFN,.09)
|
---|
37 | K PPPTMP,DIC,DR,DA,DTOUT,DUOUT
|
---|
38 | ;
|
---|
39 | ; Get the prescription data
|
---|
40 | ;
|
---|
41 | I OBFLAG="B" S TMP=$$GLPHRM^PPPGET8(PATDFN,PHRMARRY)
|
---|
42 | S TMP=$$GETPDX^PPPGET2(ARRAYNM,PHRMARRY)
|
---|
43 | ;
|
---|
44 | ; If there is anything to print... print it.
|
---|
45 | ;
|
---|
46 | I $D(@PHRMARRY) D
|
---|
47 | .D HEADING1,NARRATIV
|
---|
48 | K @PHRMARRY
|
---|
49 | Q
|
---|
50 | ;
|
---|
51 | HEADING1 ; Write the page heading, Pause if a crt.
|
---|
52 | ;
|
---|
53 | I PAGE>1,$E(IOST,1,2)="C-" D Q:OUT["^"
|
---|
54 | .S DIR(0)="E" D ^DIR
|
---|
55 | .I +Y=0 S OUT="^"
|
---|
56 | W @IOF,!
|
---|
57 | W ?((IOM-$L(BNR1))\2),BNR1,?(IOM-15),"Page ",PAGE,!
|
---|
58 | W ?((IOM-$L(BNR3))\2),BNR3,!!
|
---|
59 | W !,"Patient: ",PPPNAME_" ("_PPPSSN_")",?60,"DOB: ",PPPDOB
|
---|
60 | W ! F I=1:1:IOM W "="
|
---|
61 | Q
|
---|
62 | ;
|
---|
63 | HEADING2 ; Write the page heading, Pause if a crt.
|
---|
64 | ;
|
---|
65 | I PAGE>1,($E(IOST,1,2)="C-"),($D(NARRATIV)) D Q:OUT["^"
|
---|
66 | .S DIR(0)="E" D ^DIR
|
---|
67 | .I +Y=0 S OUT="^"
|
---|
68 | W !,"RX #",?9,"DRUG",?41,"ST",?45,"QTY",?51,"ISSUED",?65,"LAST FILLED"
|
---|
69 | W ! F I=1:1:IOM W "="
|
---|
70 | Q
|
---|
71 | ;
|
---|
72 | NARRATIV ; Print the narratives.
|
---|
73 | ; If PSTYPE is defined then this is part of the info/action profile
|
---|
74 | ; and we don't want to print the narrative.
|
---|
75 | ;
|
---|
76 | S NARRATIV=1
|
---|
77 | S STANAME=""
|
---|
78 | I $D(@PHRMARRY@(0))&('$D(PSTYPE)) D
|
---|
79 | .F S STANAME=$O(@PHRMARRY@(0,STANAME)) Q:STANAME=""!(OUT["^") D
|
---|
80 | ..I $Y+5>IOSL S PAGE=PAGE+1 D HEADING1 Q:OUT["^"
|
---|
81 | ..W !!,"NARRATIVE FROM ",STANAME
|
---|
82 | ..W !," => ",@PHRMARRY@(0,STANAME)
|
---|
83 | .W !
|
---|
84 | K NARRATIV
|
---|
85 | ;
|
---|
86 | DRUGS I $Y+8<IOSL D HEADING2
|
---|
87 | S RVRSDT=0
|
---|
88 | F S RVRSDT=$O(@PHRMARRY@(RVRSDT)) Q:RVRSDT'>0!(OUT["^") D
|
---|
89 | .S STAPTR=""
|
---|
90 | .F S STAPTR=$O(@PHRMARRY@(RVRSDT,STAPTR)) Q:STAPTR=""!(OUT["^") D
|
---|
91 | ..S RXIDX=-1
|
---|
92 | ..F S RXIDX=$O(@PHRMARRY@(RVRSDT,STAPTR,RXIDX)) Q:RXIDX=""!(OUT["^")!(RXIDX="PID") D
|
---|
93 | ...I $Y+6>IOSL S PAGE=PAGE+1 D HEADING1 Q:OUT["^" D HEADING2
|
---|
94 | ...S ND=$G(@PHRMARRY@(RVRSDT,STAPTR,RXIDX)) Q:ND=""
|
---|
95 | ...I $P(ND,"^",8)'="",$D(^TMP("PPP",$J,"VISIT",$P(ND,"^",8),1)),$P(^TMP("PPP",$J,"VISIT",$P(ND,"^",8),1),"^",1)'=PPPNAME W !,?9," ** WARNING ** Patient is identified as : ",$P(^TMP("PPP",$J,"VISIT",$P(ND,"^",8),1),"^",1)," not ",PPPNAME
|
---|
96 | ...W !!,$P(ND,"^"),?9,$E($P(ND,"^",2),1,30),?41,$E($P(ND,"^",3),1),?45,$P(ND,"^",4),?51,$$SLASHDT^PPPCNV1($P(ND,"^",5)),?65,$$SLASHDT^PPPCNV1($P(ND,"^",6))
|
---|
97 | ...W !,?9,"SIG: ",$E($P(ND,"^",7),1,25),?40,"ISSUED AT ",$P(ND,"^",8)," (",$P(ND,"^",9),")"
|
---|
98 | ...W !,?9,"PROVIDER: ",$P(ND,"^",10)
|
---|
99 | K @PHRMARRY
|
---|
100 | Q
|
---|