1 | KMPDUTL ;OAK/RAK - CM Tools Utility ;5/1/07 15:08
|
---|
2 | ;;2.0;CAPACITY MANAGEMENT TOOLS;**1,2,3,4,5,6**;Mar 22, 2002;Build 3
|
---|
3 | ;
|
---|
4 | QUEBKG(KMPDOPT,KMPDTIME,KMPDFREQ,KMPDDEL) ;-- queue background job
|
---|
5 | ;-----------------------------------------------------------------------
|
---|
6 | ; KMPDOPT.... Option name to queue (free text name in .01 field of
|
---|
7 | ; OPTION file)
|
---|
8 | ; KMPDTIME... Date/time to queue option (T@1400, etc)
|
---|
9 | ; KMPDFREQ... Scheduling frequency (1D, etc)
|
---|
10 | ; KMPDDEL.... Delete option if it already exists in file 19.2
|
---|
11 | ; 0 - do not delete (quit if already scheduled)
|
---|
12 | ; 1 - delete if already in file 19.2
|
---|
13 | ;
|
---|
14 | ; This API will queue an option from file #19 (OPTION) to run in file
|
---|
15 | ; 19.2 (OPTION SCHEDULE).
|
---|
16 | ;-----------------------------------------------------------------------
|
---|
17 | Q:$G(KMPDOPT)=""
|
---|
18 | Q:$G(KMPDTIME)=""
|
---|
19 | Q:$G(KMPDFREQ)=""
|
---|
20 | S KMPDDEL=+$G(KMPDDEL)
|
---|
21 | N DA,DIFROM,DIK,FDA,ERROR,IEN,IEN1,IENZ,TEXT,X,Y,Z
|
---|
22 | ; Newing DIFROM will force reschedule when installing from KIDS
|
---|
23 | S:'$G(DT) DT=$$DT^XLFDT
|
---|
24 | ; change to internal format
|
---|
25 | D FMDTI^KMPDU(.Z,KMPDTIME)
|
---|
26 | Q:Z(0)="^"!(Z(0)="")
|
---|
27 | S KMPDTIME=Z(0) K Z
|
---|
28 | S TEXT=KMPDOPT
|
---|
29 | ; quit if not in file 19
|
---|
30 | S IEN=$O(^DIC(19,"B",TEXT,0)) Q:'IEN
|
---|
31 | S IEN1=$O(^DIC(19.2,"B",IEN,0))
|
---|
32 | ; quit if already in file 19.2 and not KMPDDEL
|
---|
33 | Q:IEN1&('KMPDDEL)
|
---|
34 | ; delete if in file 19.2
|
---|
35 | I IEN1 S DIK="^DIC(19.2,",DA=IEN1 D ^DIK
|
---|
36 | ; add entry
|
---|
37 | S FDA($J,19.2,"+1,",.01)=IEN
|
---|
38 | ; queued to run at what time
|
---|
39 | S FDA($J,19.2,"+1,",2)=KMPDTIME
|
---|
40 | ; rescheduling frequency.
|
---|
41 | S FDA($J,19.2,"+1,",6)=KMPDFREQ
|
---|
42 | D UPDATE^DIE("","FDA($J)",.IENZ,"ERROR")
|
---|
43 | I $D(ERROR) D MSG^DIALOG("W","",60,10,"ERROR")
|
---|
44 | S IEN1=$O(^DIC(19.2,"B",IEN,0))
|
---|
45 | I '$G(^DIC(19.2,+IEN1,1)) D
|
---|
46 | .D MES^XPDUTL(" ERROR - Not able to reschedule "_KMPDOPT)
|
---|
47 | .D MES^XPDUTL(" Use 'Schedule/Unschedule Options' [XUTM SCHEDULE] to reschedule.")
|
---|
48 | ;
|
---|
49 | Q
|
---|
50 | ;
|
---|
51 | VERSION() ;-- extrinsic - return current version.
|
---|
52 | Q $P($T(+2^KMPDUTL),";",3)_"^"_$P($T(+2^KMPDUTL),";",5)
|
---|
53 | ;
|
---|
54 | VRSNGET(KMPDAPPL) ;-- extrinsic function - get version^patches
|
---|
55 | ;-----------------------------------------------------------------------
|
---|
56 | ; KMPDAPPL... application:
|
---|
57 | ; 0 - CM Tools
|
---|
58 | ; 1 - SAGG
|
---|
59 | ; 2 - RUM
|
---|
60 | ;
|
---|
61 | ; Return: Version^Patch^VersionInstallDate^PatchInstallDate
|
---|
62 | ; null = no application
|
---|
63 | ;-----------------------------------------------------------------------
|
---|
64 | ;
|
---|
65 | Q:$G(KMPDAPPL)="" ""
|
---|
66 | Q:KMPDAPPL<0!(KMPDAPPL>2) ""
|
---|
67 | ;
|
---|
68 | N DATA,VERSION S VERSION=""
|
---|
69 | ;
|
---|
70 | ; cm tools
|
---|
71 | I KMPDAPPL=0 D
|
---|
72 | .S DATA=$G(^KMPD(8973,1,KMPDAPPL))
|
---|
73 | .S VERSION=$P(DATA,U,2)_U_$P(DATA,U,4)_U_$P(DATA,U,3)_U_$P(DATA,U,5)
|
---|
74 | ;
|
---|
75 | ; all other applications
|
---|
76 | E D
|
---|
77 | .S DATA=$G(^KMPD(8973,1,KMPDAPPL))
|
---|
78 | .S VERSION=$P(DATA,U)_U_$P(DATA,U,3)_U_$P(DATA,U,2)_U_$P(DATA,U,4)
|
---|
79 | ;
|
---|
80 | Q VERSION
|
---|
81 | ;
|
---|
82 | PTCHINFO ; -- patch information: routine name ^ current version ^ current patch(es)
|
---|
83 | ;;KMPDBD01^2.0^**2**
|
---|
84 | ;;KMPDECH^2.0^**5**
|
---|
85 | ;;KMPDHU01^2.0^**4**
|
---|
86 | ;;KMPDHU02^2.0
|
---|
87 | ;;KMPDHU03^2.0
|
---|
88 | ;;KMPDHUA^2.0
|
---|
89 | ;;KMPDPOST^2.0^**1,2,5**
|
---|
90 | ;;KMPDSS^2.0^**3**
|
---|
91 | ;;KMPDSS1^2.0^**3**
|
---|
92 | ;;KMPDSSD^2.0^**3**
|
---|
93 | ;;KMPDSSD1^2.0^**3,6**
|
---|
94 | ;;KMPDSSR^2.0^**3**
|
---|
95 | ;;KMPDSSS^2.0^**3,6**
|
---|
96 | ;;KMPDTM^2.0^**1,4**
|
---|
97 | ;;KMPDTP1^2.0^**4**
|
---|
98 | ;;KMPDTP2^2.0^**4**
|
---|
99 | ;;KMPDTP3^2.0^**4**
|
---|
100 | ;;KMPDTP4^2.0^**4**
|
---|
101 | ;;KMPDTP5^2.0^**4**
|
---|
102 | ;;KMPDTP6^2.0^**4**
|
---|
103 | ;;KMPDTP7^2.0^**4**
|
---|
104 | ;;KMPDTU01^2.0^**4,5**
|
---|
105 | ;;KMPDTU02^2.0
|
---|
106 | ;;KMPDTU10^2.0^**4**
|
---|
107 | ;;KMPDTU11^2.0^**6**
|
---|
108 | ;;KMPDU^2.0^**2**
|
---|
109 | ;;KMPDU1^2.0
|
---|
110 | ;;KMPDU2^2.0^**2**
|
---|
111 | ;;KMPDU3^2.0^**2**
|
---|
112 | ;;KMPDU4^2.0
|
---|
113 | ;;KMPDU5^2.0^**2**
|
---|
114 | ;;KMPDU11^2.0
|
---|
115 | ;;KMPDUG^2.0
|
---|
116 | ;;KMPDUG1^2.0
|
---|
117 | ;;KMPDUG2^2.0
|
---|
118 | ;;KMPDUGV^2.0
|
---|
119 | ;;KMPDUT^2.0
|
---|
120 | ;;KMPDUT1^2.0^**4**
|
---|
121 | ;;KMPDUT2^2.0
|
---|
122 | ;;KMPDUT4^2.0
|
---|
123 | ;;KMPDUT4A^2.0
|
---|
124 | ;;KMPDUT4B^2.0
|
---|
125 | ;;KMPDUT4C^2.0
|
---|
126 | ;;KMPDUT5^2.0
|
---|
127 | ;;KMPDUTL^2.0^**1,2,3,4,5,6**
|
---|
128 | ;;KMPDUTL1^2.0^**3**
|
---|
129 | ;;KMPDUTL2^2.0^**4**
|
---|
130 | ;;KMPDUTL3^2.0
|
---|
131 | ;;KMPDUTL4^2.0
|
---|
132 | ;;KMPDUTL5^2.0
|
---|
133 | ;;KMPDUTL6^2.0
|
---|
134 | ;;KMPDUTL7^2.0^**2,5**
|
---|
135 | ;;KMPDUTL8^2.0^**2**
|
---|