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

XUSTERM2.m

Go to the documentation of this file.
  1. XUSTERM2 ;SFISC/RWF - USER TERMINATE, PACKAGE FILE RUN ;9/7/94 16:23
  1. ;;8.0;KERNEL;;Jul 10, 1995
  1. ;;.1;;
  1. D B,A
  1. Q
  1. A ;FOR v8 only, loop thru package file and do clean-up routines.
  1. N XUI,XUJ,XUGRP
  1. F XU1=0:0 S XU1=$O(^DIC(9.4,XU1)) Q:XU1'>0 S XU2=$P($G(^DIC(9.4,XU1,200)),"^",1,2) D:$L($P(XU2,"^",2)) T2(XU2,XUDA)
  1. K XU1,XU2 Q
  1. T2(XU1,DA) ;Set trap and call one with DA=IFN of user.
  1. ;Protect what we need to return.
  1. N XUDA
  1. S X="TX^XUSTERM2",@^%ZOSF("TRAP"),X=$P(XU1,"^",2) X ^%ZOSF("TEST") Q:'$T
  1. D @XU1
  1. Q
  1. TX D @^%ZOSF("ERRTN") Q
  1. ;
  1. B ;Call XQOR to handle protocall.
  1. N XUI,XUJ,XUGRP S XUIFN=XUDA N XUDA ;Protect ourself.
  1. S X="TX^XUSTERM2",@^%ZOSF("TRAP"),DIC="^DIC(19,",X="XU USER TERMINATE"
  1. D EN^XQOR
  1. K X,DIC Q