| 1 | IBDFST ;ALB/MAF - FORMS TRACKING STATISTICS - JUL 6 1995
 | 
|---|
| 2 |  ;;3.0;AUTOMATED INFO COLLECTION SYS;;APR 24, 1997
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 |  ;
 | 
|---|
| 5 | EN ; -- main entry point for IBDF FT STATS
 | 
|---|
| 6 |  D EN^VALM("IBDF FT STATS")
 | 
|---|
| 7 |  Q
 | 
|---|
| 8 |  ;
 | 
|---|
| 9 | HDR ; -- header code
 | 
|---|
| 10 |  S IBDFX=$P($$FMTE^XLFDT(IBDFBG),"@")
 | 
|---|
| 11 |  S IBDFY=$P($$FMTE^XLFDT(IBDFEND),"@")
 | 
|---|
| 12 |  S VALMHDR(1)="Statistical data for the date range of "_IBDFX_" to "_IBDFY
 | 
|---|
| 13 |  Q
 | 
|---|
| 14 |  ;
 | 
|---|
| 15 |  ;
 | 
|---|
| 16 | INIT ; -- init variables and list array
 | 
|---|
| 17 |  N IBDFDV,IBDFCL,IBDFNODE,IBDCNT,IBDCNT1
 | 
|---|
| 18 |  S (IBDFDV,IBDFCL,IBDCNT,IBDCNT1,VALMCNT)=0
 | 
|---|
| 19 |  K IBDF,^TMP("STATS",$J),^TMP("STAIDX",$J)
 | 
|---|
| 20 |  F IBDFDIV=0:0 S IBDFDV=$O(^TMP("CNT",$J,IBDFDV)) Q:IBDFDV']""  F IBDFCLI=0:0 S IBDFCL=$O(^TMP("CNT",$J,IBDFDV,IBDFCL)) Q:IBDFCL']""  S IBDFNODE=^TMP("CNT",$J,IBDFDV,IBDFCL) D:'$D(IBDF(IBDFDV)) HEADER D SETARR
 | 
|---|
| 21 |  Q
 | 
|---|
| 22 |  ;
 | 
|---|
| 23 |  ;
 | 
|---|
| 24 | SETARR ;  -- Set up Listman array
 | 
|---|
| 25 |  S IBDCNT1=IBDCNT1+1
 | 
|---|
| 26 |  S IBDCNT=IBDCNT+1,VALMCNT=VALMCNT+1
 | 
|---|
| 27 |  S X=""
 | 
|---|
| 28 |  S IBDFVAL=$$LOWER^VALM1(IBDFCL)
 | 
|---|
| 29 |  S X=$$SETSTR^VALM1(IBDFVAL,X,1,20)
 | 
|---|
| 30 |  S IBDFVAL=$J($P(IBDFNODE,"^",1),6)
 | 
|---|
| 31 |  S X=$$SETSTR^VALM1(IBDFVAL,X,22,6)
 | 
|---|
| 32 |  S IBDFVAL=$J($P(IBDFNODE,"^",2),5)
 | 
|---|
| 33 |  S X=$$SETSTR^VALM1(IBDFVAL,X,30,5)
 | 
|---|
| 34 |  S IBDFVAL=$J($S($P(IBDFNODE,"^",1)>0:($P(IBDFNODE,"^",2)/$P(IBDFNODE,"^",1))*100,1:0),6) I IBDFVAL>0 S IBDFVAL=$J($P(IBDFVAL,".",1)_"."_$E($P(IBDFVAL,".",2),1,2),6)
 | 
|---|
| 35 |  S X=$$SETSTR^VALM1(IBDFVAL,X,37,6)
 | 
|---|
| 36 |  S IBDFVAL=$J($S($P(IBDFNODE,"^",5)]"":$P(IBDFNODE,"^",5),1:0),5)
 | 
|---|
| 37 |  S X=$$SETSTR^VALM1(IBDFVAL,X,45,5)
 | 
|---|
| 38 |  I $P(IBDFNODE,"^",7) S IBDFVAL=$P(IBDFNODE,"^",1)-$P(IBDFNODE,"^",7)
 | 
|---|
| 39 |  S IBDFVAL=$J($S(+$P(IBDFNODE,"^",7)>0&(IBDFVAL>0):(+$P(IBDFNODE,"^",5)/IBDFVAL)*100,+$P(IBDFNODE,"^",7)'>0:(+$P(IBDFNODE,"^",5)/$P(IBDFNODE,"^",1))*100,1:0),6) I IBDFVAL>0 S IBDFVAL=$J($P(IBDFVAL,".",1)_"."_$E($P(IBDFVAL,".",2),1,2),6)
 | 
|---|
| 40 |  S X=$$SETSTR^VALM1(IBDFVAL,X,52,6)
 | 
|---|
| 41 |  S IBDFVAL=$J($P(IBDFNODE,"^",3),5)
 | 
|---|
| 42 |  S X=$$SETSTR^VALM1(IBDFVAL,X,60,5)
 | 
|---|
| 43 |  I $P(IBDFNODE,"^",7) S IBDFVAL=$P(IBDFNODE,"^",1)-$P(IBDFNODE,"^",7)
 | 
|---|
| 44 |  S IBDFVAL=$J($S(+$P(IBDFNODE,"^",7)>0&(IBDFVAL>0):($P(IBDFNODE,"^",3)/IBDFVAL)*100,+$P(IBDFNODE,"^",7)'>0:(+$P(IBDFNODE,"^",3)/$P(IBDFNODE,"^",1))*100,1:0),6) I IBDFVAL>0 S IBDFVAL=$J($P(IBDFVAL,".",1)_"."_$E($P(IBDFVAL,".",2),1,2),6)
 | 
|---|
| 45 |  S X=$$SETSTR^VALM1(IBDFVAL,X,67,6)
 | 
|---|
| 46 |  S IBDFVAL=$J($S($P(IBDFNODE,"^",6)]"":$P(IBDFNODE,"^",6),1:0),5)
 | 
|---|
| 47 |  S X=$$SETSTR^VALM1(IBDFVAL,X,75,5)
 | 
|---|
| 48 |  I $P(IBDFNODE,"^",7) S IBDFVAL=$P(IBDFNODE,"^",1)-$P(IBDFNODE,"^",7)
 | 
|---|
| 49 |  S IBDFVAL=$J($S(+$P(IBDFNODE,"^",7)>0&(IBDFVAL>0):($P(IBDFNODE,"^",6)/IBDFVAL)*100,+$P(IBDFNODE,"^",7)'>0:($P(IBDFNODE,"^",6)/$P(IBDFNODE,"^",1))*100,1:0),6) I IBDFVAL>0 S IBDFVAL=$J($P(IBDFVAL,".",1)_"."_$E($P(IBDFVAL,".",2),1,2),6)
 | 
|---|
| 50 |  S X=$$SETSTR^VALM1(IBDFVAL,X,82,6)
 | 
|---|
| 51 |  I $P(IBDFNODE,"^",7) S IBDFVAL=$P(IBDFNODE,"^",1)-$P(IBDFNODE,"^",7)
 | 
|---|
| 52 |  S IBDFVAL=$J($S(+$P(IBDFNODE,"^",7)>0&(IBDFVAL>0):($P(IBDFNODE,"^",4)/IBDFVAL),+$P(IBDFNODE,"^",7)'>0:($P(IBDFNODE,"^",4)/$P(IBDFNODE,"^",1)),1:0),13) I IBDFVAL>0 S IBDFVAL=$J($P(IBDFVAL,".",1)_"."_$E($P(IBDFVAL,".",2),1,2),13)
 | 
|---|
| 53 |  S X=$$SETSTR^VALM1(IBDFVAL,X,90,13)
 | 
|---|
| 54 |  ;
 | 
|---|
| 55 |  ;
 | 
|---|
| 56 | TMP ; -- Set up TMP Array
 | 
|---|
| 57 |  S ^TMP("STATS",$J,IBDCNT,0)=X,^TMP("STATS",$J,"IDX",VALMCNT,IBDCNT1)=""
 | 
|---|
| 58 |  S ^TMP("STAIDX",$J,IBDCNT1)=VALMCNT
 | 
|---|
| 59 |  Q
 | 
|---|
| 60 |  ;
 | 
|---|
| 61 |  ;
 | 
|---|
| 62 | HEADER ;  -- Set up header line for the display
 | 
|---|
| 63 |  S IBDCNT1=IBDCNT1+1
 | 
|---|
| 64 |  S IBDCNT=IBDCNT+1,VALMCNT=VALMCNT+1
 | 
|---|
| 65 |  S X=""
 | 
|---|
| 66 |  S IBDF(IBDFDV)=IBDCNT
 | 
|---|
| 67 |  S X=$$SETSTR^VALM1(" ",X,1,3) D TMP
 | 
|---|
| 68 |  S X="",IBDCNT=IBDCNT+1,VALMCNT=VALMCNT+1
 | 
|---|
| 69 |  S IBDVAL=IBDFDV
 | 
|---|
| 70 |  S X=$$SETSTR^VALM1(IBDVAL,X,1,25) D TMP,CNTRL^VALM10(VALMCNT,1,80,IOINHI,IOINORM,0)
 | 
|---|
| 71 |  S X="",IBDCNT=IBDCNT+1,VALMCNT=VALMCNT+1
 | 
|---|
| 72 |  S X=$$SETSTR^VALM1(" ",X,1,3) D TMP
 | 
|---|
| 73 |  S IBDCNT1=IBDCNT1-1
 | 
|---|
| 74 |  Q
 | 
|---|
| 75 |  ;
 | 
|---|
| 76 |  ;
 | 
|---|
| 77 | HELP ; -- help code
 | 
|---|
| 78 |  S X="?" D DISP^XQORM1 W !!
 | 
|---|
| 79 |  Q
 | 
|---|
| 80 |  ;
 | 
|---|
| 81 |  ;
 | 
|---|
| 82 | EXIT ; -- exit code
 | 
|---|
| 83 |  K IBDF,IBDFX,IBDFY,^TMP("STATS",$J),^TMP("STAIDX",$J)
 | 
|---|
| 84 |  Q
 | 
|---|
| 85 |  ;
 | 
|---|
| 86 |  ;
 | 
|---|
| 87 | EXPND ; -- expand code
 | 
|---|
| 88 |  Q
 | 
|---|
| 89 |  ;
 | 
|---|