1 | PSAVERA3 ;BHM/DB - RECORD TRANSACTION & UPDATE DRUG FILE;31JAN00
|
---|
2 | ;;3.0; DRUG ACCOUNTABILITY/INVENTORY INTERFACE;**21,42**; 10/24/97
|
---|
3 | ;
|
---|
4 | ;References to ^PSDRUG( are covered by IA #2095
|
---|
5 | ;References to ^DIC(51.5 are covered by IA #1931
|
---|
6 | ;
|
---|
7 | OU S DIC(0)="QAEMZ",DIC="^DIC(51.5,",DIC("A")="Select New Order Unit: "
|
---|
8 | D ^DIC G Q:+Y'>0 S PSAOU=+Y
|
---|
9 | I $G(PSAOU)=$G(PSAAOU) W !,"No change." G Q
|
---|
10 | S DIR("B")=$S($P($G(^PSDRUG(PSADRG,660)),"^",5)'="":$P($G(^PSDRUG(PSADRG,660)),"^",5),1:"Blank")
|
---|
11 | S DIR(0)="NO^::2",DIR("A")="DISPENSE UNITS PER ORDER UNIT"
|
---|
12 | S DIR("?")="Enter the number of dispense units contained in one order unit",DIR("??")="^D DUOUHELP^PSAPROC3"
|
---|
13 | D ^DIR K DIR I $G(DTOUT)!($G(DUOUT)) S PSAOUT=1 G Q
|
---|
14 | S PSANDUOU=+Y
|
---|
15 | S $P(^PSD(58.811,PSAIEN,1,PSAIEN1,1,PSALINE,2),"^")=+Y S:+Y PSASET=1
|
---|
16 | ;
|
---|
17 | DRG K PSASUB S X1=0 F S X1=$O(^PSDRUG(PSADRG,1,X1)) Q:X1'>0 S DATA=$G(^PSDRUG(PSADRG,1,X1,0)) I $P(DATA,"^",1)=PSANDC S PSASUB=X1
|
---|
18 | W !,"Old Dispense Units Per Order Unit: "_$P($G(^PSDRUG(PSADRG,660)),"^",5),?45,"Price Per Disp. Unit: "_$J($P($G(^PSDRUG(PSADRG,660)),"^",6),8,2)
|
---|
19 | W !,"New Dispense Units Per Order Unit: "_PSANDUOU
|
---|
20 | I PSANDUOU=$P($G(^PSDRUG(PSADRG,660)),"^",5) W ?45," unchanged " G UPDATE
|
---|
21 | W ?64,$J((PSAPRICE/PSANDUOU),8,2)
|
---|
22 | UPDATE ;update file
|
---|
23 | I $G(PSANDC)'="",$L(PSANDC)'=11 D
|
---|
24 | .I $G(PSANDC)'="" S X=11,X1=$L(PSANDC) F X=1:1:(11-X1) S PSANDC="0"_PSANDC ;*42 11 digit NDC
|
---|
25 | .S NDC0=1 F X=1:1:$L(PSANDC) I $E(PSANDC,X)'=0&($E(PSANDC,X)'="-") K NDC0
|
---|
26 | .I $G(NDC0)=1 S PSANDC=""
|
---|
27 | D PSANDC1^PSAHELP S PSADASH=PSANDCX K PSANDCX
|
---|
28 | I $P($G(^PSDRUG(PSADRG,2)),"^",4)'=$G(PSADASH) S DIE="^PSDRUG(",DA=PSADRG,DR="31////^S X=PSADASH" D ^DIE
|
---|
29 | S PSANPDU=PSAPRICE/PSANDUOU
|
---|
30 | W !,"Updating Drug File's Synonym data"
|
---|
31 | I $G(PSASUB)=""!('$D(^PSDRUG(PSADRG,1))) S DA(1)=PSADRG,DIC="^PSDRUG("_DA(1)_",1,",DIC(0)="L",X=PSANDC,DLAYGO=50 D ^DIC S PSASUB=+Y
|
---|
32 | S DA(1)=PSADRG,DIE="^PSDRUG("_DA(1)_",1,",DA=PSASUB,DR="401////^S X=PSAOU;403////^S X=PSANDUOU;404////^S X=PSANPDU" D ^DIE
|
---|
33 | W !,"Updating Drug File's Dispense Units Per Order Unit & Price Per Dispense Unit"
|
---|
34 | K DR,DIE
|
---|
35 | S DIE="^PSDRUG("_DA(1),DR="12///^S X=PSAOU;13////^S X=PSAPRICE;Q;15////^S X=PSANDUOU" D ^DIE
|
---|
36 | S PSADJFLD="O",PSADJ=PSAOU,PSAREA="" D RECORD^PSAVER2
|
---|
37 | W !,"making adjustment in DRUG ACCOUNTABILITY ORDER file"
|
---|
38 | W !,"TAKING A BREAK !?"
|
---|
39 | Q
|
---|
40 | Q Q
|
---|