Re: PARMDD -- any one use yet

2014-12-12 Thread Steve Thompson
Ok, I'm back to working on this aspect of a problem.  So, I tried something 
interesting to try to figure this one out. The following JCL does NOT expand 
the string (the JOB after this does):

//SXT7279T JOB (T,,MC),'TEST PARMDD ',CLASS=I,
//   TIME=(,05),
//*  TYPRUN=SCAN,
//   MSGCLASS=X,NOTIFY=SYSUID
//* $ACFJ219 ACF2 ACTIVE HUMANA
//*
//*
//FOCUCC   EXEC FOCUCCDUAL COMPILE
//*
//*
// SET CMB=SXT7278.CID.MBDUAL.CRDS.CID
// SET CCT=SXT7278.CMPL.CNTL(RELCID)
//*
// SET HDY='.'
//*
// SET HDT='.'
//*
// SET SQP=Y
//*
// SET RNO='.'
//*
// SET VX='.'
//*
// SET NAP=NEWAPPL(BCMP)
//*
// EXPORT SYMLIST=*
//PARMDD   EXEC PGM=IEBGENER
//*-+1+2+3+4+5+6+7+8
//SYSUT1   DD  *,SYMBOLS=(CNVTSYS,PARMLST)
ISPSTART CMD(%NCMPL HDY HDT SQP RNO VX CCT CMB) NAP
/*
//SYSUT2   DD  DSN=PARMDD,DISP=(,PASS),UNIT=3390,
// DCB=(RECFM=VB,LRECL=4096,BLKSIZE=0),
// SPACE=(TRK,1)
//PARMLST  DD  SYSOUT=*
//SYSINDD  DUMMY
//SYSPRINT DD  SYSOUT=*
//*
//*
//MASSCMPL EXEC PGM=IKJEFT1B,PARMDD=PARMDD
//*PARM='ISPSTART CMD(%NCMPL HDY HDT SQP RNO VX CCT CMB) NAP'
//PARMDD   DD  DSN=PARMDD,DISP=OLD
/*
//*
//***  EXECUTE BACKGROUND CLIST TO CREATE **
//*
//SYSPRINT DD  SYSOUT=*
//SYSTSIN  DD  DUMMY
//SYSTSPRT DD  SYSOUT=*
//***  DUMMY PANEL LIBRARY  **
//ISPPLIB  DD  DSN=ISPPLIB,

JES shows this in the PARMLST DD of the gener step:

SYSUT1   : RECORD 1 BEFORE SUBSTITUTION
SYSUT1   : ISPSTART CMD(%NCMPL HDY HDT SQP RNO VX CCT CMB) NAP
SYSUT1   : RECORD 1 AFTER SUBSTITUTION
SYSUT1   : ISPSTART CMD(%NCMPL HDY HDT SQP RNO VX CCT CMB) NAP

THIS JOB WORKS for the expansion, but not in the execution!!:

//SXT7278T JOB (T,,MC),'TEST OF PARMDD',CLASS=I,
//*TYPRUN=SCAN,
// TIME=(0,10),
// MSGCLASS=X,NOTIFY=SYSUID
//*+JTS  HOLD_UNTIL NOW
//* $ACFJ219 ACF2 ACTIVE HUMANA
//*
//*
// EXPORT SYMLIST=*
//*
//*
//*OCUCC   EXEC FOCUCC
//*
//*
// SET HDY='TODAY'
//*
// SET HDT='10:00'
//*
// SET SQP='YES'
//*
// SET RNO='.'
//*
// SET VX='.'
//*
// SET CCT=SXT7278.CMPL.CNTL(RELCID)
//*
// SET CMB=TESTAEN.CID.MBB.CRDS.CID
//*
// SET NAP=NEWAPPL(BCMP)
//*
//*
//PARMDD   EXEC PGM=IEBGENER
//*-+1+2+3+4+5+6+7+8
//SYSUT1   DD  *,SYMBOLS=(CNVTSYS,PARMLST)
ISPSTART CMD(%NCMPL HDY HDT SQP RNO VX CCT CMB) NAP
/*
//SYSUT2   DD  DSN=PARMDD,DISP=(,PASS),UNIT=3390,
// DCB=(RECFM=VB,LRECL=4096,BLKSIZE=0),
// SPACE=(TRK,1)
//PARMLST  DD  SYSOUT=*
//SYSINDD  DUMMY
//SYSPRINT DD  SYSOUT=*
//*
//MASSCMPL EXEC PGM=IKJEFT1B,PARMDD=PARMLST
//*PARM='ISPSTART CMD(%NCMPL HDY HDT SQP RNO VX CCT CMB) NAP'
//PARMLST  DD  DSN=PARMDD,DISP=(OLD,DELETE)
//*
//***  EXECUTE BACKGROUND CLIST TO CREATE **
//*
//SYSPRINT DD  SYSOUT=*
//SYSTSIN  DD  DUMMY
//SYSTSPRT DD  SYSOUT=*
//***  DUMMY PANEL LIBRARY  **
//ISPPLIB  DD  DSN=ISPPLIB,

JES shows this in the PARMLST DD of the Gener step:
SYSUT1   : RECORD 1 BEFORE SUBSTITUTION
SYSUT1   : ISPSTART CMD(%NCMPL HDY HDT SQP RNO VX CCT CMB) NAP
SYSUT1   : RECORD 1 AFTER SUBSTITUTION (TRUNCATED AT 80)
SYSUT1   : ISPSTART CMD(%NCMPL TODAY 10:00 YES .   .   
SXT7278.CMPL.CNTL(RELCID) TESTAEN.CID.MBB.CRDS.CID) NEWAPPL(BCMP)
SYSUT1   : RECORD 1 AFTER SUBSTITUTION (TRUNCATED AT 80)
SYSUT1   : ISPSTART CMD(%NCMPL TODAY 10:00 YES .   .   
SXT7278.CMPL.CNTL(RELCID) TESTAEN.CID.MBB.CRDS.CID) NEWAPPL(BCMP)
SYSUT1   : RECORD 1 AFTER SUBSTITUTION (TRUNCATED AT 80)
SYSUT1   : ISPSTART CMD(%NCMPL TODAY 10:00 YES .   .   
SXT7278.CMPL.CNTL(RELCID) TESTAEN.CID.MBB.CRDS.CID) NEWAPPL(BCMP)
SYSUT1   : RECORD 1 AFTER SUBSTITUTION (TRUNCATED AT 80)
SYSUT1   : ISPSTART CMD(%NCMPL TODAY 10:00 YES .   .   
SXT7278.CMPL.CNTL(RELCID) TESTAEN.CID.MBB.CRDS.CID) NEWAPPL(BCMP)
SYSUT1   : RECORD 1 AFTER SUBSTITUTION (TRUNCATED AT 80)
SYSUT1   : ISPSTART CMD(%NCMPL TODAY 10:00 YES .   .   
SXT7278.CMPL.CNTL(RELCID) TESTAEN.CID.MBB.CRDS.CID) NEWAPPL(BCMP)

The next step does not work, because SYSUT2 had an I/O error. Apparently it 
doesn't like the SYSUT1 for writing to SYSUT2 for SYSOUT=*.

Well, after more testing, I found that you really can't copy or do a refer-back 
to pick it up.

Now, why does it work for the one and not the other?  It appears it is the 
special utility program that FOCUCC invokes:

U11RMS



Regards,
Steve Thompson
Tech Architect


The information transmitted is intended only for the person or entity to which 
it is addressed
and may contain CONFIDENTIAL material.  If you receive this 
material/information in error,
please contact the sender and delete or destroy the material/information.

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


Re: PARMDD -- any one use yet

2014-12-12 Thread Tom Marchant
On Fri, 12 Dec 2014 18:36:21 +, Steve Thompson sthompso...@humana.com 
wrote:

Ok, I'm back to working on this aspect of a problem.  So, I tried something 
interesting to try to figure this one out. The following JCL does NOT expand 
the string (the JOB after this does):

//SXT7279T JOB (T,,MC),'TEST PARMDD ',CLASS=I,
//   TIME=(,05),
//*  TYPRUN=SCAN,
//   MSGCLASS=X,NOTIFY=SYSUID
//* $ACFJ219 ACF2 ACTIVE HUMANA
//*
//*
//FOCUCC   EXEC FOCUCCDUAL COMPILE
//*
//*
// SET CMB=SXT7278.CID.MBDUAL.CRDS.CID
// SET CCT=SXT7278.CMPL.CNTL(RELCID)
//*
// SET HDY='.'
//*
// SET HDT='.'
//*
// SET SQP=Y
//*
// SET RNO='.'
//*
// SET VX='.'
//*
// SET NAP=NEWAPPL(BCMP)
//*
// EXPORT SYMLIST=*

The EXPORT has to be coded BEFORE the SET statements, as documented
in the first paragraph describing the EXPORT statement.

Symbols must be set to a value subsequent to the EXPORT statement
for the symbol value to be exported.

-- 
Tom Marchant

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


Re: PARMDD -- any one use yet

2014-12-12 Thread Steve Thompson

On 12/12/2014 02:35 PM, Tom Marchant wrote:

On Fri, 12 Dec 2014 18:36:21 +, Steve Thompson sthompso...@humana.com 
wrote:


SNIPPAGE

The EXPORT has to be coded BEFORE the SET statements, as documented
in the first paragraph describing the EXPORT statement.

Symbols must be set to a value subsequent to the EXPORT statement
for the symbol value to be exported.



For all -- I got interrupted a few times while writing the email 
that Tom was responding to.


My purpose was to get back and explain what I found (this morning 
my time).


To answer Tom specifically:

If that utility (U11RMS) is not executed, the symbols get 
expanded, and the REXX exec works.


And, in the JOB that worked, I had moved the EXPORT statement to 
immediately follow the JOB card and to immediately precede the 
step in question. Made no difference. When it worked, it worked.


Have that utility step execute and PARMDD does not work.

Regards,
Steve Thompson

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


Re: PARMDD -- any one use yet

2014-12-12 Thread Steve Thompson

On 12/12/2014 03:02 PM, Steve Thompson wrote:

On 12/12/2014 02:35 PM, Tom Marchant wrote:

On Fri, 12 Dec 2014 18:36:21 +, Steve Thompson
sthompso...@humana.com wrote:


SNIPPAGE

The EXPORT has to be coded BEFORE the SET statements, as
documented
in the first paragraph describing the EXPORT statement.

Symbols must be set to a value subsequent to the EXPORT statement
for the symbol value to be exported.


SNIPPAGE

To answer Tom specifically:


SNIPPAGE

And, in the JOB that worked, I had moved the EXPORT statement to
immediately follow the JOB card and to immediately precede the
step in question. Made no difference. When it worked, it worked.

snippage

Tom is correct.

I had not noticed that I did a copy and not a move when I had 
done the one test. Once I saw the two EXPORT statements, I 
realized my mistake So I re-ran my tests and proved what Tom 
said is valid.


Which also proved the manual

I am so glad it is Friday and not that far from beer-30.

Have a good weekend all,
Steve Thompson

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


Re: PARMDD -- any one use yet

2014-12-09 Thread Peter Relson
It's wrong to quietly ignore an unsupported construct.  Logging-DDname
in a SYSIN data set mentioned in PARMDD should result in a JCL syntax
error and failure of the job before execution.

Your opinions are always welcome. They are not always agreed with. 

For this case, I probably agree that a JCL syntax error could have been 
better. For many other cases I do not agree that it's wrong to quietly 
ignore.

Might it be more readily be reported in JESYSMSG?  It would seem that
since allocation messages appear there that data set is writeable at the
needed time (whether it's in scope for the initiator is a different 
question)

I'll plead ignorance here. That makes sense to me (but I don't know if 
record length could be a stumbling point). If a request is submitted, it 
would be useful to mention how necessary it is to show each substituted 
line in its entirety (possibly spanning multiple messages) or whether the 
first n characters might satisfy. I have not looked at all into just 
what is logged if logging is done (for the non-PARMDD case). I suppose 
normally I'd expect to see, for any line that changed due to substitution, 
the complete old and the complete new.

quote Note that logging-DDname is ignored if it is 
specified on the DD statement which describes a data set that 
is the target on the PARMDD keyword (see PARMDD parameter). /quote

what I read from the reference url is that EXEC ...,PARMDD=MYLOGDD 
along with SYMBOLS=(...,MYLOGDD) should fail.

Ignored (usually, and in this case) means ignored. It does not mean 
rejected. Here it really means ignored. In this case it does not even mean 
not processed and we told you about that with an informational message.

Peter Relson
z/OS Core Technology Design

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


Re: PARMDD -- any one use yet

2014-12-08 Thread Peter Relson
...ignored...!  WTF!?  Time for a Requirement?  Either 
the substitution result should be logged in logging-DDname 
or it should appear in an informative message after 
the EXEC statement.

You are always encouraged to submit requirements. Logging might well be 
rejected. It is a chicken-and-egg thing. At the time that PARMDD is (and 
has to be) processed (under the initiator task), various i/o operations 
are not supported (apparently including those needed to write to a the 
intended log). Changing that could be very costly, thus requiring 
significant justification.

I fear that I am not allowed to do that. I can only 
post snippets of it as I believe I have already done.

If you are not allowed to post the actual symbol values, can you post the 
length of each symbol values (and if there is some funky character that 
you can get in there, what such characters might be, just in case parsing 
is the issue)? 

Peter Relson
z/OS Core Technology Design

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


Re: PARMDD -- any one use yet

2014-12-08 Thread Paul Gilmartin
On Mon, 8 Dec 2014 07:59:53 -0500, Peter Relson wrote:

... At the time that PARMDD is (and
has to be) processed (under the initiator task), various i/o operations
are not supported (apparently including those needed to write to a the
intended log). Changing that could be very costly, thus requiring
significant justification.
 
Might it be more readily be reported in JESYSMSG?  It would seem that
since allocation messages appear there that data set is writeable at the
needed time (whether it's in scope for the initiator is a different question).

Treatment of PARMDD that refers to a SYSIN with SYMBOLS= is so
more complicated than EXEC ...,PARM= that reporting is correspondingly
more valuable.

It's wrong to quietly ignore an unsupported construct.  Logging-DDname
in a SYSIN data set mentioned in PARMDD should result in a JCL syntax
error and failure of the job before execution.

And another idiosyncrasy I suspect.  From:

http://www-01.ibm.com/support/knowledgecenter/SSLTBW_2.1.0/com.ibm.zos.v2r1.ieab600/iea3b6_parm_string_requirements_parmdd.htm
z/OS 2.1.0z/OS MVSz/OS MVS JCL ReferenceEXEC statementPARMDD 
parameterParameter string requirements
z/OS MVS JCL Reference
SA23-1385-00 

After concatenation, the parameter string that is passed to the job step 
program is examined for double ampersand character (amp;) sequences. Double 
ampersands are converted to single ampersands in the same way that double 
ampersands are converted to single ampersands by PARM= processing. 

I guess (I haven't tested) that if I code:

//  SET TWOAMP='amp;'
//  EXPORT TWOAMP
//STEP  EXEC  PGM=WOMBAT,PARM='TWOAMP'

... the parm passed to WOMBAT is two ampersands (there is no rescan).
However, in:

//  SET TWOAMP='amp;'
//  EXPORT TWOAMP
//STEP  EXEC  PGM=WOMBAT,PARMDD=P
//P  DD  *,SYMBOLS=JCLONLY
TWOAMP

... PARMDD processing converts the two ampersand to a single ampersand
which is passed to WOMBAT.  Ouch!  FSVO ... in the same way   The
effect of passing a symbol via PARM= may differ unexpectedly from passing
it via PARMDD=.

I suspect that when the LONGPARM Requirement was submitted the
requestor expected processing consistent with that of PARM=, but with the
100-character limit relaxed (substitution of system symbols would be an
added value).  What was provided was significantly different.

-- gil

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


Re: PARMDD -- any one use yet?

2014-12-08 Thread Neil Duffee
Caveat:  insert Daily Digest delay here...  (you folx've probably already 
hashed this out and are onto other 'stuffs'.)

quote Note that logging-DDname is ignored if it is specified on the DD 
statement which describes a data set that is the target on the PARMDD keyword 
(see PARMDD parameter). /quote

Gil:  What I read from the reference url is that EXEC ...,PARMDD=MYLOGDD along 
with SYMBOLS=(...,MYLOGDD) should fail.  In other/my words, you can't pipe the 
logging results into the program via the Parm DD.

Ex: failure (JCL error?)
// EXEC PGM=,PARMDD=MYLOGDD
//SYMBDDDD DATA,SYMBOLS=(...,MYLOGDD)
//MYLOGDD   DD 

ps.  z/OS v1.12 not v2.1 here

  signature = 6 lines follows  
Neil Duffee, Joe Sysprog, uOttawa, Ottawa, Ont, Canada
telephone:1 613 562 5800 x4585  fax:1 613 562 5161
mailto:NDuffee of uOttawa.ca http:/ /aix1.uOttawa.ca/ ~nduffee
“How *do* you plan for something like that?”  Guardian Bob, Reboot
“For every action, there is an equal and opposite criticism.”
“Systems Programming: Guilty, until proven innocent”  John Norgauer 2004


-Original Message-
From: Paul Gilmartin [mailto:paulgboul...@aim.com] 
Sent: December 7, 2014 12:16
Subject: Re: PARMDD -- any one use yet?

On Sun, 7 Dec 2014 11:20:40 -0500, Peter Relson wrote:

I might well be thinking of something else, but for whatever reason I 
was thinking that something might show what substitution is done for 
PARMDD
 
Found it in:

http://www-01.ibm.com/support/knowledgecenter/SSLTBW_2.1.0/com.ibm.zos.v2r1.ieab600/iea3b6_Syntax66.htm
z/OS 2.1.0z/OS MVSz/OS MVS JCL ReferenceDD statementSYMBOLS parameterSyntax

But:

...logging-DDname
Start of change Optional parameter that indicates a valid DD name for the 
data set to use for logging results of the symbol substitution. Rules for DD 
names are described in DDNAME parameter. Note that logging-DDname is ignored if 
it is specified on the DD statement which describes a data set that is the 
target on the PARMDD keyword (see PARMDD parameter). End of change

...ignored...!  WTF!?  Time for a Requirement?  Either the substitution result 
should be logged in logging-DDname or it should appear in an informative 
message after the EXEC statement.

I suppose one might add an IEBGENER step to show in logging-DDname the results 
of substitution in SYSUT1, followed by an other step using the passed
SYSUT2 as PARMDD.  No!  No!  No!

Are there any constraints on attributes, etc. of logging-DDname?

This was mentioned in a thread here, SYSIN Symbol Resolution vs.
LRECL circa 2013-10-10.  (I confess; I cloned the topic.)

The Search facility in Knowledge Center sucks and/or I don't know how to use 
it.  I found this only by searching a downloaded PDF of the JCL Reference for 
PARMDD.  Could I have done better?

-- gil

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


Re: PARMDD -- any one use yet?

2014-12-07 Thread Peter Relson
We would still need to explain why JOB A 
works while JOB B, based on JOB A, isn't 
working.

Perhaps you could consider starting this thread over again, this time 
providing the complete information.
I might have missed it, but I do not think you showed what the symbol 
values were, and you did not show the job log.

I might well be thinking of something else, but for whatever reason I was 
thinking that something might show what substitution is done for PARMDD

Peter Relson
z/OS Core Technology Design

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


Re: AW: Re: PARMDD -- any one use yet?

2014-12-07 Thread Steve Thompson

On 12/07/2014 02:23 AM, Peter Hunkeler wrote:
SNIPPAGE

SYMBOLS parameter
Parameter type
Keyword, optional
Purpose
Use the SYMBOLS parameter to request JES to perform symbol substitution within 
in-stream data.
Syntax
SYMBOLS=({JCLONLY|EXECSYS|CNVTSYS} [,logging-DDname])
Valid values: Specify one of three SYMBOLS= values:
JCLONLY [snip]
EXECSYS [snip]
CNVTSYS [snip]
logging-DDname
Optional parameter that indicates a valid DD name for the data set to use for 
logging results of the symbol substitution. Rules for DD names are described in 
?DDNAME parameter? on page 150. Note that logging-DDname is ignored if it is 
specified on the DD statement which describes a data set that is the target on 
the PARMDD keyword (see ?PARMDD parameter? on page 354).


Note the last sentence!


I appreciate the possibility of substituting symbols in instream data. However,  I cannot 
understand how one (IBM) can desing so many surprise, surprise effects into 
such functionality in the 21st century.  Paul listed many of them in an earlier post. 
This is just one more one cannot readily understand.

SNIPPAGE

Perhaps a few of us should submit a RCF asking for an example to 
contain the logging DDname and its use?


I think it would be rather instructive.

Regards,
Steve Thompson

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


Re: AW: Re: PARMDD -- any one use yet?

2014-12-07 Thread Steve Thompson

On 12/07/2014 02:24 AM, Peter Hunkeler wrote:

We would still need to explain why JOB A works while JOB B, based on JOB A, 
isn't working.



How about posting the two JCLs?


--
Peter Hunkeler

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

I fear that I am not allowed to do that. I can only post snippets 
of it as I believe I have already done.


Please note, even though I use my personal email for IBM-main the 
vast majority of the time, I have had management talking to me 
about what I say w/ or w/o a disclaimer (and not just on 
IBM-main, but other forums as well).


Regards,
Steve Thompson

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


Re: PARMDD -- any one use yet?

2014-12-07 Thread Paul Gilmartin
On Sun, 7 Dec 2014 11:20:40 -0500, Peter Relson wrote:

I might well be thinking of something else, but for whatever reason I was
thinking that something might show what substitution is done for PARMDD
 
Found it in:

http://www-01.ibm.com/support/knowledgecenter/SSLTBW_2.1.0/com.ibm.zos.v2r1.ieab600/iea3b6_Syntax66.htm
z/OS 2.1.0z/OS MVSz/OS MVS JCL ReferenceDD statementSYMBOLS parameterSyntax

But:

...logging-DDname
Start of change Optional parameter that indicates a valid DD name for the 
data set to use for logging results of the symbol substitution. Rules for DD 
names are described in DDNAME parameter. Note that logging-DDname is ignored if 
it is specified on the DD statement which describes a data set that is the 
target on the PARMDD keyword (see PARMDD parameter). End of change

...ignored...!  WTF!?  Time for a Requirement?  Either the substitution
result should be logged in logging-DDname or it should appear in an
informative message after the EXEC statement.

I suppose one might add an IEBGENER step to show in logging-DDname the
results of substitution in SYSUT1, followed by an other step using the passed
SYSUT2 as PARMDD.  No!  No!  No!

Are there any constraints on attributes, etc. of logging-DDname?

This was mentioned in a thread here, SYSIN Symbol Resolution vs.
LRECL circa 2013-10-10.  (I confess; I cloned the topic.)

The Search facility in Knowledge Center sucks and/or I don't know how to
use it.  I found this only by searching a downloaded PDF of the JCL Reference
for PARMDD.  Could I have done better?

-- gil

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


Re: PARMDD -- any one use yet?

2014-12-07 Thread Shmuel Metz (Seymour J.)
In 5483d3f5.9040...@copper.net, on 12/06/2014
   at 11:13 PM, Steve Thompson ste...@copper.net said:

I know of NOTHING using cores today.

Well, then you only know about machines designed in the last few
decades. But you can find some 1960's (1950's?) vintage machines in
museums.

How about identifying.

RCA 3301 for one.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see http://patriot.net/~shmuel/resume/brief.html 
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

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


Re: PARMDD -- any one use yet?

2014-12-07 Thread Shmuel Metz (Seymour J.)
In 5483d485.5010...@copper.net, on 12/06/2014
   at 11:16 PM, Steve Thompson ste...@copper.net said:

We would still need to explain why JOB A works while JOB B, based  on
JOB A, isn't working.

Obviously, because they are different. It may take some experimenting
to determine which differences are relevant.

After all, this isn't MFT, or DOS R26. It is an ec12 running z/OS 
2.1.

Which means that everything is more complicated and there are more
opportunities to shoot ourself in the foot.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see http://patriot.net/~shmuel/resume/brief.html 
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

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


Re: PARMDD -- any one use yet?

2014-12-06 Thread Shmuel Metz (Seymour J.)
In 5480ca98.3040...@copper.net, on 12/04/2014
   at 03:56 PM, Steve Thompson ste...@copper.net said:

On 12/04/2014 03:04 PM, Paul Gilmartin wrote:
 On 2014-12-04 12:35, Steve Thompson wrote:
SNIP
 Like, what's the most efficient way to clear a register?

 -- gil
SNIP

Well, mine is to pull the power plug.

Works for all machines. 

No. However, it will probably work for anything designed in the last
few decades.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see http://patriot.net/~shmuel/resume/brief.html 
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

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


Re: PARMDD -- any one use yet?

2014-12-06 Thread Shmuel Metz (Seymour J.)
In 5480d9dd.6000...@copper.net, on 12/04/2014
   at 05:02 PM, Steve Thompson ste...@copper.net said:

The one that does not work does pass to IKJEFT1B ISPSTART 
cmd(%NCMPL  and that's it. The rest of the parm string is NOT 
passed.

What happedns if you surround the parameter with apostrophes, e.g.,

ISPSTART cmd('%NCMPL foo') ?
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see http://patriot.net/~shmuel/resume/brief.html 
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

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


Re: PARMDD -- any one use yet?

2014-12-06 Thread Steve Thompson

On 12/06/2014 06:20 PM, Shmuel Metz (Seymour J.) wrote:

In 5480ca98.3040...@copper.net, on 12/04/2014
at 03:56 PM, Steve Thompson ste...@copper.net said:


On 12/04/2014 03:04 PM, Paul Gilmartin wrote:

On 2014-12-04 12:35, Steve Thompson wrote:

SNIP

Like, what's the most efficient way to clear a register?

-- gil

SNIP



Well, mine is to pull the power plug.



Works for all machines.


No. However, it will probably work for anything designed in the last
few decades.



I know of NOTHING using cores today.

But if you know of a machine that you pull the plug on it and it 
has registers that have something in them after POST or 
IML/IMPL/POR... How about identifying.


Regards,
Steve Thompson

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


Re: PARMDD -- any one use yet?

2014-12-06 Thread Steve Thompson

On 12/06/2014 06:22 PM, Shmuel Metz (Seymour J.) wrote:

In 5480d9dd.6000...@copper.net, on 12/04/2014
at 05:02 PM, Steve Thompson ste...@copper.net said:


The one that does not work does pass to IKJEFT1B ISPSTART
cmd(%NCMPL  and that's it. The rest of the parm string is NOT
passed.


What happedns if you surround the parameter with apostrophes, e.g.,

ISPSTART cmd('%NCMPL foo') ?


We would still need to explain why JOB A works while JOB B, based 
on JOB A, isn't working.


After all, this isn't MFT, or DOS R26. It is an ec12 running z/OS 
2.1.


Regards,
Steve Thompson

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


AW: Re: PARMDD -- any one use yet?

2014-12-06 Thread Peter Hunkeler
 A suggestion then: Specify a SYMBOLS logging DD, as I did in my example.  It 
 *should* tell you what substitutions were actually made.  I believe I've 
 read of such; I don't readily find it in the JCL Reference.
The JCL reference explains the SYMBOLS parameter as:


SYMBOLS parameter
Parameter type
Keyword, optional
Purpose
Use the SYMBOLS parameter to request JES to perform symbol substitution within 
in-stream data.
Syntax
SYMBOLS=({JCLONLY|EXECSYS|CNVTSYS} [,logging-DDname])
Valid values: Specify one of three SYMBOLS= values:
JCLONLY [snip]
EXECSYS [snip]
CNVTSYS [snip]
logging-DDname
Optional parameter that indicates a valid DD name for the data set to use for 
logging results of the symbol substitution. Rules for DD names are described in 
?DDNAME parameter? on page 150. Note that logging-DDname is ignored if it is 
specified on the DD statement which describes a data set that is the target on 
the PARMDD keyword (see ?PARMDD parameter? on page 354).


Note the last sentence!


I appreciate the possibility of substituting symbols in instream data. However, 
 I cannot understand how one (IBM) can desing so many surprise, surprise 
effects into such functionality in the 21st century.  Paul listed many of them 
in an earlier post. This is just one more one cannot readily understand.


--
Peter Hunkeler

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


AW: Re: PARMDD -- any one use yet?

2014-12-06 Thread Peter Hunkeler
We would still need to explain why JOB A works while JOB B, based on JOB A, 
isn't working.


How about posting the two JCLs?


--
Peter Hunkeler

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


Re: PARMDD -- any one use yet?

2014-12-05 Thread Peter Relson
Might one conclude that the substitution works just fine, but that the 
application to which you are sending the data can't handle longer data?

It is the user's responsibility to provide to the application only what it 
can handle. The system will not prevent it (except for authorized cases 
where providing too much data can be a system integrity exposure for 
incorrectly written programs).

Peter Relson
z/OS Core Technology Design

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


Re: PARMDD -- any one use yet?

2014-12-05 Thread Steve Thompson

On 12/05/2014 07:23 AM, Peter Relson wrote:

Might one conclude that the substitution works just fine, but that the
application to which you are sending the data can't handle longer data?

It is the user's responsibility to provide to the application only what it
can handle. The system will not prevent it (except for authorized cases
where providing too much data can be a system integrity exposure for
incorrectly written programs).

Peter Relson
z/OS Core Technology Design

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


Peter, I will use your post to give an update on this strangeness.

The two JOBs in question are using IKJEFT1B.

Once I got this working for the one JOB, I did a copy and paste 
to the second JOB. For these two JOBs the step in question is 
using IKJEFT1B, and ISPSTART is used to run a REXX.


The second JOB fails. And the Logging DD doesn't get written to.

I'm dropping this problem (PARMDD) for now, to focus on the REXX 
logic issue (submitting compiles with wrong compile options) that 
was the catalyst for this.


Regards,
Steve Thompson

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


Re: PARMDD -- any one use yet?

2014-12-05 Thread Paul Gilmartin
On Thu, 4 Dec 2014 17:08:30 -0500, Farley, Peter x23353 wrote:

A suggestion then: Specify a SYMBOLS logging DD, as I did in my example.  It 
*should* tell you what substitutions were actually made.
 
I believe I've read of such; I don't readily find it in the JCL Reference.

Paul Gilmartin had a thread about this a while back (not sure if here or 
TSO-REXX or where), from which my example was taken and subsequently modified. 
 The problem that can happen is I/O errors when the LRECL is exceeded after 
symbol substitution (due, we think, to LRECL limitations, maybe in JES for DD 
* datasets?  Don't remember ATM).
 
Symbol substitution is performed only for DD * (or DD DATA) data sets.

o There appears to be no practical global limitation on LRECL for instream
  data sets (perhaps thousands).

o It seems that the I/O error is reported when substitution causes the
  length of a line to exceed not any universal limit, but LRECL for the
  individual instream data set, whether it be 80 or 1000 or ...

o The JCL reference doesn't explain how LRECL is determined for an
  instream data set.  I submitted an RCF on this.  Accepted as clarification.
  I requested a preview, pending publication.  Pubs said they'd consult
  the developer and get back to me with the information.  They haven't.
  Empirically, the rules seem different between JES2 and JES3.

o The LRECL= parameter is now permitted on instream data set DD
  statements.  Empirically, specifying it has no effect (on JES2, at
  least).

In any case, the log may help.

On Fri, 5 Dec 2014 10:19:10 -0500, Steve Thompson wrote:

On 12/05/2014 07:23 AM, Peter Relson wrote:
 Might one conclude that the substitution works just fine, but that theåç
 application to which you are sending the data can't handle longer data?

 It is the user's responsibility to provide to the application only what it
 can handle. The system will not prevent it (except for authorized cases
 where providing too much data can be a system integrity exposure for
 incorrectly written programs).
 
Good point.  I believe the capability for an authorized program to accept
PARM100 is specified as an attribute on the load module.  I don't know
what it's called; I don't know whether AMBLIST or Binder SYSPRINT
reports it.

Thanks.


Peter, I will use your post to give an update on this strangeness.

The two JOBs in question are using IKJEFT1B.

I suspect IKJEFT1B is APF-authorized.  I don't know whether it's
linked as long PARM tolerant.  I would not recommend simply
re-linking it to change the attribute.

Once I got this working for the one JOB, I did a copy and paste
to the second JOB. For these two JOBs the step in question is
using IKJEFT1B, and ISPSTART is used to run a REXX.

The second JOB fails. And the Logging DD doesn't get written to.
 
If the encountered I/O error precludes logging, it's a bad design.
But the I/O ABEND should be reported in the job log.

I'm dropping this problem (PARMDD) for now, to focus on the REXX
logic issue (submitting compiles with wrong compile options) that
was the catalyst for this.

This is too damn complicated.  IBM should have simply relaxed the
syntactic limit on the length of the PARM= operand on the EXEC
statement.  Symbol substitution in instream data sets is a separate
feature, having it's own value.

Irritating.  The TSO CALL command still enforces the now-obsolete
100-character PARM limit.  Will anyone bet me that there will be an
enhancement in the next release?  The integrity concerns have been
removed by the availability of the PARM length enforcement for
APF authorized programs (provided that's enforced globally by
ATTACH/LINK, not only by the initiator, bypassing enforcement
for TSO CALL.  That would be a wrong design, but too charactistic
of IBM.)

-- gil

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


PARMDD -- any one use yet?

2014-12-04 Thread Steve Thompson
I've run into a situation where we have a parm that expands to more than 100 
characters (sound like a familiar problem?).

So, I've tried to use the PARMDD EXEC Keyword. And sure enough it points over 
to the specified DDName.

So I have it coded like this:

// EXPORT SYMLIST=*
 :
 :
//PARMLST  DD  *,SYMBOLS=CNVTSYS
 (HDY HDT SQP RNO VX CCT CMB) NAP
/*

And that failed - NONE of the variables were expanded.

So I tried this:

//PARMLST  DD  *,SYMBOLS=CNVTSYS
ISPSTART CMD(%NCMPL HDY HDT SQP RNO VX CCT CMB) NAP
/*

Only the ISPSTART CMD(NCMPL gets passed and used (because I got the SAYs out 
of the REXX code).

(yes, I am using IKJEFT01, IKJEFT1B, IRXJCL as the PGM=, and this ain't 
happing).

So, has anyone tried this? Have you had any success?

Did I read the various wonderful manuals? Yes, all of them z/OS 2.1 (JCL REF, 
TSO Customization, etc.).

I thought, from reading the manuals, that those variables were to be 
interpreted for this particular DD because of the SYSMBOLS keyword.

What am I missing?

Regards,
Steve Thompson

The information transmitted is intended only for the person or entity to which 
it is addressed
and may contain CONFIDENTIAL material.  If you receive this 
material/information in error,
please contact the sender and delete or destroy the material/information.

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


Re: PARMDD -- any one use yet?

2014-12-04 Thread Peter X. DeFabritus
You may have put the EXPORT statement at the wrong point in the JCL.  Try 
putting it right after the JOB statement.

On Thu, 4 Dec 2014 18:40:03 +, Steve Thompson sthompso...@humana.com 
wrote:

I've run into a situation where we have a parm that expands to more than 100 
characters (sound like a familiar problem?).

So, I've tried to use the PARMDD EXEC Keyword. And sure enough it points over 
to the specified DDName.

So I have it coded like this:

// EXPORT SYMLIST=*
 :
 :
//PARMLST  DD  *,SYMBOLS=CNVTSYS
 (HDY HDT SQP RNO VX CCT CMB) NAP
/*

And that failed - NONE of the variables were expanded.

So I tried this:

//PARMLST  DD  *,SYMBOLS=CNVTSYS
ISPSTART CMD(%NCMPL HDY HDT SQP RNO VX CCT CMB) NAP
/*

Only the ISPSTART CMD(NCMPL gets passed and used (because I got the SAYs 
out of the REXX code).

(yes, I am using IKJEFT01, IKJEFT1B, IRXJCL as the PGM=, and this ain't 
happing).

So, has anyone tried this? Have you had any success?

Did I read the various wonderful manuals? Yes, all of them z/OS 2.1 (JCL REF, 
TSO Customization, etc.).

I thought, from reading the manuals, that those variables were to be 
interpreted for this particular DD because of the SYSMBOLS keyword.

What am I missing?

Regards,
Steve Thompson

The information transmitted is intended only for the person or entity to which 
it is addressed
and may contain CONFIDENTIAL material.  If you receive this 
material/information in error,
please contact the sender and delete or destroy the material/information.

--
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


Re: PARMDD -- any one use yet?

2014-12-04 Thread Steve Thompson
Date: Thu, 4 Dec 2014 12:56:53 -0600
From: Peter X. DeFabritus pxdef...@gmail.com

You may have put the EXPORT statement at the wrong point in the JCL.  Try 
putting it right after the JOB statement.

SNIPPAGE

Sorry, it behaved the same whether it was just after the JOB card or just 
before the EXEC PGM= I've tried moving the EXPORT. And I tried various 
SYMBOLS= values.

However, it is now working. And I'm not sure what I did that fixed the problem. 
 I guess getting impatient and frustrated at the same time, I should stick to 
only making one change at a time

But I can tell you that the little comment about concatenating the lines 
together (in the JCL REF) -- using simple concat -- They ain't joking.

So, if you need to your parm line (string), think about how you do the split. 
Because the next line read is concatenated to the prior line ignoring the right 
side spaces (at least that's what I have experienced).  If you need a space 
between strings, you may need to do some interesting things to effect that.

Ok, I now return you to your regularly scheduled fun and games

Regards,
Steve Thompson


The information transmitted is intended only for the person or entity to which 
it is addressed
and may contain CONFIDENTIAL material.  If you receive this 
material/information in error,
please contact the sender and delete or destroy the material/information.


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


Re: PARMDD -- any one use yet?

2014-12-04 Thread Paul Gilmartin
On 2014-12-04 12:35, Steve Thompson wrote:
 
 So, if you need to your parm line (string), think about how you do the split. 
 Because the next line read is concatenated to the prior line ignoring the 
 right side spaces (at least that's what I have experienced).  If you need a 
 space between strings, you may need to do some interesting things to effect 
 that.
  
Put them at the left of the following line.  That may be interesting
or not.

And substitution will expand/shrink internal spaces attempting
to preserve column alignment.  ISPF tradition.  Possibly undesirable
if your application demands delimiting by a single space.

And two consecutive ampersands suppress substitution, but are
not converted to a single ampersand.  Intentional behavior for
compatibility with Assembler source code, wherein double
ampersands abound.

And expanding a line beyond record length (which may not be
what you expect) results in an execution I/O error.

And it's impossible to supply in PARMDD a PARM ending with
a space.

 Ok, I now return you to your regularly scheduled fun and games
 
Like, what's the most efficient way to clear a register?

-- gil

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


Re: PARMDD -- any one use yet?

2014-12-04 Thread Steve Thompson

On 12/04/2014 03:04 PM, Paul Gilmartin wrote:

On 2014-12-04 12:35, Steve Thompson wrote:

SNIP

Like, what's the most efficient way to clear a register?

-- gil

SNIP

Well, mine is to pull the power plug. I don't have to write code, 
I don't have to deal with MAKE, BINDER, or anything else.


Clears ALL of 'em.

And when you power on, they are set to the specified default for 
POR (or POST as you prefer).


Works for all machines. Some have more issues with this than others.

HTH.
Steve Thompson

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


Re: PARMDD -- any one use yet?

2014-12-04 Thread Farley, Peter x23353
The following definitely works, tested on V2.1 system today.  HTH.

//YOURJOBX JOB (0,0). . .  == Supply your own
//* 
//* DOC: EXPERIMENT WITH INSTREAM SYMBOL SUBSTITUTION.  
//* 
//  EXPORT SYMLIST=*
//  SET X='THIS IS A LONG SYMBOL VALUE.'
//* 
//*.+|+|+|+|+|+|+|+|
//SYMPARM  EXEC  PGM=IEFBR14,   
// PARM='LONG PARM VALUE TO FILL UP TO 100 CHARACTERS AND THEN A SYMBOL*
// X'  
//* 
//PARMDD   EXEC  PGM=SHOWPARM,PARMDD=MYPARMDD   
//STEPLIB   DD  DISP=SHR,DSN=PDX01.PNSPNS.C0279916.LOAD1
//SYSOUTDD  SYSOUT=*
//CEEMSGDD  SYSOUT=*
//CEEDUMP   DD  SYSOUT=*
//LOGSYMS   DD  SYSOUT=*
//MYPARMDD  DD  *,SYMBOLS=(CNVTSYS,LOGSYMS) 
LONG PARM VALUE TO FILL UP TO 100 CHARACTERS AND THEN A SYMBOLX
LOTS OF DATA TO FILL UP A LINE, FOLLOWED BY A LONG SYMBOL TO SEE X.
X ALONE
//* 
//SYMTEST  EXEC  PGM=IEBGENER   
//SYSPRINT  DD  SYSOUT=*
//SYSIN DD  DUMMY   
//SYSUT2DD  SYSOUT=*
//LOGSYMS   DD  SYSOUT=*
//SYSUT1DD  *,SYMBOLS=(CNVTSYS,LOGSYMS) 
LOTS OF DATA TO FILL UP A LINE, FOLLOWED BY A LONG: X  
X ALONE
//* 
//*.+|+|+|+|+|+|+|+|
//* 

-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Steve Thompson
Sent: Thursday, December 04, 2014 1:40 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: PARMDD -- any one use yet?

I've run into a situation where we have a parm that expands to more than 100 
characters (sound like a familiar problem?).

So, I've tried to use the PARMDD EXEC Keyword. And sure enough it points over 
to the specified DDName.

So I have it coded like this:

// EXPORT SYMLIST=*
 :
 :
//PARMLST  DD  *,SYMBOLS=CNVTSYS
 (HDY HDT SQP RNO VX CCT CMB) NAP
/*

And that failed - NONE of the variables were expanded.

So I tried this:

//PARMLST  DD  *,SYMBOLS=CNVTSYS
ISPSTART CMD(%NCMPL HDY HDT SQP RNO VX CCT CMB) NAP
/*

Only the ISPSTART CMD(NCMPL gets passed and used (because I got the SAYs out 
of the REXX code).

(yes, I am using IKJEFT01, IKJEFT1B, IRXJCL as the PGM=, and this ain't 
happing).

So, has anyone tried this? Have you had any success?

Did I read the various wonderful manuals? Yes, all of them z/OS 2.1 (JCL REF, 
TSO Customization, etc.).

I thought, from reading the manuals, that those variables were to be 
interpreted for this particular DD because of the SYSMBOLS keyword.

What am I missing?

Regards,
Steve Thompson

The information transmitted is intended only for the person or entity to which 
it is addressed and may contain CONFIDENTIAL material.  If you receive this 
material/information in error, please contact the sender and delete or destroy 
the material/information.

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

This message and any attachments are intended only for the use of the addressee 
and may contain information that is privileged and confidential. If the reader 
of the message is not the intended recipient or an authorized representative of 
the intended recipient, you are hereby notified that any dissemination of this 
communication is strictly prohibited. If you have received this communication 
in error, please notify us immediately by e

Re: PARMDD -- any one use yet?

2014-12-04 Thread Farley, Peter x23353
And I should have mentioned that SHOWPARM is just a local utility to display 
the PARM as a WTO.  Any equivalent local program will do.

Peter

-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Farley, Peter x23353
Sent: Thursday, December 04, 2014 4:15 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: PARMDD -- any one use yet?

The following definitely works, tested on V2.1 system today.  HTH.

//YOURJOBX JOB (0,0). . .  == Supply your own
//* 
//* DOC: EXPERIMENT WITH INSTREAM SYMBOL SUBSTITUTION.  
//* 
//  EXPORT SYMLIST=*
//  SET X='THIS IS A LONG SYMBOL VALUE.'
//* 
//*.+|+|+|+|+|+|+|+|
//SYMPARM  EXEC  PGM=IEFBR14,   
// PARM='LONG PARM VALUE TO FILL UP TO 100 CHARACTERS AND THEN A SYMBOL*
// X'  
//* 
//PARMDD   EXEC  PGM=SHOWPARM,PARMDD=MYPARMDD   
//STEPLIB   DD  DISP=SHR,DSN=PDX01.PNSPNS.C0279916.LOAD1
//SYSOUTDD  SYSOUT=*
//CEEMSGDD  SYSOUT=*
//CEEDUMP   DD  SYSOUT=*
//LOGSYMS   DD  SYSOUT=*
//MYPARMDD  DD  *,SYMBOLS=(CNVTSYS,LOGSYMS) 
LONG PARM VALUE TO FILL UP TO 100 CHARACTERS AND THEN A SYMBOLX
LOTS OF DATA TO FILL UP A LINE, FOLLOWED BY A LONG SYMBOL TO SEE X.
X ALONE
//* 
//SYMTEST  EXEC  PGM=IEBGENER   
//SYSPRINT  DD  SYSOUT=*
//SYSIN DD  DUMMY   
//SYSUT2DD  SYSOUT=*
//LOGSYMS   DD  SYSOUT=*
//SYSUT1DD  *,SYMBOLS=(CNVTSYS,LOGSYMS) 
LOTS OF DATA TO FILL UP A LINE, FOLLOWED BY A LONG: X  
X ALONE
//* 
//*.+|+|+|+|+|+|+|+|
//* 

-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Steve Thompson
Sent: Thursday, December 04, 2014 1:40 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: PARMDD -- any one use yet?

I've run into a situation where we have a parm that expands to more than 100 
characters (sound like a familiar problem?).

So, I've tried to use the PARMDD EXEC Keyword. And sure enough it points over 
to the specified DDName.

So I have it coded like this:

// EXPORT SYMLIST=*
 :
 :
//PARMLST  DD  *,SYMBOLS=CNVTSYS
 (HDY HDT SQP RNO VX CCT CMB) NAP
/*

And that failed - NONE of the variables were expanded.

So I tried this:

//PARMLST  DD  *,SYMBOLS=CNVTSYS
ISPSTART CMD(%NCMPL HDY HDT SQP RNO VX CCT CMB) NAP
/*

Only the ISPSTART CMD(NCMPL gets passed and used (because I got the SAYs out 
of the REXX code).

(yes, I am using IKJEFT01, IKJEFT1B, IRXJCL as the PGM=, and this ain't 
happing).

So, has anyone tried this? Have you had any success?

Did I read the various wonderful manuals? Yes, all of them z/OS 2.1 (JCL REF, 
TSO Customization, etc.).

I thought, from reading the manuals, that those variables were to be 
interpreted for this particular DD because of the SYSMBOLS keyword.

What am I missing?

Regards,
Steve Thompson

The information transmitted is intended only for the person or entity to which 
it is addressed and may contain CONFIDENTIAL material.  If you receive this 
material/information in error, please contact the sender and delete or destroy 
the material/information.

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

This message and any attachments are intended only

Re: PARMDD -- any one use yet?

2014-12-04 Thread Steve Thompson

On 12/04/2014 04:15 PM, Farley, Peter x23353 wrote:

The following definitely works, tested on V2.1 system today.  HTH.

SNIPPAGE

Yeah I'm having a Rod Serling afternoon.

I have two JOBs now where I am using this. One works, the other 
does not.


The one that does not work does pass to IKJEFT1B ISPSTART 
cmd(%NCMPL  and that's it. The rest of the parm string is NOT 
passed.


In the ISPLOG file, I can see what ISPF started with, and there 
is nothing after %NCMPL.


In the one that does work, the whole string is there, and it 
extends beyond 100 characters.


I've gone to the JES INIT  TUNE to see if you can do strangeness 
with INITs for this. PDF search did not return anything for it 
(wouldn't be the first time I mangled a keyword or three).


I've been using IEBEYEBALL -4 (because I wear bifocals now) and I 
just do not see it.


I think it is time to reset the registers. No NO, not on the 
z/FRAME. The windoze laptop...



Later,
Steve Thompson

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


Re: PARMDD -- any one use yet?

2014-12-04 Thread Farley, Peter x23353
A suggestion then: Specify a SYMBOLS logging DD, as I did in my example.  It 
*should* tell you what substitutions were actually made.

Paul Gilmartin had a thread about this a while back (not sure if here or 
TSO-REXX or where), from which my example was taken and subsequently modified.  
The problem that can happen is I/O errors when the LRECL is exceeded after 
symbol substitution (due, we think, to LRECL limitations, maybe in JES for DD * 
datasets?  Don't remember ATM).

In any case, the log may help.

HTH

Peter

-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Steve Thompson
Sent: Thursday, December 04, 2014 5:02 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: PARMDD -- any one use yet?

On 12/04/2014 04:15 PM, Farley, Peter x23353 wrote:
 The following definitely works, tested on V2.1 system today.  HTH.
SNIPPAGE

Yeah I'm having a Rod Serling afternoon.

I have two JOBs now where I am using this. One works, the other 
does not.

The one that does not work does pass to IKJEFT1B ISPSTART 
cmd(%NCMPL  and that's it. The rest of the parm string is NOT 
passed.

In the ISPLOG file, I can see what ISPF started with, and there 
is nothing after %NCMPL.

In the one that does work, the whole string is there, and it 
extends beyond 100 characters.

I've gone to the JES INIT  TUNE to see if you can do strangeness 
with INITs for this. PDF search did not return anything for it 
(wouldn't be the first time I mangled a keyword or three).

I've been using IEBEYEBALL -4 (because I wear bifocals now) and I 
just do not see it.

I think it is time to reset the registers. No NO, not on the 
z/FRAME. The windoze laptop...


Later,
Steve Thompson

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

This message and any attachments are intended only for the use of the addressee 
and may contain information that is privileged and confidential. If the reader 
of the message is not the intended recipient or an authorized representative of 
the intended recipient, you are hereby notified that any dissemination of this 
communication is strictly prohibited. If you have received this communication 
in error, please notify us immediately by e-mail and delete the message and any 
attachments from your system.

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