Try using 3 ticks.

FTPFILE='''lowercase'''

On Fri, Sep 18, 2020, 13:12 Wendell Lovewell <
000001e9c0ee0673-dmarc-requ...@listserv.ua.edu> 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 lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to