[613] | 1 | ENWOD2 ;(WASH ISC)/DLM/DH-Formatted Work Order Display ;12.10.97
|
---|
| 2 | ;;7.0;ENGINEERING;**15,35,42,43,47**;Aug 17, 1993
|
---|
| 3 | ; write the information
|
---|
| 4 | TOP N I,I1,J,K,X,ENPG
|
---|
| 5 | N IOINLOW,IOINHI,IOINORM D ZIS^ENUTL
|
---|
| 6 | S X="ENZWO1" X ^%ZOSF("TEST") I $T D ^ENZWO1
|
---|
| 7 | S ENX("WP")=$S($L(EN(31))>120:3,$L(EN(31))>70:2,EN(31)]"":1,1:0),ENPG=0
|
---|
| 8 | S ENX("AT")=0,I=100 F S I=$O(EN(I)) Q:'I S ENX("AT")=ENX("AT")+1
|
---|
| 9 | S ENORIG=$P(^ENG(6920,DA,0),U,6) S ENORIG("P")=0 I ENORIG]"",ENORIG'=ENWO S ENORIG("P")=1
|
---|
| 10 | S $X=1,$Y=0 W ?$S(ENORIG("P"):10,1:21) D W("WORK ORDER # "_ENWO)
|
---|
| 11 | W:ENORIG("P") " (Original #: "_ENORIG_")"
|
---|
| 12 | W ! D W(" 1) ") W "PRIMARY EMPL: " I EN(1)]"",$D(^ENG("EMP",EN(1),0)) D W($P(^(0),U))
|
---|
| 13 | W ?39 D W(" 2) ") W "REQ DATE: " S X=EN(2) D PDT
|
---|
| 14 | W ! D W(" 3) ") W "REQ MODE: " D W(EN(3)) W ?39 D W(" 4) ") W "LOCATION: " D:EN(4)]"" W(EN(4))
|
---|
| 15 | W ! D W(" 5) ") W "BED #: " D:EN(5)]"" W(EN(5))
|
---|
| 16 | W ?39 D W(" 6) ") W $S(ENDSTAT=35.2:"PM STATUS: ",1:"STATUS: ") D W($E(EN(6),1,18))
|
---|
| 17 | W ! D W(" 7) ") W "TASK DESC: " D W(EN(7))
|
---|
| 18 | TOP4 D TOP4^ENWOD3
|
---|
| 19 | TOP15 W ! D W("25) ") W "WORK CTR: " D:EN(25)]"" W(EN(25))
|
---|
| 20 | W ! D W("26) ") W "TOTAL HOURS: " D:EN(26)]"" W(EN(26))
|
---|
| 21 | W ?39 D W("27) ") W "TOTAL MATERIAL COST: " D:EN(27)]"" W(EN(27))
|
---|
| 22 | W ! D W("28) ") W "TOTAL LABOR COST: " D:EN(28)]"" W(EN(28))
|
---|
| 23 | W ?39 D W("29) ") W "VENDOR SERVICE COST: " D:EN(29)]"" W(EN(29))
|
---|
| 24 | W ! D W("30) ") W "*ASSIGNED TECH*" W ?39 D W("31) ") W "DATE COMPLETE: " S X=EN(31) D PDT
|
---|
| 25 | I 'ENX("AT") G WP
|
---|
| 26 | F I=101:1:(ENJ-1) D WRTEC I I=105,$D(EN(106)) D G:ENX="^" KILL
|
---|
| 27 | . S ENX="" I $E(IOST,1,2)="C-" D HOLD W ! D W("30) ") W "*ASSIGNED TECH*"
|
---|
| 28 | ;
|
---|
| 29 | WP I 'ENPG,((ENX("AT")+ENX("WP"))>5),($E(IOST,1,2)="C-") D HOLD Q:ENX="^"
|
---|
| 30 | W ! D W("32) ") W "WORK PERFORMED: "
|
---|
| 31 | I EN(32)]"" D
|
---|
| 32 | . I $L(EN(32))<60 D W(EN(32)) Q
|
---|
| 33 | . K ^UTILITY($J,"W") S X=EN(32),DIWL=1,DIWR=59,DIWF="" D ^DIWP
|
---|
| 34 | . S J=0 F S J=$O(^UTILITY($J,"W",1,J)) Q:'J W:J>1 !,?20 D W(^(J,0))
|
---|
| 35 | I $D(^ENG(6920,DA,6)),'ENPG,$E(IOST,1,2)="C-" D HOLD G:ENX="^" KILL
|
---|
| 36 | W ! D W("33) ") W "COMMENTS: "
|
---|
| 37 | WCO S (ENX,X)="" I $D(^ENG(6920,DA,6)) S DIWL=5,DIWR=(IOM-5),DIWF="|" K ^UTILITY($J,"W") D G:ENX="^" KILL
|
---|
| 38 | . S ENNX=0 F S ENNX=$O(^ENG(6920,DA,6,ENNX)) Q:'ENNX S X=^(ENNX,0) D ^DIWP
|
---|
| 39 | . W IOINHI S ENNX=0 F S ENNX=$O(^UTILITY($J,"W",DIWL,ENNX)) Q:'ENNX W !,?DIWL,^UTILITY($J,"W",DIWL,ENNX,0) I (IOSL-$Y)'>2 D Q:ENX="^"
|
---|
| 40 | .. W IOINLOW D HOLD
|
---|
| 41 | .. W:ENX'="^" IOINHI
|
---|
| 42 | . W IOINLOW
|
---|
| 43 | I EN(14)]"",$D(^ENG(6914,EN(14),0)) K ENX S EQDA=EN(14) D NOTES(EQDA) D ; Look for flags
|
---|
| 44 | . I $G(ENX("T"))>0 D
|
---|
| 45 | .. I (IOSL-$Y)'>4 D HOLD Q:ENX="^"
|
---|
| 46 | .. I ENX(1)]"" D
|
---|
| 47 | ... W !,"WARRANTY EXPIRATION: ",IOINHI W:ENX(1)>DT "**" W $E(ENX(1),4,5),"/",$E(ENX(1),6,7),"/",$E(ENX(1),2,3) W:ENX(1)>DT "**" W IOINLOW
|
---|
| 48 | ... I ENX(9)]"" W ?49 D W("JCAHO=YES")
|
---|
| 49 | ... I ENX(4)]"" W !,"Last PMI was DEFERRED."
|
---|
| 50 | .. I ENX(1)="",(ENX(4)]""!(ENX(9)]"")) D
|
---|
| 51 | ... W ! W:ENX(4)]"" "Last PMI was DEFERRED." I ENX(9)]"" W ?49 D W("JCAHO=YES")
|
---|
| 52 | .. I ENX(3) W ! D W("NOTE: Equipment must be isolated and rendered inoperative prior to service.")
|
---|
| 53 | .. I ENX(7)]"" W !,"EQUIPMENT USE STATUS LISTED AS " D W(ENX(7)) W "."
|
---|
| 54 | . I $D(ENX("WO")) D
|
---|
| 55 | .. I (IOSL-$Y)'>5 D HOLD Q:ENX="^"
|
---|
| 56 | .. W !!," [OTHER OPEN WORK ORDERS FOR THIS EQUIPMENT]"
|
---|
| 57 | .. W !," Work Order #",?18,"Task Description"
|
---|
| 58 | .. S SHOP=0 I $D(ENX("WO","HAZ")) D
|
---|
| 59 | ... F S SHOP=$O(ENX("WO","HAZ",SHOP)) Q:SHOP'>0 S J=9999999999 D
|
---|
| 60 | .... F S J=$O(ENX("WO","HAZ",SHOP,J),-1) Q:J'>0 W !,?2 D W($P(^ENG(6920,J,0),U)) W ?18 D W($E($P($G(^ENG(6920,J,1)),U,2),1,52)_" (Hazard)")
|
---|
| 61 | .. S SHOP=0 I $D(ENX("WO","PM")) D
|
---|
| 62 | ... F S SHOP=$O(ENX("WO","PM",SHOP)) Q:SHOP'>0 S J=$O(ENX("WO","PM",SHOP,0)) W !,?2,$P(^ENG(6920,J,0),U),?18,$P($G(^ENG(6920,J,5)),U,7)
|
---|
| 63 | .. S J=9999999999,K=0
|
---|
| 64 | .. F S J=$O(ENX("WO",J),-1),K=K+1 Q:J'>0!(K>9) W !,?2,$P(^ENG(6920,J,0),U),?18,$S($E(^(0),1,3)'="PM-":$P($G(^(1)),U,2),1:$P($G(^(5)),U,7)) I (IOSL-$Y)'>2 D HOLD Q:ENX="^"
|
---|
| 65 | .. I K>9 W !,?2,"There are more..."
|
---|
| 66 | S X="ENZWO2" X ^%ZOSF("TEST") I $T D ^ENZWO2
|
---|
| 67 | I $O(^DIPT("B","ENZWO.LOCAL",0))>0 D
|
---|
| 68 | . S L=0,DIC="^ENG(6920,",FLDS="[ENZWO.LOCAL]",BY=".01",(FR,TO)=ENWO,DHD="@@",IOP=ION,DISUPNO=1,ENX("DA")=DA
|
---|
| 69 | . I (IOSL-$Y)'>5 D HOLD Q:ENX="^"
|
---|
| 70 | . D EN1^DIP
|
---|
| 71 | . S DA=ENX("DA")
|
---|
| 72 | KILL K EN,ENLTH,ENORD,ENNU,ENNX,DIWL,DIWR,DIWF,ENA,ENB,ENTNX,ENORIG,ENJ,ENDATA,EQDA,ENX
|
---|
| 73 | Q
|
---|
| 74 | ;
|
---|
| 75 | PDT ;Display date in external format
|
---|
| 76 | I X]"" S Y=X X ^DD("DD") D W(Y)
|
---|
| 77 | Q
|
---|
| 78 | ;
|
---|
| 79 | WRTEC ;Print assigned techs
|
---|
| 80 | W !," #",I-100,": " I EN(I)]"",$D(^ENG("EMP",EN(I),0)) D W($P(^(0),U)) W " HRS: " D W(EN(I,1)) W " SHOP: " D W(EN(I,2))
|
---|
| 81 | Q
|
---|
| 82 | ;
|
---|
| 83 | HOLD S ENX="" S:$G(ENPG)]"" ENPG=ENPG+1 I $E(IOST,1,2)="C-" D Q
|
---|
| 84 | . W !,"Press <RETURN> to continue, '^' to escape..."
|
---|
| 85 | . R ENX:DTIME
|
---|
| 86 | . S $Y=0
|
---|
| 87 | W @IOF,"(Work Order: "_ENWO_")"
|
---|
| 88 | Q
|
---|
| 89 | ;
|
---|
| 90 | NOTES(EQDA) ; Check for flagging situations, counted in loc var ENX("T")
|
---|
| 91 | ; EQDA contains IEN for file 6914
|
---|
| 92 | ; Expects ENWO as IEN of work order in question
|
---|
| 93 | ; Flagging situations noted in loc array ENX
|
---|
| 94 | ;
|
---|
| 95 | N HAZCODE,SHOP
|
---|
| 96 | S HAZCODE=$O(^ENG(6920.1,"B","HAZARD ALERT (Equipment)",0))
|
---|
| 97 | S I1=1,ENX("T")=0 F I=1:1:9 S ENX(I)=""
|
---|
| 98 | S ENX(1)=$P($G(^ENG(6914,EQDA,2)),U,5) ;Warranty expiration
|
---|
| 99 | S ENX(2)=$$GET1^DIQ(6914,EQDA,53) ;Condition code
|
---|
| 100 | S ENX(3)=$P(^ENG(6914,EQDA,0),U,5) ;Lockout/Tagout
|
---|
| 101 | S I=0 F S I=$O(^ENG(6914,EQDA,6,I)) Q:'I I $E($P(^(I,0),U,2),1,3)="PM-" Q:$P(^(0),U,3)'["D" S ENX(4)=$P(^(0),U,3) Q ;Deferred PM work order
|
---|
| 102 | I $D(ENWO),$E(ENWO,1,3)'="PM-" D
|
---|
| 103 | . S I=0,J=999999999999 F Q:I>30 S J=$O(^ENG(6920,"G",EQDA,J),-1) Q:J'>0 S I=I+1 D:$P($G(^ENG(6920,J,5)),U,2)=""
|
---|
| 104 | .. I '$D(^ENG(6920,J,0)) K ^ENG(6920,"G",EQDA,J) Q
|
---|
| 105 | .. I ENWO=$P(^ENG(6920,J,0),U) Q
|
---|
| 106 | .. S K=0,SHOP=$P($G(^ENG(6920,J,2)),U) Q:SHOP'>0 I $E(^ENG(6920,J,0),1,3)="PM-",'$D(ENX("WO","PM",SHOP)) S ENX("WO","PM",SHOP,J)="" Q ;Open PM
|
---|
| 107 | .. F S K=$O(^ENG(6920,J,8,K)) Q:K'>0 I ^(K,0)=HAZCODE S ENX("WO","HAZ",SHOP,J)="" Q ;Open Hazard Alert
|
---|
| 108 | .. S:'$D(ENX("WO","HAZ",SHOP,J)) ENX("WO",J)=""
|
---|
| 109 | S ENX(7)=$$GET1^DIQ(6914,EQDA,20) I ENX(7)]"","TURNED IN^LOST OR STOLEN"'[ENX(7) S ENX(7)=""
|
---|
| 110 | S ENX(9)=$$GET1^DIQ(6914,EQDA,27) I ENX(9)'="YES" S ENX(9)="" ;jcaho
|
---|
| 111 | S ENX("T")=(ENX(1)]"")+(ENX(4)]"")+(ENX(9)]"") I ENX("T")>1 S ENX("T")=ENX("T")-1
|
---|
| 112 | S ENX("T")=ENX("T")+(ENX(3)]"")+(ENX(7)]"")
|
---|
| 113 | Q
|
---|
| 114 | ;
|
---|
| 115 | W(ENDATA) ;Bold ENDATA
|
---|
| 116 | N X
|
---|
| 117 | S X=$X W IOINHI S $X=X W ENDATA
|
---|
| 118 | S X=$X W IOINLOW S $X=X
|
---|
| 119 | Q
|
---|
| 120 | ;ENWOD2
|
---|