| 1 | ENLIB2 ;(WASH ISC)/DH-Package Utilities ;1/10/2001
 | 
|---|
| 2 |  ;;7.0;ENGINEERING;**21,35,68**;Aug 17, 1993
 | 
|---|
| 3 | PO ;Called when PO# entered into Equip File
 | 
|---|
| 4 |  ;X=PO# and DA is Equip IEN
 | 
|---|
| 5 |  S ENPO=X,ENPO(0)=0 I $D(^PRC(442,"B",ENPO)) S ENPO(0)=$O(^(ENPO,0))
 | 
|---|
| 6 |  E  I $D(^PRC(442,"C",ENPO)) S ENPO(0)=$O(^(ENPO,0))
 | 
|---|
| 7 |  I ENPO(0)'>0!('$D(^PRC(442,ENPO(0),0))) K ENPO Q
 | 
|---|
| 8 |  S ENPO("FCP")=$P(^PRC(442,ENPO(0),0),U,3),ENPO("CC")=$P(^(0),U,5),ENPO("SUB")=$P(^(0),U,6)
 | 
|---|
| 9 |  S (ENPO("VEN"),ENPO("SRV"),ENPO("SRC"))=""
 | 
|---|
| 10 |  I $D(^PRC(442,ENPO(0),1)) S ENPO("VEN")=$P(^(1),U),ENPO("SRV")=$P(^(1),U,2),ENPO("SRC")=$P(^(1),U,7)
 | 
|---|
| 11 |  I '$D(^ENG(6914,DA,8)) S ^ENG(6914,DA,8)="^^"_ENPO("FCP")_"^"_ENPO("CC")_"^"_ENPO("SUB") G PO1
 | 
|---|
| 12 |  I $P(^ENG(6914,DA,8),U,3)="" S $P(^(8),U,3)=ENPO("FCP")
 | 
|---|
| 13 |  I $P(^ENG(6914,DA,8),U,4)="" S $P(^(8),U,4)=ENPO("CC")
 | 
|---|
| 14 |  I $P(^ENG(6914,DA,8),U,5)="" S $P(^(8),U,5)=ENPO("SUB")
 | 
|---|
| 15 | PO1 I ENPO("VEN")]"" S:'$D(^ENG(6914,DA,2)) ^ENG(6914,DA,2)=ENPO("VEN") I $P(^ENG(6914,DA,2),U)="" S $P(^(2),U)=ENPO("VEN")
 | 
|---|
| 16 |  I ENPO("SRV")]"" D SRV
 | 
|---|
| 17 |  I ENPO("SRC")]"" S:'$D(^ENG(6914,DA,2)) $P(^ENG(6914,DA,2),U,14)=ENPO("SRC") I $P(^ENG(6914,DA,2),U,14)="" S $P(^(2),U,14)=ENPO("SRC")
 | 
|---|
| 18 | EXIT K ENPO
 | 
|---|
| 19 |  Q
 | 
|---|
| 20 |  ;
 | 
|---|
| 21 | ACC ;Toggle WO STATUS on basis of 2237
 | 
|---|
| 22 |  ;Expects DA based on Work Order File
 | 
|---|
| 23 |  I $D(^ENG(6920,DA,5)),$P(^(5),U,2)]"" Q
 | 
|---|
| 24 |  S ENX="" I $D(^ENG(6920,DA,4)) S ENX=$P(^(4),U,2)
 | 
|---|
| 25 |  I ENX'>0 K ENX Q
 | 
|---|
| 26 |  I $D(^PRCS(410,ENX,9)),$P(^(9),U,3)]"" K ENX Q
 | 
|---|
| 27 |  S (ENX(0),ENX(1))="" I $D(^PRCS(410,ENX,"IT")) S ENX(0)=$O(^PRCS(410,ENX,"IT",0)) S:ENX(0)>0 ENX(1)=$E($P(^PRCS(410,ENX,"IT",ENX(0),0),U,4),1,2)
 | 
|---|
| 28 |  S $P(^ENG(6920,DA,4),U,3)=$S(ENX(1)=25:4,1:3)
 | 
|---|
| 29 |  K ENX
 | 
|---|
| 30 |  Q
 | 
|---|
| 31 |  ;
 | 
|---|
| 32 | ACCX ;  IFCAP entry point from File 410
 | 
|---|
| 33 |  ;    DA => IEN to File 6914
 | 
|---|
| 34 |  ;    +X => IEN to Work Order File
 | 
|---|
| 35 |  Q:'$D(^ENG(6920,+X,0))  ; in case W.O. deleted and file 410 re-indexed
 | 
|---|
| 36 |  N ENDA S ENDA=DA
 | 
|---|
| 37 |  N DA S DA=+X,$P(^ENG(6920,DA,4),U,2)=ENDA
 | 
|---|
| 38 |  D ACC
 | 
|---|
| 39 |  Q
 | 
|---|
| 40 |  ;
 | 
|---|
| 41 | POWO ;  IFCAP entry point from File 442
 | 
|---|
| 42 |  Q  ;May be activated in conjunction with a future IFCAP patch
 | 
|---|
| 43 |  ;
 | 
|---|
| 44 | SRV ;Service pointer
 | 
|---|
| 45 |  I $D(^ENG(6914,DA,3)),$P(^(3),U,2)]"" Q  ;Don't overwrite
 | 
|---|
| 46 |  S $P(^ENG(6914,DA,3),U,2)=ENPO("SRV"),^ENG(6914,"AC",ENPO("SRV"),DA)=""
 | 
|---|
| 47 |  Q
 | 
|---|
| 48 |  ;
 | 
|---|
| 49 | CMRNOM ;Subheader on CMR
 | 
|---|
| 50 |  Q:'$D(D0)  I '$D(ENCMR) S ENCMR=$S($D(^ENG(6914,D0,2)):$P(^(2),U,9),1:0) S:ENCMR="" ENCMR=0 I $D(^ENG(6914.1,ENCMR,0)) S ENCMR(0)=$P(^(0),U,5) I ENCMR(0)]"",$D(^DIC(49,ENCMR(0),0)) W !,?13,$P(^(0),U)," SERVICE" D CMRRO W !!
 | 
|---|
| 51 |  I $D(^ENG(6914,D0,2)),$P(^(2),U,9)'=ENCMR S ENCMR=$P(^(2),U,9) S:ENCMR="" ENCMR=0 I $D(^ENG(6914.1,ENCMR,0)) S ENCMR(0)=$P(^(0),U,5) I ENCMR(0)]"",$D(^DIC(49,ENCMR(0),0)) W !,?13,$P(^(0),U)," SERVICE" D CMRRO W !!
 | 
|---|
| 52 |  I '$D(ENNOMEN) S ENNOMEN=$S($D(^ENG(6914,D0,2)):$P(^(2),U,8),1:0) S:ENNOMEN="" ENNOMEN=0 D:$D(^ENCSN(6917,ENNOMEN,0)) CMRPRNT Q
 | 
|---|
| 53 |  I $D(^ENG(6914,D0,2)),$P(^(2),U,8)=ENNOMEN Q
 | 
|---|
| 54 |  I '$D(^ENG(6914,D0,2)) K ENNOMEN Q
 | 
|---|
| 55 |  S ENNOMEN=$S($P(^ENG(6914,D0,2),U,8)]"":$P(^(2),U,8),1:0) D:$D(^ENCSN(6917,ENNOMEN,0)) CMRPRNT
 | 
|---|
| 56 |  Q
 | 
|---|
| 57 | CMRPRNT N X,DIWL,DIWR,DIWF K ^UTILITY($J,"W") S DIWL=1,DIWR=IOM,DIWF="W"
 | 
|---|
| 58 |  W !!,"CATEGORY STOCK NUMBER: ",$P(^ENCSN(6917,ENNOMEN,0),U) F ENNX=0:0 S ENNX=$O(^ENCSN(6917,ENNOMEN,1,ENNX)) Q:ENNX'>0  I $D(^(ENNX,0)) S X=^(0) D ^DIWP
 | 
|---|
| 59 |  D ^DIWW K ENNX
 | 
|---|
| 60 |  Q
 | 
|---|
| 61 | CMRRO ; CMR Responsible Official
 | 
|---|
| 62 |  N ENRO,DIERR
 | 
|---|
| 63 |  S ENRO=$$GET1^DIQ(6914.1,ENCMR,1)
 | 
|---|
| 64 |  I ENRO]"" W !,?13,"Responsible Official: ",ENRO
 | 
|---|
| 65 |  Q
 | 
|---|
| 66 |  ;
 | 
|---|
| 67 | WA ;Count the number of WORK ACTIONS
 | 
|---|
| 68 |  ;called by the input transform of File 6920 Subfile 6920.035 Field .01
 | 
|---|
| 69 |  N I,J,COUNT S COUNT=0
 | 
|---|
| 70 |  F I=0:0 S I=$O(^ENG(6920,DA,8,I)) Q:I'>0  S COUNT=COUNT+1,J=$P(^(I,0),U) Q:J=X
 | 
|---|
| 71 |  Q:COUNT<4  Q:J=X
 | 
|---|
| 72 |  D EN^DDIOL("  Can't have more than four WORK ACTIONS.")
 | 
|---|
| 73 |  K X
 | 
|---|
| 74 |  Q
 | 
|---|
| 75 |  ;
 | 
|---|
| 76 | ASN ;Count the number of ALTERNATE STATION NUMBERS
 | 
|---|
| 77 |  ;called by the input transform of File 6910 Subfile 6910.012 Field .01
 | 
|---|
| 78 |  N I,J,COUNT S (COUNT,I)=0
 | 
|---|
| 79 |  F  S I=$O(^DIC(6910,DA,3,I)) Q:'I  S COUNT=COUNT+1,J=$P(^(I,0),U) Q:J=X
 | 
|---|
| 80 |  Q:COUNT<30  Q:J=X
 | 
|---|
| 81 |  D EN^DDIOL("  Can't have more than thirty (30) ALTERNATE STATION NUMBERS.")
 | 
|---|
| 82 |  K X
 | 
|---|
| 83 |  Q
 | 
|---|
| 84 |  ;ENLIB2
 | 
|---|