IBM Sterling Transformation Extender

Sterling Transformation Extender

Come for answers, stay for best practices. All we're missing is you.


#Sterling
 View Only
Expand all | Collapse all

RUN fuction in z/OS

  • 1.  RUN fuction in z/OS

    Posted Wed August 05, 2009 04:12 AM

    Originally posted by: gkoukou


    Hi,

    We use WTX 8.2.0.4 in WMB 6.1.0.3 in z/OS. The input is in xml (UTF-8). All type trees are created by importing the xsds with the default options. The main map calls several other maps using the RUN fuction. This works ok in our development machine (windows 2003) using the following run function:
    =RUN("map1",ECHOIN(1,SUBSTITUTE(CPACKAGE ( In1,"ASCII" ), "DSDDfh:", ""))+ " -OE1")

    In mainframe we have asked for the input files to have no encoding transformation. The input passes the validation in the main map, but when going to the run functions we receive an "8" error (One or more inputs was invalid) and in the trace of that map we get a validation error. The run function -slightly different than in windows- that we use is the:
    =RUN("map1.mvs",ECHOIN(1,SUBSTITUTE(CPACKAGE ( In1,"ASCII" ), "DSDDfh:", ""))+ " -OE1"+ " -TIOS=/u/MQSTRBK/trace")

    Any ideas?

    Thanks,
    George
    #IBMSterlingTransformationExtender
    #DataExchange
    #IBM-Websphere-Transformation-Extender


  • 2.  Re: RUN fuction in z/OS

    Posted Wed August 05, 2009 05:49 AM

    Originally posted by: Kepa_Screen


    Could you attach the .mtr file ?
    There you can see what data is not valid when you pass data with echoin function.

    Also you could try using FILEIN instead of using ECHOIN. Its suggested to use the first one when data passed is a large amount.
    #DataExchange
    #IBM-Websphere-Transformation-Extender
    #IBMSterlingTransformationExtender


  • 3.  Re: RUN fuction in z/OS

    Posted Wed August 05, 2009 06:40 AM

    Originally posted by: gkoukou


    Thanks for the quick response.
    This is the mtr file. I will test with FILEIN asap and let you know if there is any change.

    00000000 .(Level 1: Offset 0, len 0, comp
    00000032 1 of 2, #1, DI 00000001:).Exter
    00000064 nal Parser returned Error:.TYPE
    00000096 X'0005' (Error (-1), "XMLParser:
    00000128 Input XML data is invalid.".SAX
    00000160 ParseException, Fatal error Ýlin
    00000192 e: 1 column: 1¨ An exception occ
    00000224 urred] Type:UTFDataFormatExcepti
    00000256 on, Message:invalid byte . (p) o
    00000288 f a .-byte sequence.)...External
    00000320 Parser returned Error.. End o
    00000352 f Validation messages for INPUT
    00000384 CARD 1.... End of Execution me
    00000416 ssages..
    #IBM-Websphere-Transformation-Extender
    #DataExchange
    #IBMSterlingTransformationExtender


  • 4.  Re: RUN fuction in z/OS

    Posted Thu August 06, 2009 02:54 AM

    Originally posted by: gkoukou


    I tried also with HANDLEIN (I believe that is what you meant), but with no luck (similar error). My test data is about 10K anyway.
    #IBM-Websphere-Transformation-Extender
    #IBMSterlingTransformationExtender
    #DataExchange


  • 5.  Re: RUN fuction in z/OS

    Posted Thu August 06, 2009 04:21 AM

    Originally posted by: Kepa_Screen


    Sure, handlein, sorry for the mistake, i said this from memory.

    Are you really sure that map1.mvs and map1.mmc ( windows one ) are based on the same .mms file ? Recompile map1 for Z/OS, then upload again to Z/OS. If you are really sure of this, then i'd put backup of input card 1 "on" for map1.mms, so there, you can see what really map one is getting from run function.
    Also add -AEDU to the run command, just after -TIOS.

    
    =RUN(
    "map1.mvs",ECHOIN(1,SUBSTITUTE(CPACKAGE ( In1,
    "ASCII" ), 
    "DSDDfh:", 
    ""))+ 
    " -OE1"+ 
    " -TIOS=/u/MQSTRBK/trace -AEDU=/u/MQSTRBK/audit")
    


    so you can see the log for the executed map.

    As you can see at the .mtr
    
    (Level 1: Offset 0, len 0, comp 1 of 2, #1, DI 00000001:). External Parser returned Error:. TYPE X
    '0005' (Error (-1), 
    "XMLParser: Input XML data is invalid.". SAXParseException, Fatal error Ýline: 1 column: 1 [ An exception occurred ] Type:UTFDataFormatException, Message:invalid 
    
    byte . (p) of a .-
    
    byte sequence.)... External Parser returned Error.. End of Validation messages 
    
    for INPUT CARD 1.... End of Execution messages..
    


    it raises the error just at the beggining, you need to see what is reading map1.
    #DataExchange
    #IBM-Websphere-Transformation-Extender
    #IBMSterlingTransformationExtender


  • 6.  Re: RUN fuction in z/OS

    Posted Fri August 07, 2009 08:12 AM

    Originally posted by: gkoukou


    Thanks for your answer.

    I tried what you advised and received the messages that I include in the end of this reply. Also from the backup of the input card it seems that it is truncated in the beginning and in the end (or some bytes are changed). Since I will be on vacations in a few hours, sorry if I do not reply soon to any answer following this message. I will do as soon as I get back. Thanks again for your help.

    <?xml version="1.0" encoding="UTF-8"?>
    <XMLRunLog version="1.0">
    <Card Name="pacs003">
    <InputName Size="0" BaseOffset="0">%lt;data;%gt;</InputName>
    <StatusMessage>XMLParser: Input XML data is invalid.</StatusMessage>
    <DetailedStatusMessage>.Error (-1), "XMLParser: Input XML data is invalid.".SAXParseException, Fatal error line: 1 column: 1 An exception occurred! Type:UTFDataFormatException, Message:invalid byte ‘ (p) of a ‘-byte sequence...</DetailedStatusMessage>
    <ReturnCode>-1</ReturnCode>
    </Card>
    </XMLRunLog>



    <MapAudit StartTime="12:28:43 August 7, 2009">
    ..
    <Platform>RUN Function for IBM(TM)z/OS - Version 8.2(58)</Platform>
    ..
    <Burst count="1">
    ..
    <DataLog></DataLog>
    ..
    </Burst>
    ..
    <ExecutionSummary MapStatus="Error" mapreturn="8" ElapsedSec="0.086" BurstRestartCount="0">
    .
    <Message>One or more inputs was invalid</Message>
    .
    <CommandLine>'/var/mqsi/MQSTBRK/components/MQSTBRK/6b6adb9f-2101-0000-0080-99c629a89a27/config/MAR/RECEIVE_FROM_MAINFRAME/WTX Map/XDO/map1.mvs' -IE1S2122 %lt;data;%gt; -OE1 %lt;data;%gt; -TIOS=/u/MQSTBRK/trace -AEDU=/u/MQSTBRK/trace</CommandLine>
    ..
    <SourceReport card="1" adapter="Echo" bytes="2122" adapterreturn="0">
    .
    <Message>Data retrieved successfully</Message>
    .
    <TimeStamp>12:28:43 August 7, 2009</TimeStamp>
    .
    </SourceReport>
    ..
    <WorkArea type="File">
    .
    <inputarea card="1" Path="/var/mqsi/MQSTBRK/components/MQSTBRK/6b6adb9f-2101-0000-0080-99c629a89a27/config/MAR/RECEIVE_FROM_MAINFRAME/WTX Map/XDO/map1.I01" TimeStamp="12:28:43 August 7, 2009" bytes="131072"/>
    .
    </WorkArea>
    ..
    </ExecutionSummary>
    ..
    </MapAudit>
    .
    #IBMSterlingTransformationExtender
    #IBM-Websphere-Transformation-Extender
    #DataExchange


  • 7.  Re: RUN fuction in z/OS

    Posted Wed December 07, 2011 10:22 AM

    Originally posted by: JyotiMah


    Hi, I am using
    IBM Websphere Transformation Extender Design Studio
    Version: 8.2.0.3
    Build id: 58

    I create a type tree by importing a xsd with no encoding specified in the xsd. The type tree generated has a schema encoding set to UTF-8. I was wondering how I can get rid of the default encoding and specify one of my choosing in the type tree like "ISO-8859-1". Any help will be appreciated.
    Regards
    #IBM-Websphere-Transformation-Extender
    #IBMSterlingTransformationExtender
    #DataExchange


  • 8.  Re: RUN fuction in z/OS

    Posted Wed April 26, 2017 05:01 PM

    Originally posted by: Tesseract2


    Use the encoding as "IBM-037" in XML file . This should work in Mainframe.

    <?xmlversion="1.0" encoding="IBM-037" standalone="yes"?>


    #IBM-Websphere-Transformation-Extender
    #IBMSterlingTransformationExtender
    #DataExchange


  • 9.  Re: RUN fuction in z/OS

    Posted Wed April 26, 2017 05:02 PM

    Originally posted by: Tesseract2


    Use the encoding as "IBM-037" in XML file . This should work in Mainframe.

    <?xmlversion="1.0" encoding="IBM-037" standalone="yes"?>


    #IBM-Websphere-Transformation-Extender
    #DataExchange
    #IBMSterlingTransformationExtender


  • 10.  Re: RUN fuction in z/OS

    Posted Thu April 27, 2017 04:59 AM

    Originally posted by: PaulBrettIBM


    You know this issue was originally posted in 2009, right?

    Thank you.

    Paul

    Follow me on Twitter


    #IBMSterlingTransformationExtender
    #DataExchange
    #IBM-Websphere-Transformation-Extender


  • 11.  Re: RUN fuction in z/OS

    Posted Thu April 27, 2017 04:57 AM

    Originally posted by: PaulBrettIBM


    A RUN() function will transform the data to NATIVE while passing data to and from the child map.

    Using CTEXT() with NATIVE is the correct way to do this.  As you're using CTEXT() with ASCII, it works on Windows, but it will fail on z/OS because NATIVE is EBCDIC, so a conversion will take place.

    Change your CTEXT() with ASCII to NATIVE, and it should work as expected.

    Thank you.

    Paul

    Follow me on Twitter


    #IBMSterlingTransformationExtender
    #DataExchange
    #IBM-Websphere-Transformation-Extender