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

PRCNCOST.m

Go to the documentation of this file.
  1. PRCNCOST ;SSI/SEB-Display Cost Report ;[ 02/26/97 5:57 PM ]
  1. ;;1.0;PRCN;**3**;Sep 13, 1996
  1. EN ;
  1. W !!,"This report should be printed on 132 column paper !"
  1. S IOM=132,%ZIS="Q" D ^%ZIS Q:POP>0
  1. I $D(IO("Q")) D Q
  1. . S ZTRTN="BEG^PRCNCOST",ZTDESC="Equipment Cost Report"
  1. . D ^%ZTLOAD,HOME^%ZIS K IO("Q"),ZTSK,%ZTLOAD,ZTREQ
  1. I $E(IOST)="C" U IO
  1. BEG K ^TMP($J) S PG=0,$P(LIN,"-",130)=""
  1. D HDR S GTOTAL=0,D0=""
  1. F STA=10,31 F S D0=$O(^PRCN(413,"AC",STA,D0)) Q:D0="" D
  1. . S PSERV=$P(^PRCN(413,D0,0),U,3) Q:PSERV=""
  1. . S SERV=$P(^DIC(49,PSERV,0),U),^TMP($J,"COST",SERV,D0)=""
  1. S SERV=""
  1. SRV S SERV=$O(^TMP($J,"COST",SERV)) G EXIT:$G(C)'="",FIN:SERV=""
  1. W !,"Service: ",SERV S (D0,STOTAL)=0,NL=NL+1 D CHKPG Q:$G(C)'=""
  1. S D0="" F S D0=$O(^TMP($J,"COST",SERV,D0)) Q:D0="" D GETSUMS
  1. Q:$D(C) W !!,"Subtotal for ",SERV,":",?117,$J(STOTAL,10,2),!
  1. F I=1:1:130 W "-"
  1. S GTOTAL=GTOTAL+STOTAL,NL=NL+3 D CHKPG
  1. G SRV
  1. FIN W !,"Total:",?117,$J(GTOTAL,10,2) S NL=NL+1 D CHKPG
  1. I $E(IOST)'="C" W @IOF
  1. D ^%ZISC
  1. EXIT K D0,D1,GTOTAL,STOTAL,LTOTAL,TOTAL,SERV,PSERV,C,FN,I,NL,PN,COST
  1. K TXT,LIN,STA,^TMP($J,"COST")
  1. Q
  1. GETSUMS ; Get line item total & display stuff
  1. W !,$P(^PRCN(413,D0,0),U) S (D1,TOTAL,LTOTAL)=0
  1. F S D1=$O(^PRCN(413,D0,1,D1)) Q:'+D1 D
  1. . S DR=15,DR(413.015)=6,DIQ(0)="C",DIQ="LBTOT"
  1. . S DIC=413,DA=D0,DA(1)=D1,DA(413.015)=D1 NEW D1
  1. . D EN^DIQ1
  1. . S X=$G(LBTOT(413.015,DA(413.015),6))
  1. . S LTOTAL=LTOTAL+X
  1. . K DIC,LBTOT,DIC,DR,DIQ,DA,X
  1. S TOTAL=TOTAL+LTOTAL W $J(LTOTAL,10,2)
  1. F FN=20,22,24,53,54,60,63,65,66 D
  1. . S:FN<25 I=2,PN=FN-15 S:FN>25 I=7,PN=FN-51
  1. . S COST=$P($G(^PRCN(413,D0,I)),U,PN),TOTAL=TOTAL+COST
  1. . W $J(COST,10,2)
  1. W $J(TOTAL,10,2) S STOTAL=STOTAL+TOTAL,NL=NL+1 D CHKPG
  1. Q
  1. CHKPG ; If printing to screen & it is full, clear screen
  1. Q:IOT'["TRM"!(IOSL>NL+3) W !,"Hit RETURN to continue or '^' to quit. "
  1. R C:DTIME S:'$T C=U K:C'?1"^".E C
  1. Q
  1. HDR ; Print a header for the report
  1. S PG=PG+1,TXT=" " I $E(IOST)="C" W @IOF
  1. W !,"EQUIPMENT REQUEST COST SUMMARY REPORT"
  1. W $J("",IOM-$L(TXT)\2) S X="N",%DT="T" D ^%DT W $$FMTE^XLFDT(Y,"1P")_" PAGE: "_PG,!
  1. W ?31,"Annual",?61,"Training",?71,"Training",?81,"Constr./",?91
  1. W "Special",?101,"Test",?111,"Maint.",!,?21,"Line Item",?31,"Recurring"
  1. W ?41,"Training",?51,"Contract",?61,"Tuition",?71,"Travel",?81
  1. W "Renov.",?91,"Install.",?101,"Equipment",?111,"Impact",?121,"Total"
  1. W !,"Transaction #" S NL=5 F I=2:1:12 W ?(I*10+1),"Cost"
  1. W !,LIN
  1. Q