Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: ENFAR2

ENFAR2.m

Go to the documentation of this file.
  1. ENFAR2 ;WIRMFO/SAB-FIXED ASSET RPT, CAPITALIZED EQUIPMENT SUMMARY; 7/19/96
  1. ;;7.0;ENGINEERING;**25,33**;Aug 17, 1993
  1. ; Summary of Capitalized NX Equipment Assets by Station, Fund, SGL
  1. EN ;
  1. ; ask type of breakdown
  1. S DIR(0)="Y",DIR("A")="Report SGL totals by Fund"
  1. S DIR("B")="YES"
  1. D ^DIR K DIR G:$D(DIRUT) EXIT
  1. S ENBYFUND=Y
  1. ; ask device
  1. W !!,"This report searches the entire equipment file and may take some"
  1. W !,"time to complete. Consider queuing this report to run after-hours."
  1. S %ZIS="QM" D ^%ZIS G:POP EXIT
  1. I $D(IO("Q")) D G EXIT
  1. . S ZTRTN="QEN^ENFAR2",ZTSAVE("ENBYFUND")=""
  1. . S ZTDESC="Capitalized NX Equip. Summary for Station"
  1. . D ^%ZTLOAD,HOME^%ZIS K ZTSK
  1. QEN ; queued entry
  1. U IO
  1. ; collect data
  1. S (ENC,END)=0 K ENT
  1. S ENSND=$$GET1^DIQ(6910,"1,",1) S:ENSND="" ENSND="Unk" ; default station
  1. I 'ENBYFUND S ENFUND="all"
  1. S ENDA=0 F S ENDA=$O(^ENG(6914,ENDA)) Q:'ENDA D Q:END
  1. . S ENC=ENC+1
  1. . I '(ENC#500),$D(ZTQUEUED),$$S^%ZTLOAD S ZTSTOP=1,END=1 Q
  1. . S ENY8=$G(^ENG(6914,ENDA,8))
  1. . Q:$P(ENY8,U,2)'=1 ; not capitalized
  1. . Q:$P($G(^ENG(6914,ENDA,3)),U,11)]"" ; disposition date exists
  1. . Q:$P($G(^ENG(6914,ENDA,0)),U,4)'="NX" ; not NX
  1. . S ENY9=$G(^ENG(6914,ENDA,9))
  1. . S ENSN=$P(ENY9,U,5) S:ENSN="" ENSN=ENSND
  1. . I ENBYFUND S X=$P(ENY9,U,7),ENFUND=$S(X:$P($G(^ENG(6914.6,X,0)),U),1:"<null>")
  1. . S ENSGL=$$GET1^DIQ(6914,ENDA_",",38) I ENSGL="" S ENSGL="<null>"
  1. . S:ENSGL="" ENSGL="<null>" ; for dangling pointers
  1. . S $P(ENT(ENSN,ENFUND,ENSGL),U)=$P($G(ENT(ENSN,ENFUND,ENSGL)),U)+1 ; count
  1. . S $P(ENT(ENSN,ENFUND,ENSGL),U,2)=$P($G(ENT(ENSN,ENFUND,ENSGL)),U,2)+$P($G(^ENG(6914,ENDA,2)),U,3) ; asset value
  1. K ENY8,ENY9
  1. ; print results
  1. S ENPG=0 D NOW^%DTC S Y=% D DD^%DT S ENDT=Y
  1. S ENL="",$P(ENL,"-",IOM)=""
  1. I 'END S ENSN="" F S ENSN=$O(ENT(ENSN)) Q:ENSN="" D Q:END
  1. . D HD Q:END
  1. . S ENTS="0^0" ; initialize station totals
  1. . S ENFUND="" F S ENFUND=$O(ENT(ENSN,ENFUND)) Q:ENFUND="" D Q:END
  1. . . S ENTF="0^0" ; initialize fund totals
  1. . . S ENSGL=""
  1. . . F S ENSGL=$O(ENT(ENSN,ENFUND,ENSGL)) Q:ENSGL="" D Q:END
  1. . . . I $Y+4>IOSL D HD Q:END
  1. . . . W !,?12,ENFUND,?22,ENSGL
  1. . . . W ?30,$J($P(ENT(ENSN,ENFUND,ENSGL),U),5)
  1. . . . W ?38,"$",$J($FN($P(ENT(ENSN,ENFUND,ENSGL),U,2),",",2),16)
  1. . . . S $P(ENTF,U)=$P(ENTF,U)+$P(ENT(ENSN,ENFUND,ENSGL),U)
  1. . . . S $P(ENTF,U,2)=$P(ENTF,U,2)+$P(ENT(ENSN,ENFUND,ENSGL),U,2)
  1. . . S $P(ENTS,U)=$P(ENTS,U)+$P(ENTF,U)
  1. . . S $P(ENTS,U,2)=$P(ENTS,U,2)+$P(ENTF,U,2)
  1. . . Q:'ENBYFUND
  1. . . I $Y+5>IOSL D HD Q:END
  1. . . W !,?30,"-----",?38,"-----------------"
  1. . . W !,?30,$J($P(ENTF,U),5),?38,"$",$J($FN($P(ENTF,U,2),",",2),16),!
  1. . I $Y+5>IOSL D HD Q:END
  1. . W !,?30,"-----",?38,"-----------------"
  1. . W !,?16,"STATION TOTAL"
  1. . W ?30,$J($P(ENTS,U),5),?38,"$",$J($FN($P(ENTS,U,2),",",2),16)
  1. I 'END,$E(IOST,1,2)="C-" S DIR(0)="E" D ^DIR K DIR
  1. D ^%ZISC
  1. EXIT I $D(ZTQUEUED) S ZTREQ="@"
  1. K DIR,DIROUT,DIRUT,DIWF,DIWL,DTOUT,DUOUT,X,Y
  1. K ENBYFUND,ENC,ENDA,ENFUND,ENSGL,ENSN,ENSND,ENT,ENTF,ENTS
  1. K END,ENDT,ENL,ENPG
  1. Q
  1. HD ; header
  1. I $D(ZTQUEUED),$$S^%ZTLOAD S ZTSTOP=1,END=1 Q
  1. I $E(IOST,1,2)="C-",ENPG S DIR(0)="E" D ^DIR K DIR I 'Y S END=1 Q
  1. I $E(IOST,1,2)="C-"!ENPG W @IOF
  1. S ENPG=ENPG+1
  1. W !,"CAPITALIZED NX EQUIP. SUMMARY FOR STATION: ",ENSN
  1. W ?49,ENDT,?72,"page ",ENPG
  1. W !,ENL
  1. W !!,?20,"STANDARD",?38,"TOTAL"
  1. W !,?20,"GENERAL",?30,"ITEM",?38,"ASSET"
  1. W !,?12,"FUND",?20,"LEDGER",?30,"COUNT",?38,"VALUE"
  1. W !,?12,"------",?20,"--------",?30,"-----",?38,"-----------------"
  1. Q
  1. ;ENFAR2