1 | ENFACTL ;(WCIOFO)/SAB-FAP CAPITALIZATION THRESHOLD LIST ;10/14/1999
|
---|
2 | ;;7.0;ENGINEERING;**63**;Aug 17, 1993
|
---|
3 | EN ;
|
---|
4 | ; ask device
|
---|
5 | S %ZIS="QM" D ^%ZIS G:POP EXIT
|
---|
6 | I $D(IO("Q")) D G EXIT
|
---|
7 | . S ZTRTN="QEN^ENFACTL"
|
---|
8 | . S ZTDESC="ENG List Equip to be Expensed"
|
---|
9 | . D ^%ZTLOAD,HOME^%ZIS K ZTSK
|
---|
10 | ;
|
---|
11 | QEN ; queued entry
|
---|
12 | U IO
|
---|
13 | ;
|
---|
14 | COLLECT ; collect data
|
---|
15 | S END=0 ; init flag, =true if user stopped job
|
---|
16 | K ENT ; totals ENT(station,fund,sgl)
|
---|
17 | ; =capitalized count^$^to be expensed count^$
|
---|
18 | K ^TMP($J)
|
---|
19 | ;
|
---|
20 | ; loop thru equipment in FA DOCUMENT LOG file
|
---|
21 | S ENDA=0 F S ENDA=$O(^ENG(6915.2,"B",ENDA)) Q:'ENDA D
|
---|
22 | . Q:+$$CHKFA^ENFAUTL(ENDA)'>0 ; not currently reported to FAP
|
---|
23 | . ; get equipment data
|
---|
24 | . S ENSN=$$GET1^DIQ(6914,ENDA_",",60)_" " S:ENSN=" " ENSN="UNK"
|
---|
25 | . S ENFUND=$$GET1^DIQ(6914,ENDA_",",62)_" " S:ENFUND=" " ENFUND="UNK"
|
---|
26 | . S ENSGL=$$GET1^DIQ(6914,ENDA_",",38) S:ENSGL="" ENSGL="UNK"
|
---|
27 | . S ENVAL=$$GET1^DIQ(6914,ENDA_",",12)
|
---|
28 | . ; update capitalized count and amount
|
---|
29 | . S $P(ENT(ENSN,ENFUND,ENSGL),U)=$P($G(ENT(ENSN,ENFUND,ENSGL)),U)+1
|
---|
30 | . S $P(ENT(ENSN,ENFUND,ENSGL),U,2)=$P(ENT(ENSN,ENFUND,ENSGL),U,2)+ENVAL
|
---|
31 | . ; quit if item should not be expensed
|
---|
32 | . Q:$P($$CHKEXP^ENFACTU(ENDA),U)'=1
|
---|
33 | . ; put on sorted list of items that will be expensed and update counts
|
---|
34 | . S ENSYS=+$$TOPSYS^ENFACTU(ENDA) ; plus value to treat ? as standalone
|
---|
35 | . S ENSYSV=+$S(ENSYS>0:$$SYSVAL^ENFACTU(ENSYS,"C"),1:ENVAL)
|
---|
36 | . S ^TMP($J,ENSN,ENSYSV,ENSYS,ENDA)=""
|
---|
37 | . S $P(ENT(ENSN,ENFUND,ENSGL),U,3)=$P(ENT(ENSN,ENFUND,ENSGL),U,3)+1
|
---|
38 | . S $P(ENT(ENSN,ENFUND,ENSGL),U,4)=$P(ENT(ENSN,ENFUND,ENSGL),U,4)+ENVAL
|
---|
39 | ;
|
---|
40 | PRINT ; print results
|
---|
41 | S ENPG=0 D NOW^%DTC S Y=% D DD^%DT S ENDT=Y
|
---|
42 | S ENL="",$P(ENL,"-",IOM)=""
|
---|
43 | I '$D(ENT) S ENSN="" D HD W !!,"Nothing to report."
|
---|
44 | ; loop thru ENT( by station
|
---|
45 | S ENSN="" F S ENSN=$O(ENT(ENSN)) Q:ENSN="" D Q:END
|
---|
46 | . D HD Q:END
|
---|
47 | . I '$D(^TMP($J,ENSN)) W !!,"NO EQUIPMENT WILL BE EXPENSED BY CT TASK FOR THIS STATION."
|
---|
48 | . ; loop thru system values in ^TMP(
|
---|
49 | . S ENSYSV="" F S ENSYSV=$O(^TMP($J,ENSN,ENSYSV)) Q:ENSYSV="" D Q:END
|
---|
50 | . . ; loop thru system # (will be 0 for standalone items)
|
---|
51 | . . S ENSYS=""
|
---|
52 | . . F S ENSYS=$O(^TMP($J,ENSN,ENSYSV,ENSYS)) Q:ENSYS="" D Q:END
|
---|
53 | . . . ; if system then print parent data and system info
|
---|
54 | . . . I ENSYS>0 D
|
---|
55 | . . . . W !!,?2,"TOP PARENT SYSTEM ENTRY #: ",ENSYS
|
---|
56 | . . . . W ?40,"CMR: ",$E($$GET1^DIQ(6914,ENSYS,19),1,5)
|
---|
57 | . . . . W ?51,"Parent Value: "
|
---|
58 | . . . . I +$$CHKFA^ENFAUTL(ENSYS) W $FN($$GET1^DIQ(6914,ENSYS,12),",",2)
|
---|
59 | . . . . E W "not in FAP"
|
---|
60 | . . . . S ENCSN=$$GET1^DIQ(6914,ENSYS,18)
|
---|
61 | . . . . W !,?2,"CATEGORY STOCK NUMBER: ",ENCSN
|
---|
62 | . . . . I ENCSN]"" W " (",$$GET1^DIQ(6914,ENSYS,"18:2"),")"
|
---|
63 | . . . . W !,?2,"Sum of Capitalized Values in System: "
|
---|
64 | . . . . W $FN(ENSYSV,",",2)
|
---|
65 | . . . ; loop thru equipment
|
---|
66 | . . . S ENDA=0
|
---|
67 | . . . F S ENDA=$O(^TMP($J,ENSN,ENSYSV,ENSYS,ENDA)) Q:'ENDA D Q:END
|
---|
68 | . . . . Q:ENDA=ENSYS ; already displayed as parent of system
|
---|
69 | . . . . I $Y+4>IOSL D HD Q:END W " (continued)"
|
---|
70 | . . . . S ENCSN=$$GET1^DIQ(6914,ENDA,18)
|
---|
71 | . . . . ; print format for component of system
|
---|
72 | . . . . I ENSYS>0 D
|
---|
73 | . . . . . W !!,?6,"COMPONENT ENTRY #: ",ENDA
|
---|
74 | . . . . . W ?36,"CMR: ",$E($$GET1^DIQ(6914,ENDA,19),1,5)
|
---|
75 | . . . . . W ?47,"Component Value: ",$FN($$GET1^DIQ(6914,ENDA,12),",",2)
|
---|
76 | . . . . . W !,?6,"CATEGORY STOCK NUMBER: ",ENCSN
|
---|
77 | . . . . . I ENCSN]"" W " (",$$GET1^DIQ(6914,ENDA,"18:2"),")"
|
---|
78 | . . . . ; print format for standalone equipment
|
---|
79 | . . . . I ENSYS=0 D
|
---|
80 | . . . . . W !!,?2,"ENTRY #: ",ENDA
|
---|
81 | . . . . . W ?22,"CMR: ",$E($$GET1^DIQ(6914,ENDA,19),1,5)
|
---|
82 | . . . . . W ?33,"Value: ",$FN($$GET1^DIQ(6914,ENDA,12),",",2)
|
---|
83 | . . . . . W !,?2,"CATEGORY STOCK NUMBER: ",ENCSN
|
---|
84 | . . . . . I ENCSN]"" W " (",$$GET1^DIQ(6914,ENDA,"18:2"),")"
|
---|
85 | . Q:END
|
---|
86 | . ; print station totals
|
---|
87 | . I $Y+14>IOSL D HD Q:END W " (continued)"
|
---|
88 | . D HDST
|
---|
89 | . S ENFUND="" F S ENFUND=$O(ENT(ENSN,ENFUND)) Q:ENFUND="" D Q:END
|
---|
90 | . . S ENSGL=""
|
---|
91 | . . F S ENSGL=$O(ENT(ENSN,ENFUND,ENSGL)) Q:ENSGL="" D Q:END
|
---|
92 | . . . I $Y+6>IOSL D HD Q:END W " (continued)" D HDST
|
---|
93 | . . . W !,ENFUND,?7,ENSGL
|
---|
94 | . . . S ENX=$G(ENT(ENSN,ENFUND,ENSGL))
|
---|
95 | . . . W ?12,$J($FN($P(ENX,U,1),","),5)
|
---|
96 | . . . W ?18,$J($FN($P(ENX,U,2),",",2),14)
|
---|
97 | . . . W ?35,$J($FN($P(ENX,U,3),","),5)
|
---|
98 | . . . W ?41,$J($FN($P(ENX,U,4),",",2),14)
|
---|
99 | . . . W ?58,$J($FN($P(ENX,U,1)-$P(ENX,U,3),","),5)
|
---|
100 | . . . W ?64,$J($FN($P(ENX,U,2)-$P(ENX,U,4),",",2),14)
|
---|
101 | . . . ; add sgl to subtotals for station
|
---|
102 | . . . S $P(ENT(ENSN),U,1)=$P($G(ENT(ENSN)),U,1)+$P(ENX,U,1)
|
---|
103 | . . . S $P(ENT(ENSN),U,2)=$P(ENT(ENSN),U,2)+$P(ENX,U,2)
|
---|
104 | . . . S $P(ENT(ENSN),U,3)=$P(ENT(ENSN),U,3)+$P(ENX,U,3)
|
---|
105 | . . . S $P(ENT(ENSN),U,4)=$P(ENT(ENSN),U,4)+$P(ENX,U,4)
|
---|
106 | . W !," ----- -------------- ----- -------------- ----- --------------"
|
---|
107 | . W !,"Station Tot"
|
---|
108 | . W ?12,$J($FN($P(ENT(ENSN),U,1),","),5)
|
---|
109 | . W ?18,$J($FN($P(ENT(ENSN),U,2),",",2),14)
|
---|
110 | . W ?35,$J($FN($P(ENT(ENSN),U,3),","),5)
|
---|
111 | . W ?41,$J($FN($P(ENT(ENSN),U,4),",",2),14)
|
---|
112 | . W ?58,$J($FN($P(ENT(ENSN),U,1)-$P(ENT(ENSN),U,3),","),5)
|
---|
113 | . W ?64,$J($FN($P(ENT(ENSN),U,2)-$P(ENT(ENSN),U,4),",",2),14)
|
---|
114 | I END W !!,"REPORT STOPPED BY USER REQUEST"
|
---|
115 | I 'END,$E(IOST,1,2)="C-" S DIR(0)="E" D ^DIR K DIR
|
---|
116 | D ^%ZISC
|
---|
117 | EXIT I $D(ZTQUEUED) S ZTREQ="@"
|
---|
118 | K ^TMP($J)
|
---|
119 | K DIR,DIROUT,DIRUT,DTOUT,DUOUT,X,Y,END,ENDT,ENL,ENPG
|
---|
120 | K ENCSN,ENDA,ENFUND,ENSGL,ENSN,ENSYS,ENSYSV,ENT,ENVAL,ENX
|
---|
121 | Q
|
---|
122 | ;
|
---|
123 | HD ; header
|
---|
124 | I $D(ZTQUEUED),$$S^%ZTLOAD S ZTSTOP=1,END=1 Q
|
---|
125 | I $E(IOST,1,2)="C-",ENPG S DIR(0)="E" D ^DIR K DIR I 'Y S END=1 Q
|
---|
126 | I $E(IOST,1,2)="C-"!ENPG W @IOF
|
---|
127 | S ENPG=ENPG+1
|
---|
128 | W !,"EQUIPMENT CT TASK WILL EXPENSE sorted by value"
|
---|
129 | W ?49,ENDT,?72,"page ",ENPG
|
---|
130 | W !,ENL
|
---|
131 | I ENSN]"" W !,"STATION ",ENSN
|
---|
132 | Q
|
---|
133 | ;
|
---|
134 | HDST ; header for station totals
|
---|
135 | W !!," Current Capitalized CT Task Will Expense Remain Capitalized"
|
---|
136 | W !,"Fund SGL Count $ Amount Count $ Amount Count $ Amount"
|
---|
137 | W !,"------ ---- ----- -------------- ----- -------------- ----- --------------"
|
---|
138 | Q
|
---|
139 | ;ENFACTL
|
---|