source: WorldVistAEHR/trunk/r/INCOME_VERIFICATION_MATCH-IVM/IVMBULK2.m@ 648

Last change on this file since 648 was 613, checked in by George Lilly, 15 years ago

initial load of WorldVistAEHR

File size: 7.8 KB
Line 
1IVMBULK2 ;ALB/KCL - IVM/ENROLLMENT Extract Utilities; 23-SEP-1997
2 ;;2.0;INCOME VERIFICATION MATCH;**9**; 21-OCT-94
3 ;
4 ;
5GET(IVMARRY) ; --
6 ; Description: Used to obtain a record from the IVM Extract Management file into the local IVMARRY array.
7 ;
8 ; Input: None
9 ;
10 ; Output:
11 ; Function Value - returns 1 if success, 0 if failure.
12 ; IVMARRY - this is the name of a local array, it should be passed by
13 ; reference. If the function is successful this array will
14 ; contain the record.
15 ;
16 ; Subscript Field Name
17 ; ========== =======================
18 ; "HOST" Host File Name
19 ; "DIR" Directory
20 ; "PROC" # of Patients Processed
21 ; "TASK" Task Number
22 ; "START" Date/Time Job Started
23 ; "STOP" Date/Time Job Stopped
24 ; "TERM" Job Terminated?
25 ; "LASTPAT" Last Patient Processed
26 ; "PROJECT" Projected Completion Date/Time
27 ; "EXTRACT" # of Patients Extracted
28 ; "FILES" Number of Host Files
29 ; "ERROR" Error
30 ;
31 N NODE,SUCCESS
32 S SUCCESS=0
33 ;
34 I '$D(^IVM(301.63,1,0)) G GETQ
35 ;
36 K IVMARRY S IVMARRY=""
37 S NODE=$G(^IVM(301.63,1,0))
38 ;
39 S IVMARRY("HOST")=$P(NODE,"^")
40 S IVMARRY("DIR")=$P(NODE,"^",2)
41 S IVMARRY("PROC")=$P(NODE,"^",3)
42 S IVMARRY("TASK")=$P(NODE,"^",4)
43 S IVMARRY("START")=$P(NODE,"^",5)
44 S IVMARRY("STOP")=$P(NODE,"^",6)
45 S IVMARRY("TERM")=$P(NODE,"^",7)
46 S IVMARRY("LASTPAT")=$P(NODE,"^",8)
47 S IVMARRY("PROJECT")=$P(NODE,"^",9)
48 S IVMARRY("EXTRACT")=$P(NODE,"^",10)
49 S IVMARRY("FILES")=$P(NODE,"^",11)
50 S NODE=$G(^IVM(301.63,1,10))
51 S IVMARRY("ERROR")=$P(NODE,"^")
52 ;
53 S SUCCESS=1
54 ;
55GETQ Q SUCCESS
56 ;
57 ;
58STORE(IVMARRY) ; --
59 ; Description: Used to store the processing information for the
60 ; execution of the initial extract in the IVM Extract Management file.
61 ;
62 ; Input:
63 ; IVMARRY - this is the name of a local array, it should be passed by
64 ; reference. This array should contain the processing
65 ; information to be stored. Missing subscripts will cause
66 ; the field to be deleted. "HOST" is required.
67 ;
68 ; Subscript Field Name
69 ; ========== =======================
70 ; "HOST" Host File Name
71 ; "DIR" Directory
72 ; "PROC" # of Patients Processed
73 ; "TASK" Task Number
74 ; "START" Date/Time Job Started
75 ; "STOP" Date/Time Job Stopped
76 ; "TERM" Job Terminated?
77 ; "LASTPAT" Last Patient Processed
78 ; "PROJECT" Projected Completion Date/Time
79 ; "EXTRACT" # of Patients Extracted
80 ; "FILES" Number of Host Files
81 ; "ERROR" Error
82 ;
83 ; Output:
84 ; Function Value - returns 1 if success, 0 if failure.
85 ;
86 N SUCCESS
87 S SUCCESS=1
88 ;
89 I $G(IVMARRY("HOST"))="" S SUCCESS=0 G STOREQ
90 I '$D(^IVM(301.63,1,0)) D G:('SUCCESS) STOREQ
91 .S DATA(.01)=IVMARRY("HOST")
92 .I '$$ADD^DGENDBS(301.63,,.DATA) S SUCCESS=0
93 ;
94 ;
95 S DATA(.01)=IVMARRY("HOST")
96 S DATA(.02)=$G(IVMARRY("DIR"))
97 S DATA(.03)=$G(IVMARRY("PROC"))
98 S DATA(.04)=$G(IVMARRY("TASK"))
99 S DATA(.05)=$G(IVMARRY("START"))
100 S DATA(.06)=$G(IVMARRY("STOP"))
101 S DATA(.07)=$G(IVMARRY("TERM"))
102 S DATA(.08)=$G(IVMARRY("LASTPAT"))
103 S DATA(.09)=$G(IVMARRY("PROJECT"))
104 S DATA(.1)=$G(IVMARRY("EXTRACT"))
105 S DATA(.11)=$G(IVMARRY("FILES"))
106 S DATA(10)=$G(IVMARRY("ERROR"))
107 I '$$UPD^DGENDBS(301.63,1,.DATA) S SUCCESS=0
108 ;
109STOREQ Q SUCCESS
110 ;
111 ;
112INIT(IVMARRY) ; --
113 ; Description: Used to initilized IVM Extract Management record in the local IVMARRY array.
114 ;
115 ; Input: None
116 ;
117 ; Output:
118 ; Function Value - returns 1 if success, 0 if failure.
119 ; IVMARRY - this is the name of a local array, it should be passed by
120 ; reference. If the function is successful this array will
121 ; contain the initialized record.
122 ;
123 ; Subscript Field Name
124 ; ========== =======================
125 ; "HOST" Host File Name
126 ; "DIR" Directory
127 ; "PROC" # of Patients Processed
128 ; "TASK" Task Number
129 ; "START" Date/Time Job Started
130 ; "STOP" Date/Time Job Stopped
131 ; "TERM" Job Terminated?
132 ; "LASTPAT" Last Patient Processed
133 ; "PROJECT" Projected Completion Date/Time
134 ; "EXTRACT" # of Patients Extracted
135 ; "FILES" Number of Host Files
136 ; "ERROR" Error
137 ;
138 K IVMARRY S IVMARRY=""
139 ;
140 S IVMARRY("HOST")=""
141 S IVMARRY("DIR")=""
142 S IVMARRY("PROC")=""
143 S IVMARRY("TASK")=""
144 S IVMARRY("START")=""
145 S IVMARRY("STOP")=""
146 S IVMARRY("TERM")=""
147 S IVMARRY("LASTPAT")=""
148 S IVMARRY("PROJECT")=""
149 S IVMARRY("EXTRACT")=""
150 S IVMARRY("FILES")=""
151 S IVMARRY("ERROR")=""
152 ;
153INITQ Q 1
154 ;
155 ;
156PATH(IVMARRY) ; --
157 ; Description: Ask user for for valid host file directory.
158 ;
159 ; Input:
160 ; IVMARRY - a local array where the extract input parameters will be
161 ; stored, pass by reference
162 ;
163 ; Output:
164 ; Function Value - returns 1 if successful, 0 otherwise
165 ; IVMARRY("DIR") - directory
166 ;
167 N DIR,DTOUT,DUOUT,DIROUT,DIRUT,SUCCESS,Y
168 ;
169 S SUCCESS=0
170 ;
171 W !!,?15,"* * * * * I M P O R T A N T * * * * *"
172 W !,?5,"The host files created by this job will be placed in the"
173 W !,?5,"current working directory. A directory other than the"
174 W !,?5,"current working directory may also be selected."
175 W !!,?5,"Please check the following to ensure the extract runs correctly."
176 W !!,?10,"1) The directory you have chosen the extract to run in"
177 W !,?13,"is a valid directory."
178 W !!,?10,"2) In order for TaskMan to have access to the directory, the"
179 W !,?13,"WORLD file protection must be 'RW' (Read and Write). For"
180 W !,?13,"NT/OpenM systems, ensure that the directory is not read only.",!
181 ;
182 ; ask directory
183 S DIR("A")="Select Directory"
184 S DIR("B")=$$PWD^%ZISH,DIR(0)="F^3:50"
185 D ^DIR
186 G:$D(DTOUT)!($D(DUOUT))!($D(DIRUT))!($D(DIROUT)) PATHQ
187 ;
188 S IVMARRY("DIR")=Y
189 S SUCCESS=1
190 ;
191PATHQ Q SUCCESS
192 ;
193 ;
194GETCONST(IVMARRY) ; --
195 ; Description: Places enrollment extract constants into the local IVMARRY array.
196 ;
197 ; Input: None
198 ;
199 ; Output:
200 ; Function Value - returns 1 if success, 0 if failure.
201 ; IVMARRY - this is the name of a local array, it should be passed by
202 ; reference. If the function is successful this array will
203 ; contain the extract constants.
204 ;
205 ; Subscript Description
206 ; ========== =======================
207 ; "BEGDT" as begin date/time for extract search
208 ; "HOST" as name of host file
209 ; "MAILGRP" as HEC mail group for notification msg
210 ; "MSGMAX" as maximum # of HL7 msgs each host file may contain
211 ; "PERCNT" as # of patients expected to be extracted
212 ; "AVG100" as average time to extract 100 patients in seconds
213 ; "SIZE" as average size of single patient record in bytes
214 ;
215 ;
216 K IVMARRY
217 S IVMARRY=""
218 ;
219 S IVMARRY("BEGDT")=2951231.2359
220 S IVMARRY("HOST")="HECHOST"_$P($$SITE^VASITE,"^",3)
221 S IVMARRY("MAILGRP")="G.ENROLLMENT EXTRACT@IVM.VA.GOV"
222 S IVMARRY("MSGMAX")=10000
223 S IVMARRY("PERCNT")=31
224 S IVMARRY("AVG100")=42
225 S IVMARRY("SIZE")=1050
226 ;
227CONSTQ Q 1
228 ;
229 ;
230INQUIRE(ROOT,IEN) ; --
231 ; Description: Display data from file entry.
232 ;
233 ; Input:
234 ; ROOT - global root of the file
235 ; IEN - IEN of file entry
236 ;
237 N DA,DIC
238 ;
239 S DIC=ROOT,DA=IEN
240 D EN^DIQ
241 Q
242 ;
243 ;
244LOCK(IEN) ; --
245 ; Description: This lock is used to prevent another process from editing
246 ; IVM Extract Management record.
247 ;
248 ; Input:
249 ; IEN - Internal entry number of IVM EXTRACT MANAGEMENT file
250 ;
251 ; Output:
252 ; Function Value - Returns 1 if the lock was successful, 0 otherwise
253 ;
254 I $G(IEN) L +^IVM(IEN,301.63):10
255 Q $T
256 ;
257 ;
258UNLOCK(IEN) ; --
259 ; Description: Used to release a lock created by $$LOCK.
260 ; Input:
261 ; IEN - Internal entry number of IVM EXTRACT MANAGEMENT file
262 ;
263 ; Output: None
264 ;
265 I $G(IEN) L -^IVM(IEN,301.63)
266 Q
Note: See TracBrowser for help on using the repository browser.