1 | ENY2K ;;(WIRMFO)/DH-Equipment Y2K Management ;5.18.98
|
---|
2 | ;;7.0;ENGINEERING;**51**;August 17, 1993
|
---|
3 | ;
|
---|
4 | ; This module identifies individual pieces of equipment that may fail
|
---|
5 | ; to operate properly as of January 1, 2000.
|
---|
6 | ; It also provides a means (the Y2K worklist) of tracking the
|
---|
7 | ; necessary corrective actions.
|
---|
8 | ;
|
---|
9 | IND ; data entry for manually selected equipment list
|
---|
10 | K ^TMP($J)
|
---|
11 | N DIC,ENY2K,ESCAPE,COUNT
|
---|
12 | S COUNT=0
|
---|
13 | W !!,"First we'll get answers for the Y2K questions, then we'll ask for an",!,"equipment list.",!
|
---|
14 | D DATA^ENY2K1
|
---|
15 | G:$G(ESCAPE) EXIT
|
---|
16 | F J="PRE","FC","NC","CC","NA" S COUNT(J)=0
|
---|
17 | S DIC="^ENG(6914,",DIC(0)="AEQM"
|
---|
18 | F D GETEQ^ENUTL Q:Y'>0 D:$D(^ENG(6914,+Y,0))
|
---|
19 | . Q:$D(^TMP($J,+Y))
|
---|
20 | . I "^4^5^"[(U_$P($G(^ENG(6914,+Y,3)),U)_U) W !,?5,"Sorry, but "_+Y_" is not an active equipment record." Q
|
---|
21 | . S X=$P($G(^ENG(6914,+Y,11)),U) I X]"" S COUNT("PRE")=COUNT("PRE")+1,COUNT(X)=COUNT(X)+1,^TMP($J,X,+Y)=""
|
---|
22 | . S ^TMP($J,+Y)="",COUNT=COUNT+1
|
---|
23 | D:$D(^TMP($J))
|
---|
24 | . W !!,"You have selected "_COUNT_" equipment records for updating."
|
---|
25 | . W !,"Do you wish to proceed?"
|
---|
26 | . S DIR(0)="Y",DIR("B")="YES"
|
---|
27 | . D ^DIR K DIR Q:$D(DIRUT)!('Y)
|
---|
28 | . D:COUNT("PRE") OVERWRT^ENY2K8
|
---|
29 | . D:'$G(ESCAPE) UPDATE^ENY2K1
|
---|
30 | G EXIT
|
---|
31 | ;
|
---|
32 | CAT ; data entry by EQUIPMENT CATEGORY
|
---|
33 | N CAT,DIC,DIE,DA,DR,COUNT,ENY2K,ESCAPE
|
---|
34 | F D CAT1 D Q:$G(ESCAPE)
|
---|
35 | . I $G(ESCAPE),$G(CAT)]"" L -^ENG("CAT",CAT)
|
---|
36 | . Q:$G(ESCAPE)
|
---|
37 | . D:$G(ENY2K("CONT")) DATA^ENY2K1
|
---|
38 | . I $G(ESCAPE) L -^ENG("CAT",CAT) Q
|
---|
39 | . D UPDATE^ENY2K1
|
---|
40 | . L -^ENG("CAT",CAT) S CAT="",CAT(0)=""
|
---|
41 | G EXIT
|
---|
42 | ;
|
---|
43 | CAT1 K ^TMP($J) W !
|
---|
44 | S DIC="^ENG(6911,",DIC(0)="AEMQ" D ^DIC I Y'>0 S ESCAPE=1 Q
|
---|
45 | S CAT=$P(Y,U,2),CAT(0)=$P(Y,U)
|
---|
46 | L +^ENG("CAT",CAT):1 I '$T W !,"Another user is editing this equipment category. Can't proceed." S CAT="",CAT(0)="" G CAT1
|
---|
47 | F J="PRE","FC","NC","CC","NA" S COUNT(J)=0
|
---|
48 | S (DA,COUNT)=0 F S DA=$O(^ENG(6914,"G",CAT(0),DA)) Q:'DA D
|
---|
49 | . I $D(^ENG(6914,DA,0)),"^4^5^"'[(U_$P($G(^(3)),U)_U) S COUNT=COUNT+1,^TMP($J,DA)="",X=$P($G(^ENG(6914,DA,11)),U) I X]"" S COUNT("PRE")=COUNT("PRE")+1,COUNT(X)=COUNT(X)+1,^TMP($J,X,DA)=""
|
---|
50 | I 'COUNT W !!,"There are no active equipment records in the EQUIPMENT CATEGORY of",!,CAT_"." L -^ENG("CAT",CAT) S CAT="",CAT(0)="" G CAT1
|
---|
51 | W !!,"There are "_COUNT_" active equipment records in the "_CAT,!,"EQUIPMENT CATEGORY. Do you wish to proceed?"
|
---|
52 | S DIR(0)="Y",DIR("B")="YES"
|
---|
53 | D ^DIR K DIR I $D(DIRUT) S ESCAPE=1 Q
|
---|
54 | S ENY2K("CONT")=Y I 'ENY2K("CONT") L -^ENG("CAT",CAT) S CAT="",CAT(0)="" G CAT1
|
---|
55 | I COUNT("PRE"),'$D(CRITER) D OVERWRT^ENY2K8
|
---|
56 | Q
|
---|
57 | ;
|
---|
58 | CSN ; data entry by CATEGORY STOCK NUMBER
|
---|
59 | N CSN,DIC,DIE,DA,DR,COUNT,ENY2K,ESCAPE
|
---|
60 | F D CSN1 D Q:$G(ESCAPE)
|
---|
61 | . I $G(ESCAPE),$G(CSN)]"" L -^ENG("CSN",CSN)
|
---|
62 | . Q:$G(ESCAPE)
|
---|
63 | . D:$G(ENY2K("CONT")) DATA^ENY2K1
|
---|
64 | . I $G(ESCAPE) L -^ENG("CSN",CSN) Q
|
---|
65 | . D UPDATE^ENY2K1
|
---|
66 | . L -^ENG("CSN",CSN) S CSN="",CSN(0)=""
|
---|
67 | G EXIT
|
---|
68 | ;
|
---|
69 | CSN1 K ^TMP($J) W !
|
---|
70 | S DIC="^ENCSN(6917,",DIC(0)="AEQM" D ^DIC I Y'>0 S ESCAPE=1 Q
|
---|
71 | S CSN=$P(Y,U,2),CSN(0)=$P(Y,U)
|
---|
72 | L +^ENG("CSN",CSN):1 I '$T W !,"Another user is editing this CATEGORY STOCK NUMBER. Can't proceed." S CSN="",CSN(0)="" G CSN1
|
---|
73 | F J="PRE","FC","NC","CC","NA" S COUNT(J)=0
|
---|
74 | S (DA,COUNT)=0 F S DA=$O(^ENG(6914,"J",CSN(0),DA)) Q:'DA D
|
---|
75 | . I $D(^ENG(6914,DA,0)),"^4^5^"'[(U_$P($G(^(3)),U)_U) S COUNT=COUNT+1,^TMP($J,DA)="",X=$P($G(^ENG(6914,DA,11)),U) I X]"" S COUNT("PRE")=COUNT("PRE")+1,COUNT(X)=COUNT(X)+1,^TMP($J,X,DA)=""
|
---|
76 | I 'COUNT W !!,"There are no active equipment records whose CATEGORY STOCK NUMBER is",!,CSN_"." S CSN="",CSN(0)="" G CSN1
|
---|
77 | W !!,"There are "_COUNT_" active equipment records whose CATEGORY STOCK ",!,"NUMBER is "_CSN_". Do you wish to proceed?"
|
---|
78 | S DIR(0)="Y",DIR("B")="YES"
|
---|
79 | D ^DIR K DIR I $D(DIRUT) S ESCAPE=1 Q
|
---|
80 | S ENY2K("CONT")=Y I 'ENY2K("CONT") L -^ENG("CSN",CSN) S CSN="",CSN(0)="" G CSN1
|
---|
81 | I COUNT("PRE"),'$D(CRITER) D OVERWRT^ENY2K8
|
---|
82 | Q
|
---|
83 | ;
|
---|
84 | MFG ; data entry by MANUFACTURER (all models)
|
---|
85 | N MFG,DIC,DIE,DA,DR,COUNT,ENY2K,ESCAPE
|
---|
86 | F D MFG1 D Q:$G(ESCAPE)
|
---|
87 | . I $G(ESCAPE),$G(MFG)]"" L -^ENG("MFG",MFG)
|
---|
88 | . Q:$G(ESCAPE)
|
---|
89 | . D:$G(ENY2K("CONT")) DATA^ENY2K1
|
---|
90 | . I $G(ESCAPE) L -^ENG("MFG",MFG) Q
|
---|
91 | . D UPDATE^ENY2K1
|
---|
92 | . L -^ENG("MFG",MFG) S MFG="",MFG(0)=""
|
---|
93 | G EXIT
|
---|
94 | ;
|
---|
95 | MFG1 K ^TMP($J)
|
---|
96 | S DIC="^ENG(""MFG"",",DIC(0)="AEMQ" D ^DIC I Y'>0 S ESCAPE=1 Q
|
---|
97 | S MFG=$P(Y,U,2),MFG(0)=$P(Y,U)
|
---|
98 | L +^ENG("MFG",MFG):1 I '$T W !,"Another user is editing this MANUFACTURER. Can't proceed." S MFG="",MFG(0)="" G MFG1
|
---|
99 | F J="PRE","FC","NC","CC","NA" S COUNT(J)=0
|
---|
100 | S (DA,COUNT)=0 F S DA=$O(^ENG(6914,"K",MFG(0),DA)) Q:'DA D
|
---|
101 | . I $D(^ENG(6914,DA,0)),"^4^5^"'[(U_$P($G(^(3)),U)_U) S COUNT=COUNT+1,^TMP($J,DA)="",X=$P($G(^ENG(6914,DA,11)),U) I X]"" S COUNT("PRE")=COUNT("PRE")+1,COUNT(X)=COUNT(X)+1,^TMP($J,X,DA)=""
|
---|
102 | I 'COUNT W !!,"There are no active equipment entries manufactured by "_MFG_"." L -^ENG("MFG",MFG) S MFG="",MFG(0)="" G MFG1
|
---|
103 | W !!,"There are "_COUNT_" equipment entries that were manufactured by",!,MFG_". Do you wish to proceed?"
|
---|
104 | S DIR(0)="Y",DIR("B")="YES"
|
---|
105 | D ^DIR K DIR I $D(DIRUT) S ESCAPE=1 Q
|
---|
106 | S ENY2K("CONT")=Y I 'ENY2K("CONT") L -^ENG("MFG",MFG) S MFG="",MFG(0)="" G MFG1
|
---|
107 | I COUNT("PRE"),'$D(CRITER) D OVERWRT^ENY2K8
|
---|
108 | Q
|
---|
109 | ;
|
---|
110 | LOC ; data entry by LOCAL ID
|
---|
111 | N LOC,DIC,DIE,DA,DR,COUNT,ENY2K,ESCAPE,PAGE,DATE
|
---|
112 | F D LOC1^ENY2K9 D Q:$G(ESCAPE)
|
---|
113 | . I $G(ESCAPE),$G(LOC)]"" L -^ENG("LOC",LOC)
|
---|
114 | . Q:$G(ESCAPE)
|
---|
115 | . D:$G(ENY2K("CONT")) DATA^ENY2K1
|
---|
116 | . I $G(ESCAPE) L -^ENG("LOC",LOC) Q
|
---|
117 | . D UPDATE^ENY2K1
|
---|
118 | . L -^ENG("LOC",LOC) S LOC="",LOC(0)="",END=""
|
---|
119 | G EXIT
|
---|
120 | ;
|
---|
121 | MOD ; data entry by MANUFACTURER and MODEL
|
---|
122 | N MFG,MOD,DIC,DIE,DA,DR,COUNT,ENY2K,ESCAPE,ENDX
|
---|
123 | F D MOD1 D Q:$G(ESCAPE)
|
---|
124 | . I $G(ESCAPE),$G(MFG)]"" L -^ENG("MFG","MOD",MFG,MOD)
|
---|
125 | . Q:$G(ESCAPE)
|
---|
126 | . D:$G(ENY2K("CONT")) DATA^ENY2K1
|
---|
127 | . I $G(ESCAPE) L -^ENG("MFG","MOD",MFG,MOD)
|
---|
128 | . D UPDATE^ENY2K1
|
---|
129 | . L -^ENG("MFG","MOD",MFG,MOD) S (MFG,MOD)="",MFG(0)=""
|
---|
130 | G EXIT
|
---|
131 | ;
|
---|
132 | MOD1 K ^TMP($J) W !
|
---|
133 | S DIC="^ENG(""MFG"",",DIC(0)="AEQM" D ^DIC I Y'>0 S ESCAPE=1 Q
|
---|
134 | S MFG=$P(Y,U,2),MFG(0)=$P(Y,U)
|
---|
135 | I '$O(^ENG(6914,"K",MFG(0),0)) W !!,"There are no active equipment records for devices made by",!,MFG_"." S MFG="",MFG(0)="" G MOD1
|
---|
136 | MOD2 R !,"Please enter the MODEL (as recorded in Equipment File): ",X:DTIME I '$T!($E(X)="^")!(X="") S ESCAPE=1,MFG="",MFG(0)="" Q
|
---|
137 | I $E(X)="?" W !,"Enter a valid MODEL number (ex: "_$O(^ENG(6914,"E","M"))_")." G MOD2
|
---|
138 | I '$D(^ENG(6914,"E",X)) D I X="" W "??",*7 G MOD2
|
---|
139 | . S DIC="^ENG(6914,",ENDX="E"
|
---|
140 | . D IX^ENLIB1
|
---|
141 | S MOD=X
|
---|
142 | L +^ENG("MFG","MOD",MFG,MOD):1 I '$T W !,"Another user is editing this MANUFACTURER~MODEL. Can't proceed." S (MFG,MOD)="",MFG(0)="" G MOD1
|
---|
143 | F J="PRE","FC","NC","CC","NA" S COUNT(J)=0
|
---|
144 | S (DA,COUNT)=0 F S DA=$O(^ENG(6914,"E",MOD,DA)) Q:'DA D
|
---|
145 | . I $D(^ENG(6914,DA,0)),$P($G(^(1)),U,4)=MFG(0),"^4^5^"'[(U_$P($G(^(3)),U)_U) S COUNT=COUNT+1,^TMP($J,DA)="",X=$P($G(^ENG(6914,DA,11)),U) I X]"" S COUNT("PRE")=COUNT("PRE")+1,COUNT(X)=COUNT(X)+1,^TMP($J,X,DA)=""
|
---|
146 | I 'COUNT W !!,"There are no active equipment records for which MANUFACTURER and MODEL are",!,MFG_" and "_MOD_", respectively." L -^ENG("MFG","MOD",MFG,MOD) S (MFG,MOD)="",MFG(0)="" G MOD1
|
---|
147 | W !!,"There are "_COUNT_" active equipment records that meet your search criteria.",!,"Do you wish to proceed?"
|
---|
148 | S DIR(0)="Y",DIR("B")="YES"
|
---|
149 | D ^DIR K DIR I $D(DIRUT) S ESCAPE=1 Q
|
---|
150 | S ENY2K("CONT")=Y I 'ENY2K("CONT") L -^ENG("MFG","MOD",MFG,MOD) S (MFG,MOD)="",MFG(0)="" G MOD1
|
---|
151 | I COUNT("PRE"),'$D(CRITER) D OVERWRT^ENY2K8
|
---|
152 | Q
|
---|
153 | ;
|
---|
154 | EXIT K ^TMP($J)
|
---|
155 | Q
|
---|
156 | ;ENY2K
|
---|