1 | ENFAACQ ;WASHINGTON IRMFO/SAB; EQUIPMENT ACQUISITION; 1/3/97
|
---|
2 | ;;7.0;ENGINEERING;**29,39**;Aug 17, 1993
|
---|
3 | ;This routine should not be modified.
|
---|
4 | ;called from routines ENEQ1, ENEQ2, ENEQ3, ENFADEL and ENFAXMTM
|
---|
5 | ; Input
|
---|
6 | ; ENEQ("DA") - equipment entry #
|
---|
7 | ; should already be locked (if appropriate)
|
---|
8 | ; must not already have an active FA Document on file
|
---|
9 | ; ENBAT("SILENT") - (optional) $D true for silent batch processing
|
---|
10 | ; ENBAT("SEL") - (optional) $D true for batch (by CMR or Station)
|
---|
11 | ; Output
|
---|
12 | ; ^TMP($J,"BAD",ENEQ("DA"), - validation problems (if any)
|
---|
13 | ; only returned when $D(ENBAT("SILENT"))
|
---|
14 | D SETUP
|
---|
15 | D:ENDO VALEQ
|
---|
16 | D:ENDO ADDFA
|
---|
17 | K ENAV I ENDO,'$D(ENBAT("SEL")) D I $G(ENUT) S ENDO=0 K ENUT
|
---|
18 | . S ENAV=$$AVP^ENFAAV("6915.2",ENFA("DA"))
|
---|
19 | . I 'ENAV W !,"Adjustment voucher was NOT created."
|
---|
20 | D:'ENDO DEL
|
---|
21 | D:ENDO UPDATE
|
---|
22 | D WRAPUP
|
---|
23 | Q
|
---|
24 | SETUP ;
|
---|
25 | S ENDO=1
|
---|
26 | S ENFA("DA")=""
|
---|
27 | S ENFAP("DOC")="FA"
|
---|
28 | F I=0:1:3,8,9 S ENEQ(I)=$G(^ENG(6914,ENEQ("DA"),I))
|
---|
29 | S:'$D(ENFAP("SITE")) ENFAP("SITE")=+^ENG(6915.1,1,0)
|
---|
30 | Q
|
---|
31 | VALEQ ; validate equipment
|
---|
32 | K ^TMP($J,"BAD",ENEQ("DA"))
|
---|
33 | D ^ENFAVAL
|
---|
34 | I $D(^TMP($J,"BAD",ENEQ("DA"))) D:'$D(ENBAT("SILENT")) LISTP^ENFAXMTM S ENDO=0 Q
|
---|
35 | Q
|
---|
36 | ADDFA ; create entry for FA code sheet
|
---|
37 | S DIC="^ENG(6915.2,",DIC(0)="L",DLAYGO=6915.2
|
---|
38 | S X=ENEQ("DA"),DIC("DR")="1///NOW;1.5////^S X=DUZ"
|
---|
39 | K DD,DO D FILE^DICN K DLAYGO
|
---|
40 | I Y'>0 D S ENDO=0 Q
|
---|
41 | . I $D(ENBAT("SILENT")) D BAD("Can't add to FA DOCUMENT LOG") Q
|
---|
42 | . W !!,"Can't update the FA DOCUMENT LOG file. Better contact IRM."
|
---|
43 | S ENFA("DA")=+Y
|
---|
44 | L +^ENG(6915.2,+Y):0 I '$T D S ENDO=0 Q
|
---|
45 | . I $D(ENBAT("SILENT")) D BAD("Can't lock FA Document") Q
|
---|
46 | . W !!,"The FA document that you just created can not be locked."
|
---|
47 | . W !,"Please notify your ADPAC."
|
---|
48 | S ENFAP(0)=$G(^ENG(6915.2,ENFA("DA"),0))
|
---|
49 | Q
|
---|
50 | DEL ;
|
---|
51 | I $G(ENFA("DA"))]"" D
|
---|
52 | . S DA=ENFA("DA"),DIK="^ENG(6915.2," D ^DIK K DIK
|
---|
53 | . W:'$D(ENBAT("SILENT")) !,"FA Document deleted..."
|
---|
54 | I '$D(ENBAT("SILENT")) D
|
---|
55 | . W $C(7),!,"No action taken. Database unchanged."
|
---|
56 | . S DIR(0)="E" D ^DIR K DIR
|
---|
57 | Q
|
---|
58 | UPDATE ;
|
---|
59 | ; update equipment file
|
---|
60 | ; populate station number field when blank
|
---|
61 | I $P(ENEQ(9),U,5)="" D
|
---|
62 | . S $P(^ENG(6914,ENEQ("DA"),9),U,5)=ENFAP("SITE")
|
---|
63 | . S $P(ENEQ(9),U,5)=ENFAP("SITE")
|
---|
64 | ; make sure value contains 2 decimals
|
---|
65 | I $P(ENEQ(2),U,3)'?1.12N1"."2N D
|
---|
66 | . S $P(ENEQ(2),U,3)=$$DEC^ENFAUTL($P(ENEQ(2),U,3))
|
---|
67 | . S $P(^ENG(6914,ENEQ("DA"),2),U,3)=$P(ENEQ(2),U,3)
|
---|
68 | ; if acquisition day not specified use 01
|
---|
69 | I $E($P(ENEQ(2),U,4),6,7)="00" D
|
---|
70 | . S $P(ENEQ(2),U,4)=$E($P(ENEQ(2),U,4),1,5)_"01"
|
---|
71 | . S $P(^ENG(6914,ENEQ("DA"),2),U,4)=$P(ENEQ(2),U,4)
|
---|
72 | ; if replacement day not specified use 01
|
---|
73 | I $E($P(ENEQ(2),U,10),6,7)="00" D
|
---|
74 | . S $P(ENEQ(2),U,10)=$E($P(ENEQ(2),U,10),1,5)_"01"
|
---|
75 | . S $P(^ENG(6914,ENEQ("DA"),2),U,10)=$P(ENEQ(2),U,10)
|
---|
76 | ; save current value in adjusted value field on code sheet
|
---|
77 | S ^ENG(6915.2,ENFA("DA"),200)=$P(ENEQ(2),U,3)
|
---|
78 | ; update FAP Balance
|
---|
79 | D ADJBAL^ENFABAL($P(ENEQ(9),U,5),$P(ENEQ(9),U,7),$P(ENEQ(8),U,6),$P($P(ENFAP(0),U,2),"."),$P(ENEQ(2),U,3))
|
---|
80 | ; transmit code sheet
|
---|
81 | W:'$D(ENBAT("SILENT")) !!,"Sending FA document to FAP..."
|
---|
82 | D ^ENFAXMT
|
---|
83 | ; save adjustment voucher
|
---|
84 | I $G(ENAV) D
|
---|
85 | . S DIE="^ENG(6915.2,",DR="301///NOW",DA=ENFA("DA") D ^DIE
|
---|
86 | . W !,"Adjustment Voucher was created.",!
|
---|
87 | Q
|
---|
88 | WRAPUP ;
|
---|
89 | I $G(ENFA("DA"))]"" L -^ENG(6915.2,ENFA("DA"))
|
---|
90 | F I=0:1:3,8,9 K ENEQ(I)
|
---|
91 | K ENAV,ENDO,ENFAP,ENFA
|
---|
92 | K DA,DIC,DIE,DR,DIK,DIR,DIROUT,DIRUT,DTOUT,DUOUT,I,X,Y
|
---|
93 | Q
|
---|
94 | BAD(X) ; add text to validation problem list
|
---|
95 | N I
|
---|
96 | S I=$P($G(^TMP($J,"BAD",ENEQ("DA"))),U)+1
|
---|
97 | S ^TMP($J,"BAD",ENEQ("DA"),I)=X
|
---|
98 | S ^TMP($J,"BAD",ENEQ("DA"))=I
|
---|
99 | Q
|
---|
100 | ;ENFAACQ
|
---|