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

BGUTRACS.m

Go to the documentation of this file.
BGUTRACS ; IHS/OIT/MJL - REMOTE PROCEDURE TESTING ROUTINE ;
 ;;1.5;BGU;;MAY 26, 2005
 D INIT
 F  D MAIN Q:BGUDONE
 D END
 Q
 ;
MAIN ; -- main message processing loop
 S (BGUMSG,X)="",DIC(0)="AQEM" D ASKRPC I Y<0 S BGUDONE=1 D KILL Q
 S DIR(0)="FO" F BGUN=1:1 S DIR("A")="PARAMETER-"_BGUN D ^DIR Q:$D(DIROUT)  Q:X="^"  D:X=" " USELST S BGUM(BGUN)=X,BGUMSG=BGUMSG_U_X,^TMP("BGUTRACS",$J,"PARAMS",BGUN)=X
 I BGUN=1 S BGUDONE=1 D KILL Q
 S (BGUMSG1,BGUSTR)=""  F BGUN=1:1:BGUN-1 S:BGUN>1 BGUMSG1=BGUMSG1_",",BGUSTR=BGUSTR_"," S BGUMSG1=BGUMSG1_"BGUM("_BGUN_")",BGUSTR=BGUSTR_""""_BGUM(BGUN)_""""
 ; -- set up for routine call
ENT ;
 K X,Y,BGUDATA N DIQUIET
 S BGUREF=^XWB(8994,BGUIEN,0)
 S BGUTRTN=$P(BGUREF,"^",2,3),BGUTYPE=$P(BGUREF,U,4),BGURTN1=BGUTRTN,BGUTRTN=BGUTRTN_"(.BGUDATA,"_BGUMSG1_")"
 S BGUSTR=BGURTN1_"(.BGUDATA,"_BGUSTR_")"
 S DIQUIET=1 D @BGUTRTN
 ; Same line of code used in ^BGUTCPH :
 D:$S($P(BGUMSG,"TRACE=",2)'="":1,$D(BGUTRACE):1,$P(^BGUSP(1,0),"^",2)="Y":1,1:$D(^BGUSP(1,1,"B",$J))) ^BGUTRACE
 D KILL
 Q
 ;
INIT ;
 S U="^",BGUAPID="OE-2",BGUDONE=0
 Q
 ;
ASKRPC ; Ask for Remote procedure call
 ;
 S DIC="^XWB(8994," D ^DIC Q:+Y<0  S BGUIEN=+Y S:BGUMSG="" BGUMSG=$P(Y,U,2)
 Q
 ;
USELST ; Use the last value entered for this prompt
 ;
 S X=$G(^TMP("BGUTRACS",$J,"PARAMS",BGUN))
 W:X'="" *8,X
 Q
 ;
TEST ;
 D INIT
 I '$D(^TMP("BGUTEST",$J,"PRMS")) D  Q
 .S BGUMSG=^TMP("BGUTEST",$J),BGUIEN=$O(^XWB(8994,"B",$P(BGUMSG,U),"")),BGUMSG=$P(BGUMSG,U,2,999)
 .I $D(^TMP("BGUTEST",$J,1)) F BGUN=1:1 Q:'$D(^TMP("BGUTEST",$J,BGUN))  S BGUMSG=BGUMSG_^(BGUN)
 .S BGUSTR="" F BGUN=1:1:$L(BGUMSG,U) S BGUMSG2=$P(BGUMSG,U,BGUN) S:BGUN>1 BGUSTR=BGUSTR_"," S BGUSTR=BGUSTR_""""_BGUMSG2_""""
 .S BGUMSG1=BGUSTR,^TMP("BGUTEST",$J,"PRMS")=$E(BGUMSG1,1,250) D:$L(BGUMSG1)>250  S ^TMP("BGUTEST",$J,"IEN")=BGUIEN D ENT
 ..F BGUN1=1:1:($L(BGUMSG1)\250-1+($L(BGUMSG1)#250>0)) S ^TMP("BGUTEST",$J,"PRMS",BGUN1)=$E(BGUMSG1,BGUN1*250+1,BGUN1*250*2)
 S BGUMSG=$P(^TMP("BGUTEST",$J),U,2),BGUMSG1=^TMP("BGUTEST",$J,"PRMS"),BGUSTR=BGUMSG1,BGUIEN=^("IEN")
 I $D(^TMP("BGUTEST",$J,1)) F BGUN=1:1 Q:'$D(^TMP("BGUTEST",$J,BGUN))  S BGUMSG=BGUMSG_^(BGUN)
 I $D(^TMP("BGUTEST",$J,"PRMS",1)) F BGUN=1:1 Q:'$D(^TMP("BGUTEST",$J,"PRMS",BGUN))  S BGUMSG1=BGUMSG1_^(BGUN)
 D ENT
 Q
 ;
KILL ;
 K BGUDATA,BGUDTA,BGUFLGS,BGUFDA,BGUFN,BGUIEN,BGUM,BGUMSG,BGUMSG1,BGUMSG2,BGUN,BGUN1,BGUN2,BGUQ,BGUREF,BGURTN1,BGUSTR,BGUTCK,BGUTCK1,BGUTRTN,BGUY,BGUY1,BGUYLN,BGUWMSG,BGUWPD,DIC,DIR
 Q
 ;
END ;
 D KILL
 K BGUAPID,BGUDONE,BGUHIT,BGUTRACE,^TMP("BGUTRACS",$J)
 Q