FOCUS AREAS

ARM - Application Response Measurement

%ARMUPDT


Updates a previous transaction

Type: ARM macro

Syntax

%ARMUPDT(DATA=<options>)

Options

DATA=
is not required but is a highly recommended user-supplied data buffer that contains text. The value is a SAS character variable or a quoted literal.
Restriction: The data value has a 1020 character limit.
 
LEVEL=
is a variable that specifies the conditional execution level. The value must be a numeric constant or variable.
 
MACONLY=NO | YES
allows the %ARMUPDT macro to be issued in open code, outside of a DATA step.
Note:   MACONLY is experimental for Release 8.2.  
Default: NO
 
METRVAL1-METRVAL7=
is the value of the corresponding user-defined metric. The value must correspond to user metrics defined on %ARMGTID
These values are ignored if the DATA= option is used.
Note:   METRVAL1-METRVAL7 is valid for Release 9.0 and later.  
Requirement:The value of the user-defined metric must correspond to the user metrics defined in %ARMGTID.
 
SCL=NO | YES
allows the %ARMUPDT macro to be issued in SCL environment.
Note:   SCL is valid for Release 9.0 and later.  
Default: NO
 
 
SHANDLE=
is a start handle. The value is a SAS numberic or constant.
Note:   Replaced by SHDLVAR parameter for Release 9.0 and later.   
 
SHDLVAR=
is a SAS numeric variable that contains the value of the start handle.

 


Description

%ARMUPDT is a call that you can execute any number of times after an %ARMSTRT and before an %ARMSTOP. It allows you to supply any additional information about the transaction in progress using an unformatted data buffer.


Input

The input is a start handle that is generated from a previous %ARMSTRT call. If the SHDLVAR= option is supplied, the specified value is used as the start handle. Otherwise, the value of the global macro variable _ARMSHDL is used.


Output

The _ARMRC variable, which contains the error status code, is the output.

Examples

Example 1: Basic usage supplying a data buffer

data _null_;
   updtdata = 'Txn still running at' || put (time(),time.);
   %armupdt(data=updtdata);
run;

Example 2: Supply a start handle using SHDLVAR=

data _null_;
   %arminit(appname=aname, appuser='sasxyz');
   %armgtid(txnname='txn OE', txndet='Order Entry txn class');
   %armstrt(shdlvar=sh1);
run;

data _null_;
   %armupdt(data='OE txn pre-processing complete', shdlvar=sh1 );
run;

Example 3: User Metrics

Code fragment:
%let _armacro = 1;  /* default environment is open code */
%arminit(appname='Open Code getID test w/ user metrics');
%armgtid(txnname='User MetricsTest',metrNam1=ShortStr,metrDef1=short); /* valid metric */
%armstrt(metrVal1=charval1); /* valid metric value */
%armstop(metrVal1=charval2);
%armend();
run;