1 | ICPT619 ;SLC/KER - ICPT Env. Check ; 04/18/2004
|
---|
2 | ;;6.0;CPT/HCPCS;**19**;May 19, 1997
|
---|
3 | ;
|
---|
4 | ; External References
|
---|
5 | ; DBIA 10141 $$PATCH^XPDUTL
|
---|
6 | ; DBIA 10141 BMES^XPDUTL
|
---|
7 | ; DBIA 10141 MES^XPDUTL
|
---|
8 | ;
|
---|
9 | ENV ; Environment Check
|
---|
10 | N PATCHES,PATCH,BUILD,ABORT,I
|
---|
11 | W !," ICPT/HCPCS Code Text Descriptors (CTD)",! S XPDABORT="",BUILD="ICPT*6.0*19" S ABORT=0
|
---|
12 | S ABORT=$$PATCHES S:+ABORT'>0 ABORT=$$DATA(BUILD) S:+ABORT'>0 ABORT=$$VAR D:+ABORT>0 ABRT
|
---|
13 | I $G(XPDABORT)="" K XPDABORT D OK
|
---|
14 | Q
|
---|
15 | ABRT ; Abort - All or nothing
|
---|
16 | S XPDABORT=1,XPDQUIT=1,XPDQUIT("LEX*2.0*30")=1
|
---|
17 | S XPDQUIT("ICD*18.0*12")=1,XPDQUIT("ICPT*6.0*19")=1
|
---|
18 | S XPDQUIT("CTD UTIL 1.0")=1
|
---|
19 | Q
|
---|
20 | OK ; Environment is Ok
|
---|
21 | Q:+($G(XPDENV))>0 D BM((" Environment for patch/build "_BUILD_" is ok")),M(" ")
|
---|
22 | Q
|
---|
23 | ;
|
---|
24 | ; Checks
|
---|
25 | PATCHES(X) ; Check Required Patches/Components
|
---|
26 | Q:+($G(ABORT))>0 1 N PATCHES,I,INS
|
---|
27 | S PATCHES="ICPT*6.0*16"
|
---|
28 | F I=1:1 Q:'$L($P($G(PATCHES),";",I)) S PATCH=$P($G(PATCHES),";",I) D Q:+($G(ABORT))>0
|
---|
29 | . W !," Checking for ",PATCH S INS=$$PATCH^XPDUTL(PATCH) I +INS>0 H 1 W " - installed"
|
---|
30 | . I 'INS D BM((" >>> "_PATCH_" is required and MUST be installed prior to this patch.")) W ! S ABORT=1
|
---|
31 | Q:+($G(ABORT))>0 1 Q 0
|
---|
32 | ;
|
---|
33 | DATA(X) ; Check Required Data
|
---|
34 | Q:+($G(ABORT))>0 1 Q:+($G(XPDENV))=0 0 N BUILD,BUILDI,CPD S BUILDI=$G(^LEXM(81,0,"BUILD")),BUILD=$G(X),CPD=$$CPD
|
---|
35 | W !," Checking for ICD installed data" H:+CPD>0 1 W:+CPD>0 " - Installed"
|
---|
36 | I +CPD'>0 D
|
---|
37 | . I $L(BUILD),BUILD=BUILDI H 1 W " - Ready for installation"
|
---|
38 | . I $L(BUILD),BUILD'=BUILDI D
|
---|
39 | . . I '$L(BUILDI) D
|
---|
40 | . . . D BM(" >>> Global ^LEXM either not found or incomplete.")
|
---|
41 | . . . D M((" Expecting data for "_BUILD_"."))
|
---|
42 | . . I $L(BUILDI) D
|
---|
43 | . . . D BM(" >>> Global ^LEXM incorrect for this installation.")
|
---|
44 | . . . D M((" Expecting data for "_BUILD_", found "_BUILDI_"."))
|
---|
45 | . . W ! S ABORT=1
|
---|
46 | . I '$L(BUILD) H 1 W " - Data not required"
|
---|
47 | Q:+($G(ABORT))>0 1 Q 0
|
---|
48 | ;
|
---|
49 | VAR(X) ; Check Variables
|
---|
50 | W !," Checking required environment variables"
|
---|
51 | D HOME^%ZIS S U="^",DT=$$DT^XLFDT Q:+($G(ABORT))>0 1
|
---|
52 | I (+($G(DUZ))>0)&($G(DUZ(0))="@") H 1 W " - ok"
|
---|
53 | I '$G(DUZ)!($G(DUZ(0))'="@") D
|
---|
54 | . D BM(" >>> Programming variables are not set up properly.") W ! S ABORT=1
|
---|
55 | Q:+($G(ABORT))>0 1 Q 0
|
---|
56 | ;
|
---|
57 | CPD(X) ; Check Current Patched Data is installed
|
---|
58 | N INS S INS=1
|
---|
59 | S:'$D(^ICPT("AST"))!('$D(^ICPT("ADS")))!('$D(^DIC(81.3,"AST")))!('$D(^DIC(81.3,"ADS"))) INS=0
|
---|
60 | S:'$D(^ICPT(100,61,"B"))!('$D(^ICPT(100,62,"B"))) INS=0 S:'$D(^DIC(81.3,1,61,"B"))!('$D(^DIC(81.3,1,62,"B"))) INS=0
|
---|
61 | S X=INS Q X
|
---|
62 | ;
|
---|
63 | ; Miscellaneous
|
---|
64 | BM(X) ; Blank Line with Message
|
---|
65 | D BMES^XPDUTL($G(X)) Q
|
---|
66 | M(X) ; Message
|
---|
67 | D MES^XPDUTL($G(X)) Q
|
---|