Valid in: | client session |
Enclose domain names that are not valid SAS names in double or single quotation marks.
SAS Management Console: Guide to Users and Permissions and SAS Management Console online Help
0 | indicates that the RSUBMIT is complete. |
1 | indicates that the RSUBMIT failed to execute. |
2 | indicates that the RSUBMIT is still in progress. |
To prevent a conversion from asynchronous to synchronous behavior, ensure that the CMACVAR= option is associated with a specific RSUBMIT block.
The CMACVAR= option in the current RSUBMIT block can override the CMACVAR= that is specified at sign-on.
YES|Y | specifies that a connection to the server session continues. A sign-off is not automatically performed after the RSUBMIT has completed. CONNECTPERSIST maintains the connection for subsequent RSUBMIT statements. |
NO|N | specifies that a connection to the server session terminates. A sign-off is automatically performed after the RSUBMIT has completed. Setting NO requires that you sign on to the server session again before you perform the next RSUBMIT. |
rsubmit emp1 sascmd="!sascmd";
%let sashost=hrmach1.dorg.com; rsubmit sashost;
%let sashost=hrmach1.dorg.com; rsubmit sashost.sasport;
rsubmit hrmach1.2267;
%let sashost=hrmach1.dorg.com 2667; rsubmit sashost;
rsubmit hrmach1._ _2267;
YES|Y | specifies that the Transfer Status window is displayed for file transfers within the current RSUBMIT. |
NO|N | specifies that the Transfer Status window is not displayed for file transfers within the current RSUBMIT. |
1 | If the CONNECTSTATUS= option is specified in the SIGNON statement, the value for the CONNECTSTATUS= option in the SIGNON statement is used. |
2 | If the CONNECTSTATUS system option is specified, the value for the CONNECTSTATUS system option is used. |
3 | Otherwise, the default behavior occurs. The default for a synchronous RSUBMIT is YES, which displays the Transfer Status window. The default for an asynchronous RSUBMIT is NO, which does not display the Transfer Status window. |
YES|Y | specifies that the RSUBMIT blocks execute synchronously. |
NO|N | specifies that the RSUBMIT blocks execute asynchronously. |
1 | If the CONNECTWAIT= option is specified in the SIGNON statement (or if the AUTOSIGNON system option has been specified because a sign-on has not yet occurred), the value for the CONNECTSTATUS= option in the SIGNON statement is used. |
2 | If the CONNECTWAIT system option is specified, the value for the CONNECTWAIT system option is used. |
3 | If the CONNECTWAIT= option is not specified in the SIGNON statement or if the CONNECTWAIT system option is not specified, the default for the CONNECTWAIT= option is used. The default is YES, which is to execute synchronously. |
If the AUTOSIGNON system option has been specified and a sign-on has not yet occurred, any options that are specified in RSUBMIT are in effect for the entire connection. For example, if you specify CONNECTWAIT=NO in RSUBMIT and the AUTOSIGNON system has been specified, asynchronous RSUBMIT statements will be the default for the entire connection. However, the CONNECTWAIT= value can be overridden in individual RSUBMIT blocks. A connection is terminated using the SIGNOFF statement.
If CONNECTWAIT=NO is specified, you might also specify the CMACVAR= option. CMACVAR= enables you to programmatically test the status of the current asynchronous RSUBMIT to find out whether the task has completed or is still in progress.
When %SYSRPUT is executed within a synchronous RSUBMIT, the macro variable is defined in the client session as soon as it executes.
When %SYSRPUT is executed within an asynchronous RSUBMIT, the macro variable is defined in the client session when a synchronization point is encountered. To override this behavior, use the SYSRPUTSYNC system option.
If CONNECTWAIT=NO is specified and the AUTOSIGNON system option also has been specified (because a sign-on has not yet occurred), an automatic sign-off will occur only if CONNECTPERSIST=NO is also specified.
When you use the CSCRIPT= option, do not also use the NOCSCRIPT option. If you use NOCSCRIPT and CSCRIPT=, sign-on is canceled.
FILENAME statement in SAS Statements: Reference and the companion that is appropriate for your operating environment.
YES|Y | specifies that the client session's macro variables will be updated when the client session receives the results of the server session's execution of the %SYSRPUT macro. The results are delivered in the form of a packet. Specifying YES does not mean that the client's macro variables will be updated immediately after the server session's execution of the %SYSRPUT macro variable. YES means that the client's macro variables will be updated when the client receives the packet from the server session. Therefore, the exact time at which the client session's macro variables are updated will depend on the availability of the client session to receive the packet from the server session. If the client session is busy, the server session must wait until the client session is ready to receive the packet. |
NO|N | specifies that the client session's macro variables will be updated when a synchronization point is encountered. This is the default. |
If the SYSRPUTSYNC system option is specified and the CSYSRPUTSYNC= option in RSUBMIT is not specified, the system option will apply to the RSUBMIT statement.
Changing the value assigned to the SYRPUTSYNC= option between consecutive asynchronous RSUBMIT statements causes unpredictable results. You are advised not to change the value between asynchronous RSUBMIT statements.
Example 8: Forcing Macro Variables to Be Defined When %SYSRPUT Executes for an example of how to prevent SYSRPUTSYNC= option overrides.
rsubmit job1 inheritlib=(local work=remote); libname local list; libname remote list; data local.a; x=1; run; endrsubmit;
SAS/SHARE User's Guide
WARNING: LOG=/OUTPUT= options invalid with synchronous rsubmit.
Options will be ignored.
However, because the asynchronous RSUBMIT and the PROC PRINTTO statements execute simultaneously, predicting which operation will complete first is impossible. The timing of the completions of these operations determines whether the results are written to the SIGNON log or to the PROC PRINTTO log.
If you direct the log or output lines to a file and then use RGET or RDISPLAY to retrieve the contents of an empty backing store, this message is displayed:
WARNING: The LOG option was used to file log lines for the current RSUBMIT. There are no log lines for RGET to process.
MOD option in the FILENAME statement, which varies by operating environment. See the SAS Companion that is appropriate for your operating environment.
YES|Y | enables notification via a message window. Here
is the format of the default message: Asynchronous
task TASK1 has completed. TASK1 is the server ID. The
message window does not interfere with any other task executions in
progress. To acknowledge the message and to close the window, click
OK.
|
NO|N | disables notification. This is the default. |
“e-mail-address” | enables notification via an e-mail message, and specifies the e-mail address of the recipient for the notification. E-mail addresses are limited to a maximum of 256 characters. Enclose the e-mail address in double or single quotation marks. The message includes information about the total time that was used for the asynchronous RSUBMIT. If the LOG= and OUTPUT= options are also specified in an asynchronous RSUBMIT statement, the e-mail message identifies the locations of the log file and output file. |
options autosignon sascmd="!sascmd"; rsubmit process1 wait=no notify=yes; %put should get notification window; endrsubmit;
signoff process1;
options autosignon sascmd="!sascmd";
rsubmit process1 wait=no notify=no;
code-to-be-executed-in-server-session
endrsubmit;
If NOTIFY=YES or NOTIFY=“e-mail-address” is specified in a synchronous RSUBMIT, notification fails. Notification is valid only for an asynchronous RSUBMIT.
Use the NOTIFY= option in RSUBMIT only when the AUTOSIGNON system option has been specified (because a sign-on has not yet occurred).
If NOTIFY= is specified in RSUBMIT when the AUTOSIGNON system option has been specified, but a sign-on has previously occurred, NOTIFY= has no effect.
If NOTIFY=YES and the NOTERMINAL system option has been specified, the request for notification is ignored. This message is displayed:
WARNING: The NOTIFY option is valid only if a TERMINAL is attached to this SAS session. Option will be ignored.
However, notification can be directed to an e-mail address, regardless of whether the TERMINAL or NOTERMINAL system option has been specified.
If NOTIFY=“e-mail address” is specified, but the e-mail message cannot be sent, notification will occur in the form of a message window, which is the action that occurs when NOTIFY=YES. This behavior assumes that the NOTERMINAL system option has not been specified.
If NOTIFY=“e-mail address” is specified, the SAS system and the operating environment that the SAS system runs under must be configured to support e-mail. Without appropriate configuration, your attempt to specify notification via e-mail might fail. Contact your system administrator for details.
Notification fails if NOTIFY=YES or NOTIFY=“e-mail address” and you specify statements or commands (such as RGET or SIGNOFF) during the asynchronous RSUBMIT that change execution from asynchronous to synchronous mode.
This message is displayed when the NOTIFY= option is specified in the RSUBMIT statement:
WARNING: The NOTIFY option is applied only during SIGNON, but remains in effect for the entire connection until SIGNOFF.This message is also displayed for an RSUBMIT for which an automatic sign-on has occurred.
EMAILHOST, EMAILPORT, and EMAILSY system options in SAS System Options: Reference
.bat
and .cmd
extensions. UNIX
extensions include .sh
, .csh
, and .ksh
. OpenVMS uses the .com
extension. The SASCMD= option does not support
ERROR: Process quota exceeded. ERROR: Cannot spawn subprocess. Check process limit quotas and privileges.
rsubmit; %put %bquote( %sysfunc (getsym(SASCMD_2042CF6B))); endrsubmit;
When you use SASCMD=, do not also use NOCSCRIPT. Otherwise, NOCSCRIPT is ignored.
SYNTAXCHECK= and NOSYNTAXCHECK= system options in SAS System Options: Reference
ICON, NOSPLASH, and NOTERMINAL system options in SAS Companion for Windows
If the specified SAS Application Server does not contain
a
When you use SERVER=, do not also use these RSUBMIT options: NOCSCRIPT, NOTIFY=, PASSWORD=, REMOTE=, SASCMD=, SCRIPT=, SIGNONWAIT=, or USERNAME=. Here is an example of a warning:
WARNING: NOTIFY= and SERVER= are mutually exclusive. Please choose only one of them.
If any of these options is also specified, the entire RSUBMIT code block will be ignored. Although the AUTOSIGNON system option might be in effect, a server sign-on will fail.
When you use SERVER=, you can also specify any
of these options in RSUBMIT: CMACVAR=, CONNECTPERSIST=, CSTATUS=.
CWAIT=, INHERITLIB=, LOG=, OUTPUT=, OUTPUT=, or SYSRPUTSYNC=. If you
specify any of these options, the option that is specified in RSUBMIT
takes precedence over the equivalent property for the
If you use NOCSCRIPT and SERVER=, sign-on is canceled.
The CONNECTPERSIST= and SYSRPUTSYNC= options are
available only in the RSUBMIT statement. They cannot be specified
as sign-on properties for the
SAS Management Console: Guide to Users and Permissions and SAS Management Console online Help
YES|Y | specifies a synchronous sign-on. A synchronous sign-on causes the client session to wait until the sign-on to a server session has completed before control is returned to the client session for continued execution. YES is the default. |
NO|N | specifies an asynchronous sign-on. An asynchronous sign-on to a server session begins execution and control is returned to the client session immediately for continued execution. Asynchronous sign-on allows multiple tasks (including other sign-ons) to be executed in parallel. Asynchronous sign-ons reduce the total amount of time that would be used to execute individual sign-ons to multiple server sessions. Using the saved time, the client session can execute more RSUBMIT statements. |
If SIGNONWAIT is specified as a system option and the SIGNONWAIT= option is not specified, the system option will apply to the RSUBMIT statement.
If SIGNONWAIT=NO is specified, the USERID= and PASSWORD= options cannot be set to _PROMPT_.
options remote=myhost sascmd="!sascmd";
signon notify="joe.smith@apex.com";
rsubmit wait=no subject="First task completed on &SYSHOSTNAME";
code-to-be-executed
endrsubmit;
TASK1 is the server ID.SAS/CONNECT task TASK1 has completed.
Syntax for the SIGNON and the SIGNOFF Statements and Commands
SAS system options that support e-mail configuration: EMAILHOST, EMAILPORT, and EMAILSY in SAS System Options: Reference
proc PWENCODE in="srvmach"; run; {sas001}c2Vydm1hY2g=The clear-text password
srvmach
is specified in the PROC PWENCODE statement.
The output is generated in the form {key}encoded-password
. sas001
is the key, which
is used to decode the encoded password to its clear-text form when
the password is needed.
_PROMPT_ | specifies that SAS prompt the user for a valid password. This value enforces security. |
statements for client session rsubmit; statements for server session endrsubmit; statements for client session
rsubmit; data _null_; newmacro='mend; endrsubmit; rsubmit; endrsubmi' || 't; ' ; put newmacro; run; endrsubmit;
"newmacro='mend; endrsubmit;';"
(instead of it being broken between the two RSUBMIT blocks), parsing
of the RSUBMIT block would end with "endrsubmit;"
. RSUBMIT block processing ends after the ENDRSUBMIT statement, the
second quotation mark is processed in the client SAS session, and
another quotation mark will need to be entered before SAS reports
an error. Here is an excerpt of the error message:
user=joe password='Born2run'; user=joe password='' /* null space specified by contiguous quotation marks */; user='joe black' password='Born 2 run'; user='joe?black' password='Born 2 run'; user='apexdomain\joe' pass='2bornot2b' /* Windows user name */; user='"happy joe"' pw=_prompt_; user=_prompt_; userid="myuserid" password="{sas001}MVNoYXJl";