| 1 | ENFAUTL ;(WIRMFO)/DH/SAB-FAP Utilities ;1.12.98
 | 
|---|
| 2 |  ;;7.0;ENGINEERING;**25,29,39,48**;August 17, 1993
 | 
|---|
| 3 | CHKFA(DA) ;X returned
 | 
|---|
| 4 |  ;piece 1 = 1 if FA current, 0 otherwise
 | 
|---|
| 5 |  ;piece 2 = date/time of current FA
 | 
|---|
| 6 |  ;piece 3 = date/time of current FD
 | 
|---|
| 7 |  ;piece 4 = IEN of most recent FA
 | 
|---|
| 8 |  N FADA,FADT,FDDT,J,K,L,X
 | 
|---|
| 9 |  S K=0 F J=0:0 S J=$O(^ENG(6915.2,"B",DA,J)) Q:'J  S K=J
 | 
|---|
| 10 |  S FADT=$S(K=0:"",1:$P(^ENG(6915.2,K,0),U,2))
 | 
|---|
| 11 |  S L=0 F J=0:0 S J=$O(^ENG(6915.5,"B",DA,J)) Q:'J  S L=J
 | 
|---|
| 12 |  S FDDT=$S(L=0:"",1:$P(^ENG(6915.5,L,0),U,2))
 | 
|---|
| 13 |  S FADA=(FADT>FDDT)
 | 
|---|
| 14 |  S X=FADA_U_FADT_U_FDDT_U_K
 | 
|---|
| 15 |  Q X
 | 
|---|
| 16 |  ;
 | 
|---|
| 17 | DEC(X) ;Add decimal points if necessary
 | 
|---|
| 18 |  ;X must be numeric
 | 
|---|
| 19 |  N X1,X2,Y
 | 
|---|
| 20 |  S X=$TR(X,"$")
 | 
|---|
| 21 |  I X?1.12N1"."2N S Y=X G DECDUN
 | 
|---|
| 22 |  I X=0 S Y="0.00" G DECDUN
 | 
|---|
| 23 |  I X'["." S Y=X_".00" S:$L(Y)>15 Y="" G DECDUN
 | 
|---|
| 24 |  S X1=$P(X,"."),X2=$P(X,".",2) I $L(X1)>12 S Y="" G DECDUN
 | 
|---|
| 25 |  S Y=X1_"."_$E((X2_"00"),1,2)
 | 
|---|
| 26 | DECDUN Q Y
 | 
|---|
| 27 |  ;
 | 
|---|
| 28 | CMRSTA ;Update STATION NUMBER in 6914 upon changes to 6914.1
 | 
|---|
| 29 |  ;Triggered by 'AD' x-ref on 6914.1
 | 
|---|
| 30 |  N EQ,CMR,STATION,DATE,I,X
 | 
|---|
| 31 |  S %DT="T",X="N" D ^%DT,DD^%DT S DATE=Y
 | 
|---|
| 32 |  S STATION("DEF")=$P(^DIC(6910,1,0),U,2)
 | 
|---|
| 33 |  S CMR=DA,STATION=$P(^ENG(6914.1,CMR,0),U,7)
 | 
|---|
| 34 |  S (EQ("COR"),EQ("UPDT"),EQ("FAP"))=0
 | 
|---|
| 35 |  W !!,"Please bear with me as I attempt to update your Equipment File..."
 | 
|---|
| 36 |  S I=0 F  S I=$O(^ENG(6914,"AD",CMR,I)) Q:I'>0  W:'(I#10) "." D
 | 
|---|
| 37 |  . S STATION("EX")=$P($G(^ENG(6914,I,9)),U,5)
 | 
|---|
| 38 |  . I STATION("EX")="",STATION=STATION("DEF") S $P(^ENG(6914,I,9),U,5)=STATION,EQ("UPDT")=EQ("UPDT")+1 Q
 | 
|---|
| 39 |  . I STATION=STATION("EX") S EQ("COR")=EQ("COR")+1 Q
 | 
|---|
| 40 |  . I $D(^ENG(6915.2,"B",I)),+$$CHKFA(I) S EQ("FAP")=EQ("FAP")+1,EQ("FAP",I)="" Q
 | 
|---|
| 41 |  . S $P(^ENG(6914,I,9),U,5)=STATION,EQ("UPDT")=EQ("UPDT")+1
 | 
|---|
| 42 | RSLTS ;Summarize the outcome
 | 
|---|
| 43 |  W !!,(EQ("COR")+EQ("UPDT")+EQ("FAP"))," Equipment Records were examined."
 | 
|---|
| 44 |  W !,EQ("COR")," were found to be correct as is."
 | 
|---|
| 45 |  W !,EQ("UPDT")," were updated."
 | 
|---|
| 46 |  I EQ("FAP")>0 D  G:'EQ("LIST") CMRXIT
 | 
|---|
| 47 |  . S EQ("LIST")=0
 | 
|---|
| 48 |  . W !,EQ("FAP")," have been sent to FAP under the old station number."
 | 
|---|
| 49 |  . W !,"These ",EQ("FAP")," records can only be changed via FAP documents. You must",!,"do an FD, manually change the STATION NUMBER, and then do an FA."
 | 
|---|
| 50 |  . S DIR(0)="Y",DIR("A")="Would you like a list of these "_EQ("FAP")_" records",DIR("B")="YES"
 | 
|---|
| 51 |  . D ^DIR K DIR I $D(DIRUT)!(Y'>0) Q
 | 
|---|
| 52 |  . S EQ("LIST")=1,%ZIS="QM" D ^%ZIS I POP S EQ("LIST")=0 Q
 | 
|---|
| 53 |  . I $D(IO("Q")) D
 | 
|---|
| 54 |  .. S ZTDESC="Equipment to be edited via FAP",ZTRTN="DQ^ENFAUTL"
 | 
|---|
| 55 |  .. F I="EQ","CMR","STATION","DATE" S ZTSAVE(I)=""
 | 
|---|
| 56 |  .. S EQ("LIST")=0 D ^%ZTLOAD,HOME^%ZIS K ZTSK
 | 
|---|
| 57 |  I EQ("FAP")'>0 G CMRXIT
 | 
|---|
| 58 |  ;
 | 
|---|
| 59 | DQ ;Print the FAP list
 | 
|---|
| 60 |  N END,ENL,ENPG
 | 
|---|
| 61 |  U IO
 | 
|---|
| 62 |  S (END,ENPG)=0,$P(ENL,"-",(IOM-2))="-" D HD
 | 
|---|
| 63 |  S I=0 F  S I=$O(EQ("FAP",I)) Q:I'>0  D  Q:END
 | 
|---|
| 64 |  . W !,?10,I
 | 
|---|
| 65 |  . I $Y+4>IOSL,$O(EQ(I))>0 D HD
 | 
|---|
| 66 |  ;
 | 
|---|
| 67 | CMRXIT ; Exit CMRSTA
 | 
|---|
| 68 |  Q
 | 
|---|
| 69 |  ;
 | 
|---|
| 70 | HD ;Report header
 | 
|---|
| 71 |  I $E(IOST,1,2)="C-",ENPG S DIR(0)="E" D ^DIR K DIR I 'Y S END=1 Q
 | 
|---|
| 72 |  I $E(IOST,1,2)="C-"!ENPG W @IOF
 | 
|---|
| 73 |  S ENPG=ENPG+1
 | 
|---|
| 74 |  W "Equipment Not Updated at time of CMR STATION NUMBER change"
 | 
|---|
| 75 |  W ?(IOM-10),"Page ",ENPG
 | 
|---|
| 76 |  W !,"  because the Equipment was Reported to FAP."
 | 
|---|
| 77 |  W !,"CMR: ",$P(^ENG(6914.1,CMR,0),U),?20,"New STATION NUMBER: ",STATION
 | 
|---|
| 78 |  W !,"Date of change: ",DATE
 | 
|---|
| 79 |  W !,ENL
 | 
|---|
| 80 |  Q
 | 
|---|
| 81 |  ;
 | 
|---|
| 82 | CC(STATION,CMR) ;Is putative STATION NUMBER consistent with CMR
 | 
|---|
| 83 |  N X,X1,X2 I STATION'?3N.2UN S X=0 G CCDUN
 | 
|---|
| 84 |  S X=1,X1=$E(STATION),X2=$E(CMR,1,2)
 | 
|---|
| 85 |  I "89"[X1,"57^58"'[X2 S X=0 G CCDUN
 | 
|---|
| 86 |  I X1=3,$E(X2)'=6 S X=0
 | 
|---|
| 87 | CCDUN Q X
 | 
|---|
| 88 |  ;
 | 
|---|
| 89 | DATE(TYPE) ;Get dates for FAP docs
 | 
|---|
| 90 |  ;Returns ENFAP("DT")
 | 
|---|
| 91 |  S %DT("A")=TYPE_" DATE: ",%DT="AE"
 | 
|---|
| 92 | DT D ^%DT I Y'>0 S ENFAP("DT")=+Y Q
 | 
|---|
| 93 |  I $E(Y,4,5)="00" W !,$C(7),"Month is required." G DT
 | 
|---|
| 94 |  I $E(Y,6,7)="00" S Y=$E(Y,1,5)_"01"
 | 
|---|
| 95 |  S ENFAP("DT")=+Y
 | 
|---|
| 96 |  Q
 | 
|---|
| 97 |  ;
 | 
|---|
| 98 | CMRCC(ENI) ; CMR (#6914.1) file COST CENTER computed field
 | 
|---|
| 99 |  ; in ENI (ien of CMR)
 | 
|---|
| 100 |  N ENCC,ENX
 | 
|---|
| 101 |  S ENCC=""
 | 
|---|
| 102 |  S ENX=$E($G(^ENG(6914.1,ENI,0)),1,2)
 | 
|---|
| 103 |  S ENX(0)=$S(ENX]"":$O(^ENG(6914.9,"B",ENX,0)),1:"")
 | 
|---|
| 104 |  S:ENX(0) ENCC=$P($G(^ENG(6914.9,ENX(0),0)),U,3)
 | 
|---|
| 105 |  Q ENCC
 | 
|---|
| 106 |  ;
 | 
|---|
| 107 |  ;ENFAUTL
 | 
|---|