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

XQALSUR2.m

Go to the documentation of this file.
  1. XQALSUR2 ;FO-OAK.SEA/JLI-Continuation of alert surrogate processing ;07/12/12 11:30
  1. ;;8.0;KERNEL;**366,513,602**;Jul 10, 1995;Build 10
  1. ;Per VHA Directive 2004-038, this routine should not be modified
  1. Q
  1. ; added to handle adjustment for manual or Fileman editing of surrogate on top zero node
  1. CHEKSUBS(XQAUSER) ;
  1. N XQA0,XQASTR1,XQANOW,XQB0,XQB1
  1. S XQANOW=$$NOW^XLFDT()
  1. S XQA0=$G(^XTV(8992,XQAUSER,0)) I $P(XQA0,U,2)>0 D
  1. . N XQAFDA,XQAIEN,XQADA
  1. . S XQASTR1=$P(XQA0,U,3) S:XQASTR1'>0 XQASTR1=XQANOW,XQAFDA(8992,XQAUSER_",",.03)=XQASTR1 D
  1. . . S XQADA=0 F S XQADA=$O(^XTV(8992,XQAUSER,2,"B",XQASTR1,XQADA)) Q:XQADA'>0 Q:$P(^XTV(8992,XQAUSER,2,XQADA,0),U,2)=$P(XQA0,U,2)
  1. . . S XQAIEN=$S(XQADA>0:XQADA,1:"+1")_","_XQAUSER_"," S XQAFDA(8992.02,XQAIEN,.01)=XQASTR1
  1. . . S XQAFDA(8992.02,XQAIEN,.02)=$P(XQA0,U,2) S:$P(XQA0,U,4)>0 XQAFDA(8992.02,XQAIEN,.03)=$P(XQA0,U,4)
  1. . . D:XQADA'>0 UPDATE^DIE("","XQAFDA")
  1. . . D:XQADA>0 FILE^DIE("","XQAFDA")
  1. . . Q
  1. . Q
  1. Q
  1. ;
  1. CHKCRIT(ZERONODE) ;EXTRINSIC - check for critical indication for alert
  1. ; ZERONODE - input - Value for zero node for alert data
  1. ; RETURN VALUE - 1 if the alert is indicated as critical
  1. ; 0 otherwise
  1. N RESULT,IEN
  1. S RESULT=0
  1. F IEN=0:0 S IEN=$O(^XTV(8992.3,IEN)) Q:IEN'>0 D Q:RESULT
  1. . N IENS,RES,MSG,CRITTEXT,PKGID,ALERTTXT
  1. . S IENS=IEN_","
  1. . D GETS^DIQ(8992.3,IENS,".01:.02",,"RES","MSG")
  1. . S CRITTEXT=$$UP^XLFSTR(RES(8992.3,IENS,.01)),PKGID=$$UP^XLFSTR(RES(8992.3,IENS,.02))
  1. . I PKGID'="",$$UP^XLFSTR($P(ZERONODE,U,2))'[PKGID Q
  1. . S ALERTTXT=$$UP^XLFSTR($P(ZERONODE,U,3))
  1. . I ALERTTXT[CRITTEXT,ALERTTXT'["NOT "_CRITTEXT S RESULT=1
  1. Q RESULT
  1. CLEANUP(XQAUSER) ;SR. - clean up expired surrogate info
  1. N XQAI,XQANOW,XQASUR
  1. S XQANOW=$$NOW^XLFDT()
  1. I $P($G(^XTV(8992,XQAUSER,2,0)),U,2)>0 D
  1. . S XQAI=0 F S XQAI=$O(^XTV(8992,XQAUSER,2,XQAI)) Q:XQAI'>0 D
  1. . . S XQASUR=$G(^XTV(8992,XQAUSER,2,XQAI,0))
  1. . . I ($P(XQASUR,U)<XQANOW)&($P(XQASUR,U,4)'=1)&($P(XQASUR,U,3)<XQANOW)&($P(XQASUR,U,3)>0) D
  1. . . . N XQAIEN S XQAIEN=XQAI_","_XQAUSER_","
  1. . . . N XQAFDA S XQAFDA(8992.02,XQAIEN,.01)="@" D FILE^DIE("","XQAFDA")
  1. Q