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

XTERSUM4.m

Go to the documentation of this file.
  1. XTERSUM4 ;ISF/RWF - Find error frequece ;05/27/10 14:25
  1. ;;8.0;KERNEL;**431**;;Build 35
  1. ;Per VHA Directive 2004-038, this routine should not be modified.
  1. Q
  1. ;
  1. SHOW ;Show the top error
  1. N DIR,XTERMAX,DIRUT,DTOUT,DUOUT,ZTSAVE
  1. S DIR(0)="N^1:999",DIR("A")="Number of Errors to show",DIR("B")=5
  1. D ^DIR Q:$D(DIRUT)
  1. S XTERMAX=Y,ZTSAVE("XTERMAX")=""
  1. D EN^XUTMDEVQ("DQ^XTERSUM4","Top Errors",.ZTSAVE)
  1. Q
  1. ;
  1. DQ N X,D0,TOP,MAX,I
  1. S D0=0,U="^",MAX=$G(XTERMAX,5)
  1. F S D0=$O(^%ZTER(3.077,D0)) Q:'D0 D CHECK(D0,.TOP)
  1. S I="A",C=1
  1. W "Top ",MAX," Most Common Errors",?45,$$HTE^XLFDT($H),!
  1. F S I=$O(TOP(I),-1),J="" Q:('I)!(C>MAX) F S J=$O(TOP(I,J),-1) Q:('J)!(C>MAX) S C=C+1,D0=J D SHOW1(D0)
  1. Q
  1. ;
  1. CHECK(D0,TOP) ;
  1. N I,X,AR
  1. S X=$$SUMALL(D0,.AR),TOP(X,D0)=0
  1. Q
  1. ;
  1. SHOW1(D0) ;Show 1 error
  1. N X,AR,I,J
  1. I $Y+10>IOSL D WAIT Q:$D(DIRUT) W @IOF
  1. S X=^%ZTER(3.077,D0,0)
  1. W !!,"Error: ",$P(X,U,1),?45,"Total Count: ",$$SUMALL(D0,.AR)
  1. W !,"First Seen: ",$$FMTE^XLFDT($P(X,U,2)),?45,"Last Seen: ",$$FMTE^XLFDT($P(X,U,3))
  1. Q:$D(AR)<10
  1. W !,"Distribution over ",+AR," days"
  1. S RANGE=""
  1. F J=3:-1:0 W !,?5,$S(J:J*10,1:">0")," " F I=1:1:24 W $S('AR(I):" ",AR(I)'<(J*10):"x",1:" ")
  1. W !," Time: 1--4---8--12--16--20--24"
  1. Q
  1. ;
  1. SUMALL(IEN,RET) ;Check one error
  1. N H,TOTAL,CNT,T,I,X
  1. S H=0,TOTAL=0,CNT=0
  1. F S H=$O(^%ZTER(3.077,IEN,4,H)) Q:'H S TOTAL=TOTAL+$$SUM1(.RET,IEN,H),CNT=CNT+1
  1. S RET=CNT
  1. Q TOTAL
  1. ;
  1. SUM1(RET,IEN,H) ;Sum over one day, return array
  1. ;New at caller
  1. S X=$G(^%ZTER(3.077,IEN,4,H,0)),T=0
  1. I $L(X) F I=1:1:24 S RET(I)=$G(RET(I))+$P(X,"~",I),T=T+$P(X,"~",I)
  1. Q T
  1. ;
  1. WAIT ;Wait at end of page
  1. Q:$E(IOST,1)="P"
  1. N DIR
  1. S DIR(0)="E" D ^DIR
  1. Q