1 | IVMUTQ ;ALB/ESD - Device Handling and Queueing Utility ; 03-FEB-93
|
---|
2 | ;;Version 2.0 ; INCOME VERIFICATION MATCH ;; 21-OCT-94
|
---|
3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
4 | ;
|
---|
5 | ; This routine is a generic interface to the device handler (^%ZIS)
|
---|
6 | ; and task manager (^%ZTLOAD). It will handle device opening and
|
---|
7 | ; closing and variable clean-up.
|
---|
8 | ;
|
---|
9 | ; Input (to be defined by the caller of the routine):
|
---|
10 | ;
|
---|
11 | ; IVMRTN - application routine entry point for output (required).
|
---|
12 | ; %ZIS - device call variable (set to "QMP" if not defined).
|
---|
13 | ; ZTDESC - description of task (set if not defined).
|
---|
14 | ; ZTSAVE - input parameters to be saved (set to IVMRTN).
|
---|
15 | ;
|
---|
16 | ; NOTE: Other optional input variables for %ZIS and %ZTLOAD calls
|
---|
17 | ; may be defined as described in KERNEL documentation.
|
---|
18 | ;
|
---|
19 | ;
|
---|
20 | EN I $G(IVMRTN)="" W !!,"Routine aborted...entry point not defined." G ENQ
|
---|
21 | I $D(%ZIS)#2=0 S %ZIS="QMP"
|
---|
22 | D ^%ZIS K %ZIS G:POP ENQ
|
---|
23 | I '$D(IO("Q")) U IO D @IVMRTN,^%ZISC,ENQ Q
|
---|
24 | ;
|
---|
25 | ; task job
|
---|
26 | S ZTRTN=@"IVMRTN",ZTSAVE("IVMRTN")=""
|
---|
27 | I '$D(ZTDESC) S ZTDESC="IVM UNKNOWN OPTION"
|
---|
28 | D ^%ZTLOAD
|
---|
29 | W !,$S($D(ZTSK):"Job has been queued. The task number is "_ZTSK_".",1:"Unable to queue this job.")
|
---|
30 | D HOME^%ZIS
|
---|
31 | ;
|
---|
32 | ENQ ; clean-up
|
---|
33 | K IO("Q"),IVMRTN,POP,ZTCPU,ZTDESC,ZTDTH,ZTIO,ZTKIL,ZTPRI,ZTRTN,ZTSAVE,ZTUCI,ZTSK
|
---|
34 | Q
|
---|