Specifies the start of a transaction.
Category: ARM Performance Macro
Restriction: SAS 9.3 and later


%PERFSTRT (TXNNAME='transaction-name');

Required Argument

is the transaction name, which must be a SAS character variable or a literal enclosed in single or double quotation marks.
Restriction:The transaction name has a 127-character limit.


Use the %PERFSTRT macro to signal the start of a transaction. The %PERFSTRT macro contains default user metrics. To see the relationships between %PERFSTRT and the default user metrics, see Default User Metrics and Performance Macros. For an example, see ARM Performance Macros.
The %PERFSTRT and %PERFSTOP macros can be nested in other %PERFSTRT and %PERFSTOP macros. When nested, each %PERFSTOP macro that is initiated is paired with the currently active %PERFSTRT macro. In the following figure, there are three %PERFSTRT and %PERFSTOP macro pairs. The first %PERFSTOP macro terminates the transaction for the third %PERFSTRT macro, and so on. The following code creates nested macro pairs:
* Enable ARM subsystem; if needed, set the _armexec=1
%let _armexec=1;
%PERFINIT(APPNAME='SAS 9.3 Studio Test Application');
%PERFSTRT(TXNNAME='SAS 9.3 Studio Transaction One');
%PERFSTRT(TXNNAME='First Nested Macro Pair');
%PERFSTRT(TXNNAME='Second Nested Macro Pair');
* * 
SAS code that represents a discrete unit of work,
* *
%PERFSTOP;		/* PERFSTOP for the Second Nested Macro Pair */
%PERFSTOP;		/* PERFSTOP for the First Nested Macro Pair */
%PERFSTOP;		/* PERFSTOP for the SAS 9.3 Studio Transaction One */
Nested %PERFSTRT and %PERFSTOP Macros
Nested %PERFSTRT and %PERFSTOP Macros