107 lines
3.9 KiB
Mathematica
107 lines
3.9 KiB
Mathematica
RMPR5HQG ;HCIOFO/RVD - NPPD GROUP USAGE REPORT ; 15 AUG 00
|
|
;;3.0;PROSTHETICS;**51**;Feb 09, 1996
|
|
;
|
|
; HNC - added grand totals
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
DQ1 ;print PIP Report
|
|
;$O the ^TMP( global for all the records
|
|
;print all records based on the sort criteria given.
|
|
I IOST["C-" W @IOF
|
|
;
|
|
F RST=0:0 S RST=$O(^TMP($J,R5,RST)) Q:RST'>0 S RSTN=$$STN^RMPR5HQL(RST),RPR=0 F RI=0:0 S RI=$O(^TMP($J,R5,RST,RI)) Q:$G(RFL) D:(RGRP'="")&(RGRP'=RI) SUMG1 Q:RI'>0 D
|
|
.D:RPR=0 HDRG
|
|
.S RGRP=RI
|
|
.S RNPGRP=RMARRAY(RI)
|
|
.S RJ=""
|
|
.F S RJ=$O(^TMP($J,R5,RST,RI,RJ)) Q:$G(RFL) Q:RJ="" D
|
|
..S RLINE=RJ,RNPLINE=$$NPLIN^RMPR5HQ5(RJ)
|
|
..S RK="" F S RK=$O(^TMP($J,R5,RST,RI,RJ,RK)) Q:$G(RFL)!(RK="") D
|
|
...S RL=""
|
|
...F S RL=$O(^TMP($J,R5,RST,RI,RJ,RK,RL)) Q:$G(RFL)!(RL="") D
|
|
....I RLCNT=0 D GLN1
|
|
....S RLCNT=RLCNT+1
|
|
....S RDAT=^TMP($J,R5,RST,RI,RJ,RK,RL)
|
|
....S RMVA=$P(RDAT,U,1)
|
|
....S RMCOM=$P(RDAT,U,2)
|
|
....S RMUSE=$P(RDAT,U,3)
|
|
....S RMISU=$P(RDAT,U,4)
|
|
....S RMISN=$P(RDAT,U,5)
|
|
....S RMAVEN=$P(RDAT,U,6)
|
|
....S RMDLEN=$P(RDAT,U,7)
|
|
....S RMQOHU=$P(RDAT,U,8)
|
|
....S RMQOHN=$P(RDAT,U,9)
|
|
....S RMVALU=$P(RDAT,U,10)
|
|
....S RMVALN=$P(RDAT,U,11)
|
|
....S RMAVEU=$P(RDAT,U,12)
|
|
....S RMDLEU=$P(RDAT,U,13)
|
|
....S RMGISUG=RMGISUG+RMISU
|
|
....S RMGISNG=RMGISNG+RMISN
|
|
....;
|
|
....S RMGTIU=RMGTIU+RMISU
|
|
....S RMGTIN=RMGTIN+RMISN
|
|
....;
|
|
....S RMGTOU=RMGTOU+RMVALU
|
|
....S RMGTON=RMGTON+RMVALN
|
|
....;total for GROUP
|
|
....I (RMCOM'=""),$G(RMCOM) S RTUSEGC=RTUSEGC+RMCOM
|
|
....I (RMVA'=""),$G(RMVA) S RTUSEGA=RTUSEGA+RMVA
|
|
....S RMTVAG=RMTVAG+RMVA
|
|
....S RMTCOMG=RMTCOMG+RMCOM
|
|
....S RMTISUG=RMTISUG+RMISU
|
|
....S RMTISNG=RMTISNG+RMISN
|
|
....S RMTQOHUG=RMTQOHUG+RMQOHU
|
|
....S RMTQOHNG=RMTQOHNG+RMQOHN
|
|
....S RMTVALUG=RMTVALUG+RMVALU
|
|
....S RMTVALNG=RMTVALNG+RMVALN
|
|
....S (RPRINT,RPR)=1
|
|
....I $Y+8>IOSL,IOST["C-" K DIR S DIR(0)="E" D ^DIR S:+Y'>0 RFL=1 Q:+Y'>0 W @IOF D HDRG,LBL1^RMPR5HQ2
|
|
....I $Y+8>IOSL,IOST'["C-" W @IOF D HDRG,LBL1^RMPR5HQ2
|
|
I '$G(RPRINT) W !!,"No Records to Print !!" Q
|
|
Q:$G(RFL)
|
|
W !!,REQ
|
|
S RMGTOT=RMGTOU+RMGTON
|
|
W !!,?10,"GRAND TOTAL $ VALUE ISSUED (Used) = ",?38,"$",$J($FN(RMGISUG,",",2),10)
|
|
W ?80,"GRAND TOTAL $ VALUE ON-HAND (Used) = ",?115,"$",$J($FN(RMGTOU,",",2),12)
|
|
W !,?10,"GRAND TOTAL $ VALUE ISSUED (New) = ",?38,"$",$J($FN(RMGISNG,",",2),10)
|
|
W ?80,"GRAND TOTAL $ VALUE ON-HAND (New) = ",?115,"$",$J($FN(RMGTON,",",2),12)
|
|
;W !,?80,"GRAND TOTAL $ VALUE ON-HAND = ",?68,"$"_$J($FN(RMGTOT,",",2),12)
|
|
W !,"<End of Report>"
|
|
Q
|
|
;
|
|
HDRG ;print heading.
|
|
Q:$G(RFL)
|
|
S RMPAGE=RMPAGE+1
|
|
W !,"PROSTHETIC INVENTORY NPPD GROUP REPORT",?50,"Run Date: ",RMRDATE,?100,"Page: ",RMPAGE
|
|
W !,"STATION: ",$E(RSTN,1,20)
|
|
W ?32,RMBD," - ",RMED," [ ",RMCALDAY," calendar days ]"
|
|
Q
|
|
;
|
|
GLN1 ;print NPPD GROUP and LINE header.
|
|
W !!,"ENTIRE SUMMARY"
|
|
D LBL1^RMPR5HQ2
|
|
Q
|
|
;
|
|
SUMG1 ;print summary total for NPPD GROUP
|
|
Q:$G(RFL)
|
|
W !,RLN
|
|
W !,RGRP," ",RNPGRP
|
|
S:$G(RTUSEGA) RTAVEGA=RTUSEGA/RMCALDAY
|
|
S:$G(RTUSEGC) RTAVEGC=RTUSEGC/RMCALDAY
|
|
S:$G(RTUSEGA) RTDLEGA=RMTQOHUG/RTAVEGA
|
|
S:$G(RTUSEGC) RTDLEGC=RMTQOHNG/RTAVEGC
|
|
S RTDLEGA=$S(RTDLEGA>999:">999",1:$J(RTDLEGA,5,0))
|
|
S RTDLEGC=$S(RTDLEGC>999:">999",1:$J(RTDLEGC,5,0))
|
|
S:RMTQOHNG=0 RTDLEGC=""
|
|
S:RMTQOHUG=0 RTDLEGA=""
|
|
S:(RMTQOHNG>0)&(RMTCOMG<1) RTDLEGC=">"_RMCALDAY
|
|
S:(RMTQOHUG>0)&(RMTVAG<1) RTDLEGA=">"_RMCALDAY
|
|
;next 2 lines for used:
|
|
W !,?5,"(Used)",?26,$J(RMTVAG,5),?34,$J($FN(RMTISUG,",",2),6),?40,"|",?59,"|",?60,$J(RTUSEGA,5),?67,"|",?71,$J(RTAVEGA,5,2),?78,"|"
|
|
W ?81,$J(RMTQOHUG,5),?94,"|",?97,$J(RTDLEGA,6),?103,"|",?104,$J($FN(RMTVALUG,",",2),11)
|
|
;next 2 lines for new:
|
|
W !,?5,"(New)",?40,"|",?41,$J(RMTCOMG,4),?49,$J($FN(RMTISNG,",",2),9),?59,"|",?60,$J(RTUSEGC,5),?67,"|",?71,$J(RTAVEGC,5,2),?78,"|"
|
|
W ?87,$J(RMTQOHNG,6),?94,"|",?97,$J(RTDLEGC,6),?103,"|",?116,$J($FN(RMTVALNG,",",2),11)
|
|
S (RMTVAG,RMTISUG,RMTCOMG,RMTISNG,RTUSEGA,RTUSEGC,RTAVEGA,RTAVEGC,RMTQOHUG,RMTQOHNG,RTDLEGA,RTDLEGC,RMTVALUG,RMTVALNG)=0
|
|
S (RNPGRP,RGRP)=""
|
|
Q
|