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

XUS3A.m

Go to the documentation of this file.
  1. XUS3A ;SF-ISC/STAFF - CHANGE UCI'S ; 2/4/03 9:51am [ 07/29/2004 9:01 AM ]
  1. ;;8.0;KERNEL;**13,282**;Jul 10, 1995
  1. Q
  1. ;PICK A UCI TO SWITCH TO
  1. SWITCH ;Allow users that have the UCI field in there NP file to switch UCI's.
  1. W !!,"Switch UCI's option.",!
  1. I $$PROGMODE^%ZOSV() W !,$C(7),"No switching UCI's in Programmer Mode." Q
  1. I $O(^VA(200,DUZ,.2,0))'>0 D Q
  1. . W !,"Sorry but you do not have any UCI's that you are allowed to"
  1. . W !,"switch to."
  1. . Q
  1. N DIR,X,Y,PGM,%UCI,DEF
  1. S DEF="ZU" ;DEF is default routine to switch to.
  1. UCI S DIR(0)="F",DIR("A")="Select UCI:ROUTINE",DIR("??")="^D SHOW^XUS3A"
  1. S DIR("?")="Enter a UCI name (:Routine) to switch to."
  1. D ^DIR K DIR I $D(DUOUT)!$D(DTOUT)!(X="^") Q
  1. I Y?.N,$D(^VA(200,DUZ,.2,Y,0)) S UC=^(0),Y=$P(UC,U)_":"_$P($P(UC,U,2),":")
  1. S X=$P(Y,":"),PGM=$P(Y,":",2,3) S:PGM[":" X=$P(Y,":",1,2),PGM=$P(Y,":",3) ;for M/vx
  1. S:PGM="" PGM=DEF
  1. SAME I X="" Q ;Didn't select anything.
  1. D PM S %UCI=X X ^%ZOSF("UCICHECK") I 0[Y G BAD
  1. F DA=0:0 S DA=$O(^VA(200,DUZ,.2,DA)) Q:DA'>0 S Y=^(DA,0) D G:GO NXT
  1. . S GO=0,X=$P(Y,U),XUA=$P(Y,U,2) D PM Q:%UCI'=X
  1. . I XUA="" S XUA=DEF
  1. . F %=1:1:20 I $P(XUA,":",%)=PGM S GO=1 Q
  1. . Q
  1. BAD W !,"UCI not found!" D SHOW G UCI
  1. ;
  1. NXT ;Here we go.
  1. D C^XUSCLEAN K ^XUTL("XQ",$J),^XUTL($J),^TMP($J),^UTILITY($J)
  1. ;K DA S XQZ="^"_PGM_"["_%UCI_"]" D DO^%XUCI G ^XUSCLEAN
  1. K DA G GO^%XUCI
  1. ;
  1. ;
  1. SHOW W ! S I=0,UC="",X=$S($D(^VA(200,DUZ,201)):+^(201),1:0)
  1. W !,"Enter ^ to return to your current menu, or select from:"
  1. F I=0:0 S I=$O(^VA(200,DUZ,.2,I)) Q:I'>0 D
  1. . W !,?5 S UC=$G(^VA(200,DUZ,.2,I,0)),X=$P(UC,U,1),UC=$P(UC,U,2,99)
  1. . I UC'[":" W I
  1. . D PM W ?10,X X ^%ZOSF("UCICHECK") I 0[Y W " -- Not currently a valid UCI!",$C(7) Q
  1. . W:UC]"" ":"_UC
  1. . Q
  1. Q
  1. ;
  1. PM I X="PROD"!(X="MGR") S X=^%ZOSF(X)
  1. Q