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

XTERSUM1.m

Go to the documentation of this file.
  1. XTERSUM1 ;ISF/RCR,RWF - Error Trap Summary Utilities ;08/25/10 14:23
  1. ;;8.0;KERNEL;**431**;Jul 10, 1995;Build 35
  1. ;Per VHA Directive 2004-038, this routine should not be modified.
  1. Q
  1. ;Utilities for XTERSUM
  1. ;No public entry points in this routine.
  1. ; =========
  1. ; The one input is the $H day to list the errors for. Defaults to today
  1. TSTSTK(%H) ; Use this entry point to test the GETSTK entry point
  1. N I,J,U,X
  1. S U="^"
  1. S %H=$G(%H,$H)
  1. ;S:%H="" %H=+$H
  1. F I=1:1 S X=$J(I,3)_":"_$$GETSTK^XTERSUM(%H,I) Q:X[":[]" D
  1. . W !
  1. . F J=1:80:$L(X) W $E(X,J,J+79),!
  1. .QUIT
  1. QUIT
  1. ; =========
  1. LOCATE() ; Return the Environment and CPU Name
  1. N CPU,NM,Y
  1. S U="^"
  1. D GETENV^%ZOSV
  1. S CPU=$P(Y,U,3)
  1. S NM=$P(Y,U,4)
  1. S NM=$TR($P(NM,CPU),":",";")_";"_CPU
  1. I NM="" S NM=$$KSP^XUPARAM("INST")
  1. QUIT NM
  1. ; =========
  1. ; >W $$DEFDAT^XTERSUM1("T"[,"NOW"]) - Generate FileMan Date for
  1. ; Process Returns>>YYMMDD.HHMMSS^$TR($H,",","^")^DOW
  1. ; Good for dates and times which span 1868 through 2699. If the
  1. ; upper date becomes a problem, I promise to come back and modify
  1. ; the code.
  1. ; X - Incoming date specifier
  1. ; Y - The Return Value
  1. ; Z - Optional Default
  1. DEFDAT(X,Z) ; Find the Default Date
  1. N %DT,%H,%T,%Y,Y
  1. S X=$G(X)
  1. S Z=$G(Z) ;1410000 = 31Dec, 1840 @ 235959+.00000001
  1. S:X="" X=Z
  1. S:X="" X=$H
  1. I X>10000,X<1410000 S X=$$HTFM^XLFDT(X) ; Library Function
  1. S %DT="TS" ; Time in Seconds
  1. D ^%DT
  1. D:Y
  1. . S X=Y
  1. . D H^%DTC
  1. . QUIT
  1. QUIT Y_"^"_%H_"^"_%T_"^"_%Y
  1. ; =========
  1. ;
  1. PURGE ;Clean-up the Error Summary data
  1. N DT30,DT90,DH90,XTDAT,X,IX1,IX2,DA,DIK
  1. S X=$P($G(^XTV(8989.3,1,"ZTER")),U,4),X=$S('X:90,1:X) ;Get keep days
  1. S DT30=$$HTFM^XLFDT($H-30),DH90=$H-X,DT90=$$HTFM^XLFDT(DH90)
  1. S IX1=0
  1. ;Remove entry if last seen > 90 days ago. Remove Error Event > 30 days ago.
  1. F S IX1=$O(^%ZTER(3.077,IX1)),IX2=0 Q:'IX1 S X=$G(^(IX1,0)) D
  1. . I $P(X,U)="" S DA=IX1,DIK="^%ZTER(3.077," D ^DIK Q ;Missing error
  1. . S X=$P(X,U,3) I X,X<DT90 S DA=IX1,DIK="^%ZTER(3.077," D ^DIK Q
  1. . ;If no last seen date give it one.
  1. . I X="" S $P(^%ZTER(3.077,IX1,0),U,3)=$$HTFM^XLFDT($H)
  1. . F S IX2=$O(^%ZTER(3.077,IX1,1,IX2)) Q:'IX2 S X=$G(^(IX2,0)) D
  1. . . I $P(X,U,2)>DT30 Q ;Keep Error events for 30 days
  1. . . S DA=IX2,DA(1)=IX1,DIK="^%ZTER(3.077,DA(1),1," D ^DIK K DA
  1. . . Q
  1. . S IX2=0 ;Remove Frequency Distribution
  1. . F S IX2=$O(^%ZTER(3.077,IX1,4,IX2)) Q:'IX2 I IX2<DH90 S DA=IX2,DA(1)=IX1,DIK="^%ZTER(3.077,DA(1),4," D ^DIK K DA
  1. . Q
  1. Q
  1. ;
  1. POST ;Post-init for patch XU*8*431
  1. N FDA,%D,%S,SCR,ZTOS,IEN,%ZT
  1. S FDA(8989.3,"1,",520.1)=10,FDA(8989.3,"1,",520.2)=0 ;Give site defaults
  1. S FDA(8989.3,"1,",520.3)=7,FDA(8989.3,"1,",520.4)=90 ;More defaults
  1. D FILE^DIE("","FDA")
  1. D PATCH^ZTMGRSET(431)
  1. I $E($RE(^XMB("NETNAME")),1,6)="VOG.AV" D VA ;Only setup for VA sites.
  1. ;Get a baseline of the last 30 days.
  1. D ADD^XTERSUM
  1. Q
  1. ;
  1. VA ;
  1. S IEN=$$FIND1^DIC(3.8,,"X","XTER SUMMARY LOAD")_","
  1. Q:IEN'>0
  1. S FDA(3.812,"?+1,"_IEN,.01)="S.XTER SUMMARY LOAD@DOMAIN.EXT"
  1. D UPDATE^DIE("","FDA") I $D(^TMP("DIERR",$J)) S %ZT($NA(^TMP("DIERR",$J)))="" D ^%ZTER
  1. K FDA S FDA(8989.3,"1,",520.2)=1
  1. D UPDATE^DIE("","FDA") I $D(^TMP("DIERR",$J)) S %ZT($NA(^TMP("DIERR",$J)))="" D ^%ZTER
  1. Q