| [613] | 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 |  ;
 | 
|---|