1 | PSUPR0 ;BIR/PDW - PROCUREMENT EXTRACT ENTRY ROUTINE ;25 AUG 1998
|
---|
2 | ;;4.0;PHARMACY BENEFITS MANAGEMENT;;MARCH, 2005
|
---|
3 | ;
|
---|
4 | ;DBIA's
|
---|
5 | ; Reference to file 4.3 supported by DBIA 10091
|
---|
6 | ; Reference to file 4 supported by DBIA 10090
|
---|
7 | ;
|
---|
8 | EN ;EP from PSUCP
|
---|
9 | ;
|
---|
10 | ; pull variables from ^XTMP
|
---|
11 | ; PSUJOB must exist and must be the job number used to store the data desired for this session.
|
---|
12 | I '$D(PSUJOB) S PSUJOB=$J
|
---|
13 | S PSUVARS="PSUSDT,PSUEDT,PSUMON,PSUDUZ,PSUMASF,PSUPBMG,PSUSMRY,ZTIO,PSUSNDR,PSUOPTS"
|
---|
14 | F I=1:1:$L(PSUVARS,",") S @$P(PSUVARS,",",I)=$P(^XTMP("PSU_"_PSUJOB,1),U,I)
|
---|
15 | PULLQ ;Q
|
---|
16 | S PSUPRJOB=PSUJOB
|
---|
17 | S PSUPRSUB="PSUPR_"_PSUPRJOB
|
---|
18 | ; Setup ^XTMP
|
---|
19 | S X1=DT,X2=6 D C^%DTC
|
---|
20 | K ^XTMP(PSUPRSUB)
|
---|
21 | S ^XTMP(PSUPRSUB,0)=X_U_DT_"^ PBM Extract - Procurement Module "
|
---|
22 | ;
|
---|
23 | ; Store Important variables
|
---|
24 | K X
|
---|
25 | S X="PSUSDT,PSUEDT,PSUMON,PSUDUZ,PSUMASF,PSUPBMG,PSUSMRY,PSUSNDR,PSUPRSUB,PSUJOB,PSURTN,PSUOPTN"
|
---|
26 | F I=1:1 S Y=$P(X,",",I) Q:Y="" I $D(@Y) S X(Y)=@Y
|
---|
27 | M ^XTMP(PSUPRSUB,"SAVE")=X
|
---|
28 | K X
|
---|
29 | ; Process the Procurement Files
|
---|
30 | ; Code for CoreFLS * NOTE: This will be commented out as of 7/1/04
|
---|
31 | ;until such time as CoreFLS code is released.
|
---|
32 | ;S X="PSAFLS" X ^%ZOSF("TEST")
|
---|
33 | ;I $T D
|
---|
34 | ;.S PSUPRSUB="PSUPR_"_$J
|
---|
35 | ;.S PSUFLSFG="" ;FLAG TO SIGNAL COREFLS IN EFFECT
|
---|
36 | ;.D EN^PSUPR2
|
---|
37 | ;.D EN^PSUPR3
|
---|
38 | ;.K PSUFLSFG
|
---|
39 | ;I '$T D ;CoreFLS code. Commented out. When CoreFLS code is
|
---|
40 | ;released put the next 3 lines inside a dot structure.
|
---|
41 | D EN^PSUPR1 ; file 442
|
---|
42 | D EN^PSUPR2 ; file 58.811
|
---|
43 | D EN^PSUPR3 ; file 58.81
|
---|
44 | K PSUMSG
|
---|
45 | D EN^PSUPR4(.PSUMSG) ; detailed mail message to Hines
|
---|
46 | D EN^PSUPR5 ;Summary Mail Routines
|
---|
47 | ;
|
---|
48 | ; return counters to master routine
|
---|
49 | S PSUSUB="PSU_"_PSUJOB
|
---|
50 | I $D(^XTMP(PSUSUB)),PSUDUZ,PSUPBMG M ^XTMP(PSUSUB,"CONFIRM")=PSUMSG
|
---|
51 | ;D EN^PSUPR5 ; Summary Mail Routines
|
---|
52 | Q
|
---|
53 | PRINT ;EP Tasking Entry Point for PRINT REPORT
|
---|
54 | D EN^PSUPR6
|
---|
55 | Q
|
---|
56 | EXIT ;EP Tasking Entry Point for Cleaning out XTMP and Variables
|
---|
57 | ; Restore Important Variables
|
---|
58 | K X
|
---|
59 | M X=^XTMP(PSUPRSUB,"SAVE")
|
---|
60 | K ^XTMP(PSUPRSUB)
|
---|
61 | D VARKILL^PSUTL
|
---|
62 | ; Restore Important Variables CONTINUED
|
---|
63 | S Y="" F S Y=$O(X(Y)) Q:Y="" S @Y=X(Y)
|
---|
64 | K X
|
---|
65 | Q
|
---|
66 | ;
|
---|
67 | CLEAR ;EP clear ^XTMP of PSUPR nodes
|
---|
68 | S X="PSUPR"
|
---|
69 | F S X=$O(^XTMP(X)) Q:X="" Q:$E(X,1,5)'="PSUPR" W !,X K ^XTMP(X)
|
---|
70 | Q
|
---|
71 | MANUAL ;EP Manual entry point for Running Procurement Module to
|
---|
72 | ; exercise detailed message, summary messages, & Reports
|
---|
73 | ; Some startup code borrowed from PSUCP for dates
|
---|
74 | W !,"Mail messages are sent to the user only at this time",!
|
---|
75 | S PSUMON=$E(DT,1,5),(PSUSMRY,PSUMASF,PSUPBMG)=1,PSUDUZ=DUZ
|
---|
76 | S X=$P($G(^XMB(1,1,"XUS")),U,17),PSUSNDR=+$P(^DIC(4,X,99),U)
|
---|
77 | K %DT
|
---|
78 | S %DT="AEX",%DT(0)="-NOW",%DT("A")="STARTING Procurement Extract Date or ""^"" to quit : " D ^%DT
|
---|
79 | I X["^" Q
|
---|
80 | I 'Y Q
|
---|
81 | S PSUSDT=+Y
|
---|
82 | K %DT W !
|
---|
83 | S %DT="AEX",%DT(0)=PSUSDT,%DT("A")="ENDING Procurement Extract Date or ""^"" to restart: " D ^%DT
|
---|
84 | I X["^" G MANUAL
|
---|
85 | I 'Y G MANUAL
|
---|
86 | S PSUEDT=+Y
|
---|
87 | W !
|
---|
88 | S Y=PSUSDT D DD^%DT W !,"Starting Procurement Date",?30,Y
|
---|
89 | S Y=PSUEDT D DD^%DT W !,"Ending Procurement Date:",?30,Y
|
---|
90 | K DIR W !
|
---|
91 | S DIR(0)="Y",DIR("A")="Correct ? ",DIR("B")="YES" D ^DIR
|
---|
92 | I 'Y G MANUAL
|
---|
93 | K DIR W !
|
---|
94 | W !,"You can not queue to your terminal",!
|
---|
95 | W !,"You can queue to a host file",!
|
---|
96 | S DIR(0)="Y",DIR("A")="Do yo want reports printed ? ",DIR("B")="YES" D ^DIR
|
---|
97 | K DIR W !
|
---|
98 | S PSURP=+Y
|
---|
99 | S PSURC="COMPUTE^PSUPR0"
|
---|
100 | I PSURP S PSURP="PRINT^PSUPR0" K PSUIOP
|
---|
101 | E K PSURP S PSUIOP="" ; MAIL MESSAGES ONLY
|
---|
102 | S PSURX="EXIT^PSUPR0"
|
---|
103 | S PSUNS="PSUPR*,PSUSDT,PSUEDT,PSU*"
|
---|
104 | D EN^PSUDBQUE
|
---|
105 | Q
|
---|