1 | ENEQPMS2 ;(WASH ISC)/DH-Select Equipment for PMI ;6.5.97
|
---|
2 | ;;7.0;ENGINEERING;**26,35,42**;Aug 17, 1993
|
---|
3 | NTRY ; Identify entries for specified PM worklist (single shop)
|
---|
4 | ; List is sorted in ^TMP($J,
|
---|
5 | K ^TMP($J) N I,SE,NODE
|
---|
6 | F DA=0:0 S DA=$O(^ENG(6914,"AB",ENSHKEY,DA)) Q:DA'>0 S SE=0 F S SE=$O(^ENG(6914,"AB",ENSHKEY,DA,SE)) Q:SE'>0 D LST2
|
---|
7 | D PR^ENEQPMS5 G OUT
|
---|
8 | ;
|
---|
9 | MNTRY ; Identify entries for specified PM worklist (all shops)
|
---|
10 | ; List is sorted in ^TMP($J,
|
---|
11 | K ^TMP($J) N I,SE,NODE
|
---|
12 | F ENSHKEY=0:0 S ENSHKEY=$O(^ENG(6914,"AB",ENSHKEY)) Q:ENSHKEY'>0 F DA=0:0 S DA=$O(^ENG(6914,"AB",ENSHKEY,DA)) Q:DA'>0 S SE=0 F S SE=$O(^ENG(6914,"AB",ENSHKEY,DA,SE)) Q:SE'>0 D LST2
|
---|
13 | D PR^ENEQPMS5 G OUT
|
---|
14 | ;
|
---|
15 | LST2 N EN,A,B,C,X,X1,X2,TAG,SUB,MULT
|
---|
16 | S X1=$P($G(^ENG(6914,DA,3)),U) I "^4^5^"[(U_X1_U) Q
|
---|
17 | I 'ENSRT("OOS"),X1=2 Q
|
---|
18 | Q:'$D(^ENG(6914,DA,4,SE,0)) I '$D(ENCRIT("ALL")) D Q:ENCRIT<0
|
---|
19 | . S ENCRIT=$P(^ENG(6914,DA,4,SE,0),U,4) I ENCRIT'?1.2N S:'$G(ENCRIT("NULL")) ENCRIT=-1 Q
|
---|
20 | . I ENCRIT<ENCRIT("FR")!(ENCRIT>ENCRIT("TO")) S ENCRIT=-1
|
---|
21 | S EN("NEXT")="A" F X="A","B","C" S @X=""
|
---|
22 | S X1=0,X2=$P(^ENG(6914,DA,4,SE,0),U,2) I 'ENTECH("ALL"),X2'=ENTECH Q
|
---|
23 | I ENTECH'=0 S:X2="" X2=0 S:$D(^ENG("EMP",X2,0)) X1=""""_$P(^(0),U)_"""" D
|
---|
24 | . I X2>0,X1=0 S X1=""""_"DELETED"_""""
|
---|
25 | . S @EN("NEXT")=X1
|
---|
26 | . S EN("NEXT")=$C($A(EN("NEXT"))+1)
|
---|
27 | S TAG="LST"_ENSRT D @TAG Q:$G(X)=-1
|
---|
28 | S SUB="" F X1="A","B","C" Q:$G(@X1)="" S SUB=SUB_@X1_","
|
---|
29 | D LSTSKP
|
---|
30 | Q
|
---|
31 | ;
|
---|
32 | LSTE ; By ENTRY NUMBER
|
---|
33 | I ENSRT("ALL") Q
|
---|
34 | I ENSRT("FR")]DA!(DA]ENSRT("TO")) S X=-1
|
---|
35 | Q
|
---|
36 | LSTP ; By PM NUMBER
|
---|
37 | S X1=$P($G(^ENG(6914,DA,3)),U,6) S:X1="" X1=0
|
---|
38 | S:X1'=0 X1=""""_X1_""""
|
---|
39 | S @EN("NEXT")=X1
|
---|
40 | Q
|
---|
41 | LSTI ; By LOCAL ID
|
---|
42 | S (X1,X1("T"))=$P($G(^ENG(6914,DA,3)),U,7) S:X1="" (X1,X1("T"))=0
|
---|
43 | S:X1'?.N X1("T")=""""_X1_""""
|
---|
44 | I ENSRT("ALL") S @EN("NEXT")=X1("T"),EN("NEXT")=$C($A(EN("NEXT"))+1)
|
---|
45 | E S X="" D
|
---|
46 | . I ENSRT("FR")]X1!(X1]ENSRT("TO")) S X=-1 Q
|
---|
47 | . S @EN("NEXT")=X1("T"),EN("NEXT")=$C($A(EN("NEXT"))+1)
|
---|
48 | I ENSRT("LOC"),$G(X)'=-1 D
|
---|
49 | . S X1=$$LOC^ENEQPMS8(DA) I X1=-1 S X=-1 Q
|
---|
50 | . I $P(X1,U)=-2,ENSRT("LOC","ALL") D
|
---|
51 | .. S X1=""""_$P(X1,U,2)_""""
|
---|
52 | .. F J=1:1:($L(ENSRT("BY"))-1) S X1="0,"_X1
|
---|
53 | . I $P(X1,U)=-2 S X=-1 Q
|
---|
54 | . I X1=-3,ENSRT("LOC","ALL") D
|
---|
55 | .. S X1=0 F J=1:1:($L(ENSRT("BY"))-1) S X1="0,"_X1
|
---|
56 | . I X1=-3 S X=-1 Q
|
---|
57 | . S @EN("NEXT")=X1
|
---|
58 | Q
|
---|
59 | LSTL ; By LOCATION
|
---|
60 | S X1=$$LOC^ENEQPMS8(DA) I X1=-1 S X=-1 Q
|
---|
61 | I $P(X1,U)=-2,ENSRT("LOC","ALL") D
|
---|
62 | . S X1=""""_$P(X1,U,2)_""""
|
---|
63 | . F J=1:1:($L(ENSRT("BY"))-1) S X1="0,"_X1
|
---|
64 | I $P(X1,U)=-2 S X=-1 Q
|
---|
65 | I X1=-3,ENSRT("LOC","ALL") D
|
---|
66 | . S X1=0 F J=1:1:($L(ENSRT("BY"))-1) S X1="0,"_X1
|
---|
67 | I X1=-3 S X=-1 Q
|
---|
68 | S @EN("NEXT")=X1
|
---|
69 | Q
|
---|
70 | LSTC ; By EQUIPMENT CATEGORY
|
---|
71 | S X2=$P($G(^ENG(6914,DA,1)),U) S:X2="" X1=0
|
---|
72 | I X2>0 S X1=$P($G(^ENG(6911,X2,0)),U) S:X1="" X1=0
|
---|
73 | S:X1'?.N X1=""""_X1_""""
|
---|
74 | I 'ENSRT("ALL"),X2'=ENSRT("FR") S X=-1 Q
|
---|
75 | S @EN("NEXT")=X1,EN("NEXT")=$C($A(EN("NEXT"))+1)
|
---|
76 | I ENSRT("LOC") D
|
---|
77 | . S X1=$$LOC^ENEQPMS8(DA) I X1=-1 S X=-1 Q
|
---|
78 | . I $P(X1,U)=-2,ENSRT("LOC","ALL") D
|
---|
79 | .. S X1=""""_$P(X1,U,2)_""""
|
---|
80 | .. F J=1:1:($L(ENSRT("BY"))-1) S X1="0,"_X1
|
---|
81 | . I $P(X1,U)=-2 S X=-1 Q
|
---|
82 | . I X1=-3,ENSRT("LOC","ALL") D
|
---|
83 | .. S X1=0 F J=1:1:($L(ENSRT("BY"))-1) S X1="0,"_X1
|
---|
84 | . I X1=-3 S X=-1 Q
|
---|
85 | . S @EN("NEXT")=X1
|
---|
86 | Q
|
---|
87 | LSTS ; By OWNING SERVICE
|
---|
88 | S X2=$P($G(^ENG(6914,DA,3)),U,2) S:X2="" X1=0
|
---|
89 | I X2>0 S X1=$P($G(^DIC(49,X2,0)),U) S:X1="" X1=0
|
---|
90 | S:X1'?.N X1=""""_X1_""""
|
---|
91 | I 'ENSRT("ALL"),X2'=ENSRT("FR") S X=-1 Q
|
---|
92 | S @EN("NEXT")=X1,EN("NEXT")=$C($A(EN("NEXT"))+1)
|
---|
93 | I ENSRT("LOC") D
|
---|
94 | . S X1=$$LOC^ENEQPMS8(DA) I X1=-1 S X=-1 Q
|
---|
95 | . I $P(X1,U)=-2,ENSRT("LOC","ALL") D
|
---|
96 | .. S X1=""""_$P(X1,U,2)_""""
|
---|
97 | .. F J=1:1:($L(ENSRT("BY"))-1) S X1="0,"_X1
|
---|
98 | . I $P(X1,U)=-2 S X=-1 Q
|
---|
99 | . I X1=-3,ENSRT("LOC","ALL") D
|
---|
100 | .. S X1=0 F J=1:1:($L(ENSRT("BY"))-1) S X1="0,"_X1
|
---|
101 | . I X1=-3 S X=-1 Q
|
---|
102 | . S @EN("NEXT")=X1
|
---|
103 | Q
|
---|
104 | ;
|
---|
105 | LSTSKP ; Check for SKIP MONTHS
|
---|
106 | S ENSKP=$P(^ENG(6914,DA,4,SE,0),U,3) G:ENSKP']"" LST21 S ENMNTH=$P(ENSKP,"-",1) D RVMNTH^ENLIB1 S ENSKP("FR")=ENMN,ENMNTH=$P(ENSKP,"-",2) D RVMNTH^ENLIB1 S ENSKP("TO")=ENMN
|
---|
107 | I ENSKP("FR")'>ENSKP("TO") G:ENPMMN<ENSKP("FR")!(ENPMMN>ENSKP("TO")) LST21 K ENSKP Q
|
---|
108 | I ENPMMN'>ENSKP("TO")!(ENPMMN'<ENSKP("FR")) K ENSKP Q
|
---|
109 | LST21 ; SKIP MONTH not a problem
|
---|
110 | K ENSKP S ENHZS="^",ENSTMN=1 I $D(^ENG(6914,DA,4,SE,1)),^(1)>1 S ENSTMN=^(1)
|
---|
111 | S MULT=0 F S MULT=$O(^ENG(6914,DA,4,SE,2,MULT)) Q:MULT'>0 I $P(^ENG(6914,DA,4,SE,2,MULT,0),U)]"" S ENHZS=ENHZS_$P(^(0),U)_"^",ENHZ($P(^(0),U))=SE_U_MULT
|
---|
112 | I ENPM["W" D LSTW Q
|
---|
113 | I ENHZS["^TA^" D Q:$G(ENHZ)="TA"
|
---|
114 | . S MULT=$P(ENHZ("TA"),U,2),ENSTYR=$P(^ENG(6914,DA,4,SE,2,MULT,0),U,6) Q:ENSTYR'?4N
|
---|
115 | . I ENSTYR>ENPMYR Q
|
---|
116 | . I '(ENPMYR-ENSTYR#3),(ENPMMN=ENSTMN) S ENHZ="TA",ENHZ(1)="TRI-ANNUAL" D BLD
|
---|
117 | I ENHZS["^BA^" D Q:$G(ENHZ)="BA"
|
---|
118 | . S MULT=$P(ENHZ("BA"),U,2),ENSTYR=$P(^ENG(6914,DA,4,SE,2,MULT,0),U,6) Q:ENSTYR'?4N
|
---|
119 | . I ENSTYR>ENPMYR Q
|
---|
120 | . I '(ENPMYR-ENSTYR#2),(ENPMMN=ENSTMN) S ENHZ="BA",ENHZ(1)="BI-ANNUAL" D BLD
|
---|
121 | I ENHZS["^A^",ENSTMN=ENPMMN S ENHZ="A",ENHZ(1)="ANNUAL" D BLD Q
|
---|
122 | I ENHZS["^S^",'(ENPMMN-ENSTMN#6) S ENHZ="S",ENHZ(1)="SEMI-ANNUAL" D BLD Q
|
---|
123 | I ENHZS["^Q^",'(ENPMMN-ENSTMN#3) S ENHZ="Q",ENHZ(1)="QUARTERLY" D BLD Q
|
---|
124 | I ENHZS["^BM^",'(ENPMMN-ENSTMN#2) S ENHZ="BM",ENHZ(1)="BI-MONTHLY" D BLD Q
|
---|
125 | I ENHZS["^M^" S ENHZ="M",ENHZ(1)="MONTHLY" D BLD
|
---|
126 | Q
|
---|
127 | ;
|
---|
128 | LSTW I ENHZS["BW",(ENPM["1"!(ENPM["3")) S ENHZ="BW",ENHZ(1)="BI-WEEKLY" D BLD Q
|
---|
129 | I ENHZS["^W^" S ENHZ="W",ENHZ(1)="WEEKLY" D BLD
|
---|
130 | Q
|
---|
131 | ;
|
---|
132 | BLD ; Build ^TMP GLOBAL
|
---|
133 | S NODE="^TMP($J,""ENWL"","_ENSHKEY_","_SUB_DA_")"
|
---|
134 | S @NODE=ENHZ_U_ENHZ(1)_U_ENHZ(ENHZ)
|
---|
135 | Q
|
---|
136 | ;
|
---|
137 | OUT K K,S,ENDATE,ENPM,ENPMDT,ENA,ENHZS,ENPMWK,ENSHOP,ENSHKEY,ENPMMN,ENSTMN,ENSTYR,ENCRIT,ENSRT,ENTECH,ENY,ENERR,ENMN,ENMNTH,ENI,ENLID
|
---|
138 | S:$D(ZTQUEUED) ZTREQ="@"
|
---|
139 | Q
|
---|
140 | ;ENEQPMS2
|
---|