1 | XBGSAVE ; IHS/ADC/GTH - GENERIC GLOBAL SAVE FOR TRANSMISSION GLOBALS ; [ 07/21/2005 4:13 PM ]
|
---|
2 | ;;4.0;XB;;Jul 20, 2009;Build 2
|
---|
3 | ;XB*3*9 IHS/SET/GTH XB*3*9 10/29/2002 Cache' mods.
|
---|
4 | ;
|
---|
5 | ; XBGL = name of global (mandatory, all others optional)
|
---|
6 | ;
|
---|
7 | ; XBCON= if defined, stops if first-level subscript is non-cannonic
|
---|
8 | ; XBDT = date of save, in FM format, default NOW
|
---|
9 | ; XBE = ending first-level numeric subscript
|
---|
10 | ; XBFLT= 1, saves as flat file
|
---|
11 | ; XBFN = output file name, default "<ns><asufac>.<JulianDate>"
|
---|
12 | ; XBF = beginning first-level numeric subscript, seed for $ORDER
|
---|
13 | ; XBIO = output device number
|
---|
14 | ; XBMED= media to which to save global (user asked, if not exist)
|
---|
15 | ; XBNAR= description displayed to user, if user asks for help
|
---|
16 | ; XBPAR= CR parameter (DSM only)
|
---|
17 | ; XBQ = Y/N, to place file in uucp q, default "Y"
|
---|
18 | ; XBQTO= 'sendto' destination, default AO sysid in RPMS SITE file
|
---|
19 | ; XBTLE= comment for dump header (facility name is concatenated)
|
---|
20 | ; XBUF = directory, default no longer provided - will kick out error
|
---|
21 | ; if XBUF undefined and no directory found in files
|
---|
22 | ; 9999999.39 or 8989.3
|
---|
23 | ; XBS1 = zish send paramaters file entry
|
---|
24 | ;
|
---|
25 | SETUP ;
|
---|
26 | I '$D(^%ZOSF("OS")) S XBFLG(1)="The ^%ZOSF(""OS"") node does not exist",XBFLG=-1 G EOJ
|
---|
27 | ; I '(^%ZOSF("OS")["MSM"),'(^%ZOSF("OS")["DSM") S XBFLG(1)="Operating system is not 'MSM' or 'DSM'",XBFLG=-1 G EOJ ; IHS/SET/GTH XB*3*9 10/29/2002
|
---|
28 | I '(^%ZOSF("OS")["MSM"),'(^%ZOSF("OS")["OpenM") S XBFLG(1)="Operating system is not 'MSM' or 'Cache'",XBFLG=-1 G EOJ ; IHS/SET/GTH XB*3*9 10/29/2002
|
---|
29 | I '$G(DUZ(2)) S XBFLG(1)="Facility Number 'DUZ(2)' is not defined",XBFLG=-1 G EOJ
|
---|
30 | I '$D(XBGL) S XBFLG(1)="The variable 'XBGL' must contain the name of the global you wish to save." S XBFLG=-1 G EOJ
|
---|
31 | KILL XBFLG,XBGLL
|
---|
32 | S:'$D(DTIME) DTIME=300
|
---|
33 | CHECK ;
|
---|
34 | S X=XBGL
|
---|
35 | I $L(X,"(")>1,$P(X,"(",2)="" S X=$P(X,"(")
|
---|
36 | S:$E(X,$L(X))="," X=$E(X,1,($L(X)-1))
|
---|
37 | I $L(XBGL,"(")>1,$E(XBGL,$L(XBGL))'="," S XBGL=XBGL_","
|
---|
38 | I $L(X,"(")>1,$E(X,$L(X))'=")" S X=X_")"
|
---|
39 | S:$L(X,"(")=1 XBGL=X_"("
|
---|
40 | S XBGLL=U_X
|
---|
41 | CKGLOB ;
|
---|
42 | I '$D(@XBGLL) S XBFLG(1)="Transaction File does not exist",XBFLG=-1 G EOJ
|
---|
43 | ;S:'$D(XBUF) XBUF="/usr/spool/uucppublic"
|
---|
44 | I $G(XBUF)="" S XBUF=$P($G(^AUTTSITE(1,1)),"^",2)
|
---|
45 | I XBUF="" S XBUF=$P($G(^XTV(8989.3,1,"DEV")),"^",1)
|
---|
46 | I XBUF="" D G EOJ
|
---|
47 | .S XBFLG(1)="Export Directory NOT Specified"
|
---|
48 | .S XBFLG=-1
|
---|
49 | I "/\"[$E(XBUF,$L(XBUF)) D
|
---|
50 | .S XBUF=$E(XBUF,1,($L(XBUF)-1))
|
---|
51 | I '$D(DT) D DT^DICRW
|
---|
52 | S X2=$E(DT,1,3)_"0101",X1=DT
|
---|
53 | D ^%DTC
|
---|
54 | S XBCARTNO=X+1,XBDT=$S($D(XBDT):$$FMTE^XLFDT(XBDT),1:$$HTE^XLFDT($H))
|
---|
55 | S:$E(XBGL)'=U XBGL=U_XBGL
|
---|
56 | S XBNAR=$G(XBNAR),XBTLE=$G(XBTLE)_" "_$P(^DIC(4,DUZ(2),0),U)
|
---|
57 | I $D(XBMED) S XBMED=$$UP^XLFSTR($E(XBMED))
|
---|
58 | S XBQ=$E($G(XBQ)_"Y")
|
---|
59 | I XBQ="Y" S XBQTO=$G(XBQTO) I XBQTO="" S XBQTO=$P(^AUTTSITE(1,0),U,14) I XBQTO="" S XBQ="N"
|
---|
60 | S XBF=$G(XBF),XBE=$G(XBE)
|
---|
61 | I XBF="" S XBF=""""""
|
---|
62 | I ^%ZOSF("OS")["DSM" G SETUPDSM
|
---|
63 | SETUPMSM ;
|
---|
64 | S:'$D(XBIO) XBIO=51
|
---|
65 | I $D(XBMED),'("CDFT"[XBMED) S XBFLG(1)="Media Type '"_XBMED_"' is incorrect",XBFLG=-1 G EOJ
|
---|
66 | D ^ZIBGSVEM
|
---|
67 | I $G(XBS1)'="" D
|
---|
68 | .S XBFLG=$$SENDTO1^ZISHMSMU(XBS1,XBPAFN)
|
---|
69 | .S XBFLG(1)=$P(XBFLG,"^",2)
|
---|
70 | .S XBFLG=+XBFLG
|
---|
71 | .Q:$D(ZTQUEUED)
|
---|
72 | .W:XBFLG=0 !!,"File was sent successfully"
|
---|
73 | .W:'(XBFLG=0) !!,"File was **NOT** sent successfully"
|
---|
74 | G EOJ
|
---|
75 | ;
|
---|
76 | SETUPDSM ;
|
---|
77 | I '$D(XBIO) S XBIO=47
|
---|
78 | I $D(XBMED),'("CT"[XBMED) S XBFLG(1)="Media Type '"_XBMED_"' is incorrect",XBFLG=-1 G EOJ
|
---|
79 | D ^ZIBGSVED
|
---|
80 | EOJ ;
|
---|
81 | S:'$D(XBFLG) XBFLG=0
|
---|
82 | KILL %DT,X,XBCON,XBFN,XBGL,XBGLL,XBCARTNO,X1,X2,XBNAR,XBTLE,XBIO,XBPAR,XBDT,XBE,XBF,XBMED,XBUF,XBQ,XBQTO,XBFLT,XBSUFAC,Y
|
---|
83 | Q
|
---|
84 | ;
|
---|