Author |
Message
|
mqbrks |
Posted: Wed Apr 04, 2018 6:12 am Post subject: Connect Direct (from IIB) to Mainframe |
|
|
Voyager
Joined: 17 Jan 2012 Posts: 75
|
Hi All,
We have few issues sending files through CD Output Node to Mainframe application. As we need to send data sets and configure additional parameters to send data set to mainframe, this is not being possible using CD output Node.
Option 1. So the options we have is using the CD Script that sends files to Mainframe(configuring all the additional parameters) - this has to be tested yet.
Option 2. CD output to Sterling.
Can you someone who has experience with CD or Sterling throw some light on pros and cons for the above options?
Thank you! |
|
Back to top |
|
 |
fschofer |
Posted: Wed Apr 04, 2018 8:18 am Post subject: |
|
|
 Knight
Joined: 02 Jul 2001 Posts: 524 Location: Mainz, Germany
|
|
Back to top |
|
 |
mpong |
Posted: Thu Apr 05, 2018 8:30 pm Post subject: |
|
|
Disciple
Joined: 22 Jan 2010 Posts: 164
|
why don't you use CICSRequest node to integrate with Mainframe system? |
|
Back to top |
|
 |
Vitor |
Posted: Fri Apr 06, 2018 4:30 am Post subject: Re: Connect Direct (from IIB) to Mainframe |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
mqbrks wrote: |
As we need to send data sets and configure additional parameters to send data set to mainframe, this is not being possible using CD output Node. |
What additional parameters? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
mqbrks |
Posted: Fri Apr 06, 2018 9:06 am Post subject: Re: Connect Direct (from IIB) to Mainframe |
|
|
Voyager
Joined: 17 Jan 2012 Posts: 75
|
Quote: |
What additional parameters? |
The below script works, where as how can I specify these additional options to pass it on to CDOutput node?
SUBMIT IIBproc1 process snode=CD.IBM.P444
snodeid=(ABCID3)
step1 copy from (file=/home/Dcdadmin/Testfile.txt)
to (file=ABCDE.EFGHE.MKA.FBPC.TEST(+1) DISP=NEW
DCB=(DSORG=PS,
LRECL=93,
RECFM=FB,
BLKSIZE=0)
SPACE=(CYL,(2,2),RLSE))
pend ; |
|
Back to top |
|
 |
mqbrks |
Posted: Fri Apr 06, 2018 9:09 am Post subject: |
|
|
Voyager
Joined: 17 Jan 2012 Posts: 75
|
mpong wrote: |
why don't you use CICSRequest node to integrate with Mainframe system? |
That's seems like good idea, need to explore options and also have to check with target team. |
|
Back to top |
|
 |
Vitor |
Posted: Fri Apr 06, 2018 10:14 am Post subject: Re: Connect Direct (from IIB) to Mainframe |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
mqbrks wrote: |
Quote: |
What additional parameters? |
The below script works, where as how can I specify these additional options to pass it on to CDOutput node?
SUBMIT IIBproc1 process snode=CD.IBM.P444
snodeid=(ABCID3)
step1 copy from (file=/home/Dcdadmin/Testfile.txt)
to (file=ABCDE.EFGHE.MKA.FBPC.TEST(+1) DISP=NEW
DCB=(DSORG=PS,
LRECL=93,
RECFM=FB,
BLKSIZE=0)
SPACE=(CYL,(2,2),RLSE))
pend ; |
Why are you specifying DCB parameters on what is clearly a GDG? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
mqbrks |
Posted: Fri Apr 13, 2018 11:20 am Post subject: Re: Connect Direct (from IIB) to Mainframe |
|
|
Voyager
Joined: 17 Jan 2012 Posts: 75
|
Quote: |
Why are you specifying DCB parameters on what is clearly a GDG? |
Mainframes needs those parameters. I figured out why CD Output node is not working.
The sysopts are never being overriden by IIB. That is causing issue while sending any file to mainframe. The SYSOPTS syntax on unix is not being acceptable to send file on Mainframe.
This doesn't work for mainframe
SYSOPTS=":DATATYPE=text:STRIP.BLANKS=no:XLATE=yes:"
You need to use this syntax to send file to mainframes.
SYSOPTS="DATATYPE=TEXT,STRIP.BLANKS=NO,XLATE=YES"
If you configured it in your esql code on the local environment IIB creates two SYSOPTS... instead of overriding. I have a PMR opened with IBM. Will update if I can find anything more. |
|
Back to top |
|
 |
Vitor |
Posted: Fri Apr 13, 2018 11:35 am Post subject: Re: Connect Direct (from IIB) to Mainframe |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
mqbrks wrote: |
Mainframes needs those parameters. |
Not on a GDG which already has the DCB parameters defined in the base catalog.
mqbrks wrote: |
I figured out why CD Output node is not working. |
Yay you.
mqbrks wrote: |
The sysopts are never being overriden by IIB. That is causing issue while sending any file to mainframe. The SYSOPTS syntax on unix is not being acceptable to send file on Mainframe.
This doesn't work for mainframe
SYSOPTS=":DATATYPE=text:STRIP.BLANKS=no:XLATE=yes:"
You need to use this syntax to send file to mainframes.
SYSOPTS="DATATYPE=TEXT,STRIP.BLANKS=NO,XLATE=YES"
|
Which is why it's always a best practice to fold parameters into the correct case, or upper case if you're uncertain. Mainframes tend to assume upper case.
mqbrks wrote: |
If you configured it in your esql code on the local environment IIB creates two SYSOPTS... instead of overriding. I have a PMR opened with IBM. Will update if I can find anything more. |
Can you post your ESQL? Not saying it's not a bug (and a PMR is the correct course of action) but there may be something code related you can do. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
mqbrks |
Posted: Mon Apr 16, 2018 7:17 am Post subject: Re: Connect Direct (from IIB) to Mainframe |
|
|
Voyager
Joined: 17 Jan 2012 Posts: 75
|
Quote: |
Not on a GDG which already has the DCB parameters defined in the base catalog. |
The mainframes contact person was saying so, I don't know why. But I have tried without these parameters, it was working using script.
Quote: |
Which is why it's always a best practice to fold parameters into the correct case, or upper case if you're uncertain. Mainframes tend to assume upper case. |
I am thinking the way sysopts is being created on unix env is different from the way mainframes accepts it.
Quote: |
Can you post your ESQL? Not saying it's not a bug (and a PMR is the correct course of action) but there may be something code related you can do. |
SET OutputLocalEnvironment.Destination.CD.Copy.From.Option.SYSOPTS ='"DATATYPE=TEXT,STRIP.BLANKS=NO,XLATE=YES"';
SET OutputLocalEnvironment.Destination.CD.Copy.To.Option.SYSOPTS ='"DATATYPE=TEXT,STRIP.BLANKS=NO,XLATE=YES"';
In the trace you see this
COPYFILE COPY
FROM (
FILE="/......../ABCDE.EKFGH.IKE.EUCB.TEST(+1)"
SYSOPTS="DATATYPE=TEXT,STRIP.BLANKS=NO,XLATE=YES"
SYSOPTS=":DATATYPE=text:STRIP.BLANKS=no:XLATE=yes:" )
TO (
FILE="ABCDE.EKFGH.IKE.EUCB.TEST(+1)"
SYSOPTS="DATATYPE=TEXT,STRIP.BLANKS=NO,XLATE=YES"
DISP=RPL
SYSOPTS=":DATATYPE=text:STRIP.BLANKS=no:XLATE=yes:" )
CLEARUP if (COPYFILE LE 4 ) then
RUN TASK PNODE (PGM=UNIX)
So if you see the script that it is running at the backend, it is appending the SYSOPTS instead of overriding.
Correct me if I am wrong anywhere. I haven't got any update from IBM, will let you know if I get one. |
|
Back to top |
|
 |
pradeep3j |
Posted: Tue Feb 12, 2019 6:37 am Post subject: |
|
|
Newbie
Joined: 11 Feb 2019 Posts: 5
|
Hello, I am facing the same problem that SYSOPT is getting appended. I need to transfer the file from UNIX to WIndows environment and using the syntax as below
SET OutputLocalEnvironment.Destination.CD.Copy.To.Option.SYSOPTS ='datatype(binary) xlate(NO) strip.blanks(yes)';
The script is appending rather than overriding
SYSOPTS=datatype(binary) xlate(NO) strip.blanks(yes) SYSOPTS=":STRIP.BLANKS=no:DATATYPE=binary:XLATE=no:"
Can you please help me if you fixed the issue? |
|
Back to top |
|
 |
Vitor |
Posted: Tue Feb 12, 2019 6:53 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
pradeep3j wrote: |
Hello, I am facing the same problem that SYSOPT is getting appended. |
That's not the same problem as in this year old thread, nor does it seem to be the same problem you've now posted 3 times in here.
pradeep3j wrote: |
I need to transfer the file from UNIX to WIndows environment and using the syntax as below
SET OutputLocalEnvironment.Destination.CD.Copy.To.Option.SYSOPTS ='datatype(binary) xlate(NO) strip.blanks(yes)';
The script is appending rather than overriding
SYSOPTS=datatype(binary) xlate(NO) strip.blanks(yes) SYSOPTS=":STRIP.BLANKS=no:DATATYPE=binary:XLATE=no:" |
ESQL isn't script, and if you're claiming that the ESQL line you've posted results in the statement you've posted appearing in the LocalEnvironment then you need to raise a PMR with IBM as you've discovered a massive bug in the software. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
pradeep3j |
Posted: Tue Feb 12, 2019 11:27 am Post subject: |
|
|
Newbie
Joined: 11 Feb 2019 Posts: 5
|
Thanks for quick reply. Yes, the two SYSOPTS got generated from ESQL. I will be raising PMR for the same and will update back. |
|
Back to top |
|
 |
fjb_saper |
Posted: Tue Feb 12, 2019 9:12 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Have you tried creating a CD file and submitting that just overriding the file parameter?  _________________ MQ & Broker admin |
|
Back to top |
|
 |
pradeep3j |
Posted: Thu Feb 14, 2019 6:38 am Post subject: |
|
|
Newbie
Joined: 11 Feb 2019 Posts: 5
|
No, I was just trying to have the compute node followed by CDOutput Node where I specified SNODE, Directory, CDConfigurable service etc. The CDOutput node was automatically generating the script for me based on the parameters I was setting in LocalEnvironment tree and IIB was placing that script in error logs. I have raised the PMR with IBM and will update back as soon as I receive reply from IBM |
|
Back to top |
|
 |
|