source: IHS-VA_UTILITIES-XB/XBDBQDOC.m@ 641

Last change on this file since 641 was 641, checked in by Sam Habiel, 14 years ago

Initial commit of XB, move away from sf.net.
Includes kids file and documentation.

File size: 2.2 KB
Line 
1XBDBQDOC ; IHS/ADC/GTH - DOUBLE QUEUING SHELL HANDLER DOCUMENTATION ; [ 02/07/97 3:02 PM ]
2 ;;4.0;XB;;Jul 20, 2009;Build 2
3 ;
4 ;----------------------
5 ;NOTES FOR PROGRAMMERS|
6 ;----------------------
7 ;
8 ; %ZIS with "PQM" is called by XBDBQUE if '$D(XBIOP).
9 ;
10 ; The user will be asked to queue if queuing has not been
11 ; selected.
12 ;
13 ; IO variables as necessary are automatically stored.
14 ;
15 ; XBxx variables are killed after loading into an XB array.
16 ;
17 ; XBDBQUE can be nested.
18 ;
19 ; The compute and print phases can call XBDBQUE individually
20 ; (XBIOP is required).
21 ;
22 ; The appropriate %ZTSK node is killed.
23 ;
24 ;EX:
25 ; S XBRC="C^AGTEST",XBRP="P^AGTEST",XBRX="END^AGTEST",XBNS="AG"
26 ; D ^XBDBQUE ;handles foreground and tasking
27 ; Q
28 ;
29 ; VARIABLES NEEDED FROM CALLING PROGRAM
30 ;
31 ;MANDATORY
32 ; EITHER XBRC-Compute Routine or XBRP-Print Routine.
33 ;
34 ;OPTIONAL
35 ; XBRC-Compute Routine.
36 ; XBRP-Print Routine.
37 ; XBRX-Exit Routine that cleans variables (HIGHLY SUGGESTED).
38 ; XBNS-name space of variables to auto load in
39 ; ZTSAVE("NS*")=""
40 ; ="DG;AUPN;PS;..." ; (will add '*'if missing).
41 ; XBNS("xxx")="" - ZTSAVE variable arrays where xxx is as
42 ; described for ZTSAVE("xxxx")="".
43 ; XBFQ=1 Force Queing.
44 ; XBDTH=FM date time of computing/printing.
45 ; XBIOP=pre-selected printer device with constructed with
46 ; ION ; IOST ; IOSL ; IOM
47 ; (mandatory if the calling routine is a queued routine).
48 ; XBPAR= %ZIS("IOPAR") values for host file with XBIOP if
49 ; needed.
50 ;
51TEST ;
52 ; TESTING CODE the following are KISS (keep it supper simple) test
53 ; of double queing code including nesting.
54 Q
55 ;--------------------------------------------------------------------
56TEST1 ; test of stacking a second call to XBDBQUE in the printing routine.
57 S SD=1,DG=2
58 S XBNS="SD;DG;AG;"
59 S XBRP="PA^XBDBQDOC"
60 D ^XBDBQUE
61 KILL DG,JKL,SD
62 Q
63PA ;
64 W !,"GOT HERE ON ONE",!
65 X "ZW"
66 S IOP=XB("IOP"),XBRP="PB^XBDBQDOC",XBNS("JKL")=""
67 F I=1:1:10 S JKL(I)=I
68 S XBIOP=XB("IOP")
69 D ^XBDBQUE
70 Q
71PB ;
72 W !,"GOT HERE ON TWO",!
73 X "ZW"
74 Q
75TEST2 ; TEST FOR COMPUTING ONLY
76 D DT^DICRW
77 S XBRC="RC^XBDBQDOC"
78 F XBI=1:1:20 KILL ^XBDBT(XBI)
79 W !,"CREATES ^XBDBT(",!
80 D ^XBDBQUE
81 Q
82RC S %H=$H D YX^%DTC F XBI=1:1:20 S ^PWDBT(XBI)=XBI_Y
83 Q
Note: See TracBrowser for help on using the repository browser.