Usage Note 11807: SYSOUT DATA SET NOT ALLOCATED, USER NOT AUTHORIZED FOR FUNCTION
SPECIFIED when using the internal reader with SAS IOM Server
If a thin client (ie. Enterprise Guide, Visual Basic, etc.) submits code
to a remote SAS Workspace (IOM Server), the following error may be
displayed:
ERROR: SVC99 error rc=4, reason=0470 : IKJ56864I SYSOUT DATA SET NOT
ALLOCATED, USER NOT AUTHORIZED FOR FUNCTION SPECIFIED.
ERROR: Error in the FILENAME statement.
The error will occur when attempting to allocate to the JES internal
reader. For example,
filename rdr SYSOUT=A pgm=intrdr recfm=fb lrecl=80;
data _null_;
file rdr;
put '//TESTFTP JOB (XXXX),EDU.FTP.TXT,NOTIFY=EDU,MSGCLASS=T';
put '// EXEC SAS802';
put '//SYSIN DD *';
put 'proc options;';
put '//';
run;
The problem occurs with spawned sessions in SAS 9 (or SAS 8.2 with the
SAS 9 Object Spawner) not being able allocate a SYSOUT file to the JES
internal reader for submitting JCL to. This is a restriction of the TSO
environment service, which is used to run SAS in the spawned sessions.
The problem occurs because SAS is running with the /bin/tso shell
command, and this creates an unauthorized environment. Allocating a
file to an output writer requires an authorized environment (TSO is an
authorized environment when logged on to).
There are two possible workarounds for the problem. One relies on using
the filename FTP access method to submit a job via FTP, the other on
preallocates a file to the internal reader prior to starting SAS.
WORKAROUND 1:
-------------
This approach allocates the file in a shell script prior to starting SAS
with the /bin/tso command.
1.) Edit the SAS startup shell command and the SAS program.
2.) Allocate the file to the internal reader using a shell
environment variable, and remove the filename statement in the
SAS program.
3.) Invoke a shell script from the IOM spawner that in turn launches
SAS. In the part of the script where SYSPROC is specified, make
the following changes:
#export SYSPROC=THEIR.SAS.CLIST
export TSOALLOC="SYSPROC:RDR"
export SYSPROC="ALLOC DA('THEIR.SAS.CLIST') SHR"
export RDR="ALLOC SYSOUT(A) WRITER(INTRDR) RECFM(F) LRECL(80)"
Change ‘THEIR.SAS.CLIST’ to the CLIST library from which the SAS
startup CLIST is read.
4.) Remove the filename rdr ...; statement from the SAS program. The
SAS program should look similar to the following:
data _null_;
file RDR;
put '//TEST JOB (R4240),''USER NAME'',NOTIFY=USERID';
put '/*JOBPARM FETCH';
put '// EXEC PGM=IKJEFT01';
put '//SYSTSPRT DD SYSOUT=A';
put '//SYSTSIN DD *';
put ' SEND ''HELLO'' U(USERID)';
run;
WORKAROUND 2:
-------------
This approach uses a SAS/CONNECT remote submission. The MVS host name
is 'mvshost', and the filename statement must have a userid (e.g.
'user1') and password (e.g. 'pass1') specified to sign on to FTP. This
suggestion does not require preallocating an internal reader file. This
example uses the SAS filename FTP access method to submit the job. For
example:
signon mvshost.spawner user=_prompt_;
rsubmit;
filename job ftp '.job.cntl' host='mvshost'
user='user1' pass='pass1' rcmd='site file=jes';
data _null_;
file job;
put '//TEST JOB (R4240),''USER NAME'',NOTIFY=USERID';
put '/*JOBPARM FETCH';
put '// EXEC PGM=IKJEFT01';
put '//SYSTSPRT DD SYSOUT=A';
put '//SYSTSIN DD *';
put ' SEND ''HELLO'' U(USERID)';
run;
endrsubmit;
Operating System and Release Information
| SAS System | SAS Integration Technologies | z/OS | 8.2 TS2M0 | |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
| Type: | Usage Note |
| Priority: | |
| Topic: | System Administration ==> Servers ==> Integration Technologies
|
| Date Modified: | 2006-04-06 10:52:40 |
| Date Created: | 2004-02-16 14:28:27 |