1 | DG53657P ;BAJ - Patch DG*5.3*657 Pre-Install Utility Routine ; 10/24/2006
|
---|
2 | ;;5.3;Registration;**657**;AUG 13, 1993;Build 19
|
---|
3 | Q
|
---|
4 | ;
|
---|
5 | ;
|
---|
6 | EN N XPDABORT
|
---|
7 | D LKUP(61,"MISSING PHONE NUMBER DATA","C")
|
---|
8 | ;2 - consistency check not there, 3 - consistency check is wrong
|
---|
9 | I ($G(XPDABORT)=2)!($G(XPDABORT)=3) Q ;Find file 38.6 entry
|
---|
10 | D LKUP(87,"SC ELIG BUT NO RD CODES","A")
|
---|
11 | Q:$G(XPDABORT)=3
|
---|
12 | D POSTN ;Modify file 38.6 entry
|
---|
13 | D CREATE ;add the 87 consistency check
|
---|
14 | D COMPILE
|
---|
15 | Q
|
---|
16 | ;
|
---|
17 | LKUP(RULE,FIELD01,MODE) ; Update entry in INCONSISTENT DATA ELEMENTS file (#38.6)
|
---|
18 | ;MODE = 'C' change
|
---|
19 | ;MODE = 'A' add
|
---|
20 | N ERR,DA,DIE,DR,X
|
---|
21 | K XPDABORT
|
---|
22 | D BMES^XPDUTL("Checking entry #"_RULE_" in 38.6 file.")
|
---|
23 | S DIE=38.6,DA=$$FIND1^DIC(DIE,"","X",RULE)
|
---|
24 | I 'DA,MODE="C" D Q
|
---|
25 | . S XPDABORT=2
|
---|
26 | . D MES^XPDUTL(" *** Entry not found! ***")
|
---|
27 | . D BMES^XPDUTL(" *** Please contact EVS for assistance ***")
|
---|
28 | . D BMES^XPDUTL(" *** INSTALLATION ABORTED ***")
|
---|
29 | . D BMES^XPDUTL("")
|
---|
30 | . Q
|
---|
31 | S X=""
|
---|
32 | I $G(DA)'="" S X=$G(^DGIN(38.6,DA,0))
|
---|
33 | I X'="",$P(X,"^",1)'=FIELD01 D Q
|
---|
34 | . S XPDABORT=3
|
---|
35 | . D MES^XPDUTL(" *** Field #.01 should be "_FIELD01_"! ***")
|
---|
36 | . D BMES^XPDUTL(" *** Please contact EVS for assistance ***")
|
---|
37 | . D BMES^XPDUTL(" *** INSTALLATION ABORTED ***")
|
---|
38 | . D BMES^XPDUTL("")
|
---|
39 | . Q
|
---|
40 | Q
|
---|
41 | POSTN ; Update entry in INCONSISTENT DATA ELEMENTS file (#38.6)
|
---|
42 | N FILE,IENS,FIELD,DGWP,ERRORS,FDA
|
---|
43 | D BMES^XPDUTL("Updating Consistency #61")
|
---|
44 | ;FDA_ROOT(FILE#,"IENS",FIELD#)="VALUE"
|
---|
45 | S FILE=38.6,IENS="61,",FIELD=50
|
---|
46 | S DGWP(1,0)="Inconsistency results if the patient's Employment Status is EMPLOYED FULL"
|
---|
47 | S DGWP(2,0)="TIME, EMPLOYED PART TIME, or SELF EMPLOYED and the PHONE NUMBER [WORK] has"
|
---|
48 | S DGWP(3,0)="not been entered."
|
---|
49 | S FDA(FILE,IENS,FIELD)="DGWP"
|
---|
50 | D FILE^DIE("K","FDA","ERRORS(1)")
|
---|
51 | I $D(ERRORS) D Q
|
---|
52 | . D MES^XPDUTL(" *** Error filing Data Dictionary update! ***")
|
---|
53 | . D BMES^XPDUTL(" *** Please contact EVS for assistance ***")
|
---|
54 | . D BMES^XPDUTL(" *** INSTALLATION ABORTED ***")
|
---|
55 | . D BMES^XPDUTL("")
|
---|
56 | . Q
|
---|
57 | D MES^XPDUTL(" *** Update Complete ***")
|
---|
58 | D BMES^XPDUTL("")
|
---|
59 | Q
|
---|
60 | ;
|
---|
61 | CREATE ;Post-Install
|
---|
62 | N MSGROOT,FDAWP,FDAROOT,IENROOT,IEN,X,ERR,LN,LN2
|
---|
63 | S X=$G(^DGIN(38.6,87,0))
|
---|
64 | I $L(X),$P(X,"^",1)'="SC ELIG BUT NO RD CODES" D Q
|
---|
65 | . D BMES^XPDUTL("An entry already exists in file 38.6 for consistency #87.")
|
---|
66 | . D MES^XPDUTL("Cannot add SC ELIG BUT NO RD CODES.")
|
---|
67 | . Q
|
---|
68 | I $L(X),$P(X,"^",1)="SC ELIG BUT NO RD CODES" Q
|
---|
69 | D BMES^XPDUTL("Adding Consistency #87")
|
---|
70 | S IEN="+1,"
|
---|
71 | S FDAROOT(38.6,IEN,.01)="SC ELIG BUT NO RD CODES"
|
---|
72 | S FDAROOT(38.6,IEN,2)="SC ELIGIBILITY BUT NO RATED DISABILITY CODES"
|
---|
73 | S FDAROOT(38.6,IEN,50)="FDAWP"
|
---|
74 | S FDAWP(1,0)="Inconsistency results if the PRIMARY ELIGIBILITY CODE"
|
---|
75 | S FDAWP(2,0)="is a 1 (SERVICE CONNECTED 50% TO 100%) or a 3 (SC LESS THAN 50%)"
|
---|
76 | S FDAWP(3,0)="and no rated disabilities are present."
|
---|
77 | S FDAROOT(38.6,IEN,3)="NO KEY REQUIRED"
|
---|
78 | S FDAROOT(38.6,IEN,5)="CHECK"
|
---|
79 | S IENROOT(1)=87
|
---|
80 | D UPDATE^DIE("E","FDAROOT","IENROOT","MSGROOT")
|
---|
81 | I $D(MSGROOT("DIERR")) D Q
|
---|
82 | . S (ERR,LN2)=0
|
---|
83 | . D ERR
|
---|
84 | . D BMES^XPDUTL(.X)
|
---|
85 | . Q
|
---|
86 | D MES^XPDUTL(" *** CC #87 Added ***")
|
---|
87 | D BMES^XPDUTL("")
|
---|
88 | Q
|
---|
89 | ERR F S ERR=+$O(MSGROOT("DIERR",ERR)) Q:'ERR D LN
|
---|
90 | Q
|
---|
91 | LN S LN=0
|
---|
92 | F S LN=+$O(MSGROOT("DIERR",ERR,"TEXT",LN)) Q:'LN D
|
---|
93 | . S LN2=LN2+1
|
---|
94 | . S X(LN2)=MSGROOT("DIERR",ERR,"TEXT",LN)
|
---|
95 | . Q
|
---|
96 | Q
|
---|
97 | COMPILE ;compile screen 7
|
---|
98 | D BMES^XPDUTL("Re-compiling input template DG LOAD EDIT SCREEN 7 of PATIENT FILE(#2)")
|
---|
99 | N X,Y,DMAX
|
---|
100 | S Y=$O(^DIE("B","DG LOAD EDIT SCREEN 7",""))
|
---|
101 | I Y'="" D
|
---|
102 | . S X=$G(^DIE(Y,"ROU")) I $E(X)="^" S X=$E(X,2,99)
|
---|
103 | . S DMAX=$$ROUSIZE^DILF
|
---|
104 | . D EN^DIEZ
|
---|
105 | . Q
|
---|
106 | D BMES^XPDUTL("Re-compiling input template DVBHINQ UPDATE of PATIENT FILOE(#2)")
|
---|
107 | S Y=$O(^DIE("B","DVBHINQ UPDATE",""))
|
---|
108 | I Y'="" D
|
---|
109 | . S X=$G(^DIE(Y,"ROU")) I $E(X)="^" S X=$E(X,2,99)
|
---|
110 | . S DMAX=$$ROUSIZE^DILF
|
---|
111 | . D EN^DIEZ
|
---|
112 | . Q
|
---|
113 | Q
|
---|