-------
//FTP PROC
//*
//PS0010 EXEC PGM=FTP,REGION=6M
//SYSPRINT DD SYSOUT=*
//OUTPUT DD SYSOUT=*
//*
//INPUT DD DUMMY
//*
//XMLFILE DD DSN=SOMEFILE.XMIT,
// DISP=(NEW,CATLG),...
//*
How about using a DD Override?
//JS0010 EXEC FTP
//*
//PS0010.INPUT DD *
GET ht.jst0c1.xmi //DD:XMIFILE
Quit
//*
Thank You and Please Be Safe!
Len Sasso
Systems Administrator Senior
CSRA, A General Dynamics Information Technology Company
327 Columbia TPKE
Rensselaer, NY 12144
[email protected]
From: IBM Mainframe Discussion List <[email protected]> on behalf of
Barry Snoots <[email protected]>
Sent: Friday, September 18, 2020 2:42 PM
To: [email protected] <[email protected]>
Subject: Re: Substituting SYSIN variables via EXPORT SYMLIST containing
mixed-case values
[External: Use caution with links & attachments]
Understood
-----Original Message-----
From: John McKown
Sent: Friday, September 18, 2020 1:33 PM Newsgroups: bit.listserv.ibm-main
To: [email protected]
Subject: Re: Substituting SYSIN variables via EXPORT SYMLIST containing
mixed-case values
Try using 3 ticks.
FTPFILE='''lowercase'''
On Fri, Sep 18, 2020, 13:12 Wendell Lovewell <
[email protected]> wrote:
> Is there a way to get a mixed-case string substituted into SYSIN data
> using "EXPORT SYMLIST=*" and the "DD *,SYMBOLS=(JCLONLY)" facility?
>
> I'm trying to download files from an FTP server to z/OS using a PROC
> similar to this:
>
> //*-----------------------------------------
> //FTPTEST PROC FTPFILE=
> //*-----------------------------------------
> //FTP EXEC PGM=FTP,REGION=4M
> //XMIFILE DD DSN=SOMEFILE.XMIT,
> // DISP=(NEW,CATLG),...
> //*
> //INPUT DD *,SYMBOLS=(JCLONLY)
> blah blah blah
> BINARY
> GET &FTPFILE //DD:XMIFILE
> QUIT
> /*
> // PEND
>
> Without the EXPORT SYMLIST=*, &FTPFILE doesn't get replaced in the SYSIN:
>
> EZA1460I Command:
> EZA1736I GET &FTPFILE //DD:XMIFILE
> EZA1701I >>> RETR &FTPFILE
> 550 &FTPFILE: No such file or directory
>
>
> So with it added:
>
> //*-------------------------------------------------------------------
> //FTPTEST PROC FTPFILE=
> //EXP EXPORT SYMLIST=*
> // SET FTPFID=&FTPFILE
> //FTP
> ...
> ...and the GET changed to:
> GET &FTPFID //DD:XMIFILE
>
> With a lower-case value in FTPFILE, the job errors out with a JCL problem
> before it starts:
>
> //FTPTEST EXEC PROC=FTPTEST,
> // FTPFILE='ht.jst0c1.xmi'
>
> In the joblog:
> 5 XX SET FTPFID=&FTPFILE
> IEFC653I SUBSTITUTION JCL - FTPFID=ht.jst0c1.xmi
> ...
> And:
> 5 IEFC620I UNIDENTIFIABLE CHARACTER h ON THE SET STATEMENT
> 5 IEFC620I UNIDENTIFIABLE CHARACTER t ON THE SET STATEMENT
> 5 IEFC620I UNIDENTIFIABLE CHARACTER j ON THE SET STATEMENT
> ..
>
>
> Although with an upper-case FTP file name:
>
> //FTPTEST EXEC PROC=FTPTEST,
> // FTPFILE='HT.JST0C1.XMI'
>
> The job runs, but of course that file doesn't exist on the FTP server so
> the RETR fails:
>
> EZA1701I >>> RETR HT.JST0C1.XMI
> 550 HT.JST0C1.XMI: No such file or directory
>
>
>
> If you try changing the SET for FTPFID in the PROC to allow lower-case by
> using apostrophes:
> // SET FTPFID='&FTPFILE'
> ...that passes the string &FTPFILE as-is and the RETR fails:
>
> EZA1701I >>> RETR &FTPFILE
> 550 &FTPFILE: No such file or directory
>
>
> So, is there any way to get the &FTPFID in the GET command to be replaced
> with a mixed-case value?
>
> TIA,
> Wendell
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN
>
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN