|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
problem in parsing dfdl fixe length file |
« View previous topic :: View next topic » |
Author |
Message
|
anilkumarvarma |
Posted: Sat Feb 18, 2017 4:23 am Post subject: problem in parsing dfdl fixe length file |
|
|
Newbie
Joined: 18 Feb 2017 Posts: 3
|
hello alll im facing problem in parsing dfdl fixe length file |
|
Back to top |
|
 |
anilkumarvarma |
Posted: Sat Feb 18, 2017 4:25 am Post subject: |
|
|
Newbie
Joined: 18 Feb 2017 Posts: 3
|
HELLO FORUM,
IM NEW TO IIB
my inout is
WS,1,W1A71795O7,M1M,DISIMANWEI,1178.38,CNY,201702150001323,1,129.62,SH20072168
and expected output is
101 RTMS CTRL CIBCHGINBCHG CONTROL DISIMANWEI INBCHG W1A71795O7 WS
KEY SH20072168 W1A71795O7
201 EXTRNLREF WMSREF 201702150001323
301 M1M +000000000000000001178380000000 CNY
302 CHGTYPE EXTRNLREF SALE
303 1 +000000000000000000129620000000
this is when the record with job number W1A71795O7 occurs once
if the same input has same job number like
WS,1,W1A71795O7,M1M,DISIMANWEI,1178.38,CNY,201702150001323,1,129.62,SH20072168
WS,1,W1A71795O7,M1M,DISIMANWEI,1178.38,CNY,201702150001323,1,129.62,SH20072168
then ouput should be
101 RTMS CTRL CIBCHGINBCHG CONTROL DISIMANWEI INBCHG W1A71795O7 WS
KEY SH20072168 W1A71795O7
201 EXTRNLREF WMSREF 201702150001323
301 M1M +000000000000000001178380000000 CNY
302 CHGTYPE EXTRNLREF SALE
303 1 +000000000000000000129620000000
201 EXTRNLREF WMSREF 201702150001323
301 M1M +000000000000000001178380000000 CNY
302 CHGTYPE EXTRNLREF SALE
303 1 +000000000000000000129620000000
keeping 101 AND KEY SAME RECORD NEED TO BE REPEATED
I HAVE CREATED DFDL TO PARSE BOTH THE CSV AND FIXED LENGTH FILE
CSV DFDL FILE
<?xml version="1.0" encoding="UTF-8"?><xsd:schema xmlns:csv="http://www.ibm.com/dfdl/CommaSeparatedFormat" xmlns:dfdl="http://www.ogf.org/dfdl/dfdl-1.0/" xmlns:ibmDfdlExtn="http://www.ibm.com/dfdl/extensions" xmlns:ibmSchExtn="http://www.ibm.com/schema/extensions" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:import namespace="http://www.ibm.com/dfdl/CommaSeparatedFormat" schemaLocation="IBMdefined/CommaSeparatedFormat.xsd"/>
<xsd:annotation>
<xsd:appinfo source="http://www.ogf.org/dfdl/">
<dfdl:format documentFinalTerminatorCanBeMissing="yes" encoding="{$dfdl:encoding}" escapeSchemeRef="csv:CSVEscapeScheme" ref="csv:CommaSeparatedFormat"/>
</xsd:appinfo>
</xsd:annotation>
<xsd:element ibmSchExtn:docRoot="true" name="AgyToRTMS_CSV">
<xsd:complexType>
<xsd:sequence dfdl:separator="">
<xsd:element dfdl:occursCountKind="implicit" dfdl:terminator="%CR;%LF;%WSP*;" maxOccurs="unbounded" name="AGY_TORTMS_INBOUND">
<xsd:complexType>
<xsd:sequence dfdl:separatorSuppressionPolicy="trailingEmpty">
<xsd:element ibmDfdlExtn:sampleValue="value1" name="Site_ID" type="xsd:string"/>
<xsd:element ibmDfdlExtn:sampleValue="value2" name="Type" type="xsd:string"/>
<xsd:element ibmDfdlExtn:sampleValue="value3" name="Job" type="xsd:string"/>
<xsd:element ibmDfdlExtn:sampleValue="value4" name="Charge_code" type="xsd:string"/>
<xsd:element ibmDfdlExtn:sampleValue="value5" name="Client_ID" type="xsd:string"/>
<xsd:element ibmDfdlExtn:sampleValue="value6" name="Total_amount" type="xsd:string"/>
<xsd:element ibmDfdlExtn:sampleValue="value7" name="Currency" type="xsd:string"/>
<xsd:element ibmDfdlExtn:sampleValue="value8" name="Transaction_ID" type="xsd:string"/>
<xsd:element ibmDfdlExtn:sampleValue="value9" name="VAT_Code" type="xsd:string"/>
<xsd:element ibmDfdlExtn:sampleValue="value10" name="VAT_Amount" type="xsd:string"/>
<xsd:element ibmDfdlExtn:sampleValue="value11" name="Consignment_ID" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
FIXED LENGTH DFDL
<?xml version="1.0" encoding="UTF-8"?><xsd:schema xmlns:dfdl="http://www.ogf.org/dfdl/dfdl-1.0/" xmlns:ibmDfdlExtn="http://www.ibm.com/dfdl/extensions" xmlns:ibmSchExtn="http://www.ibm.com/schema/extensions" xmlns:recSepFieldsFmt="http://www.ibm.com/dfdl/RecordSeparatedFieldFormat" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:import namespace="http://www.ibm.com/dfdl/RecordSeparatedFieldFormat" schemaLocation="IBMdefined/RecordSeparatedFieldFormat.xsd"/>
<xsd:annotation>
<xsd:appinfo source="http://www.ogf.org/dfdl/">
<dfdl:format byteOrder="{$dfdl:byteOrder}" encoding="{$dfdl:encoding}" escapeSchemeRef="recSepFieldsFmt:RecordEscapeScheme" occursCountKind="fixed" ref="recSepFieldsFmt:RecordSeparatedFieldsFormat"/>
</xsd:appinfo>
</xsd:annotation>
<xsd:element ibmSchExtn:docRoot="true" name="AGY_TO_RTMS_OUTBOUND">
<xsd:complexType>
<xsd:sequence dfdl:separator="%CR;%LF;">
<xsd:element dfdl:initiator="101" name="groupdetails">
<xsd:complexType>
<xsd:sequence dfdl:separator="">
<xsd:element dfdl:terminator="" name="Control_container">
<xsd:complexType>
<xsd:sequence dfdl:initiator="" dfdl:separator="" dfdl:terminator="">
<xsd:element default="000000000000000" dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPadCharacter="%SP;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D01TRAN" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="9" dfdl:lengthKind="explicit" ibmDfdlExtn:sampleValue="body_value3" name="D01TRDP" type="xsd:string"/>
<xsd:element default="" dfdl:length="6" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value4" name="D01APPI" nillable="true" type="xsd:string"/>
<xsd:element default="" dfdl:length="6" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value5" name="D01APPA" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" ibmDfdlExtn:sampleValue="body_value6" name="D01TRNT" type="xsd:string"/>
<xsd:element default="" dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value7" name="D01TRDR" nillable="true" type="xsd:string"/>
<xsd:element default="" dfdl:length="10" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value8" name="D01IDOC" nillable="true" type="xsd:string"/>
<xsd:element default="" dfdl:length="10" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value9" name="D01EAPP" nillable="true" type="xsd:string"/>
<xsd:element default="" dfdl:length="10" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value10" name="D01CLTB" nillable="true" type="xsd:string"/>
<xsd:element default="" dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value11" name="D01CLIE" nillable="true" type="xsd:string"/>
<xsd:element default="" dfdl:length="10" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value12" name="D01EDOC" nillable="true" type="xsd:string"/>
<xsd:element default="" dfdl:length="40" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value13" name="D01HAWB" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="40" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value14" name="D01MAWB" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="40" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value15" name="D01PORD" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="20" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value16" name="D01JOB" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" ibmDfdlExtn:sampleValue="body_value17" name="D01CATB" type="xsd:string"/>
<xsd:element dfdl:length="40" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value18" name="D01CARR" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value19" name="D01CNTB" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="25" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value20" name="D01CSCA" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value21" name="D01FNTB" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="40" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value22" name="D01FSCA" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value23" name="D01BUSM" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value24" name="D01HLTB" nillable="true" type="xsd:string"/>
<xsd:element default="" dfdl:length="20" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value25" name="D01HIER" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="40" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value26" name="D01ICSI" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="40" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value27" name="D01APSC" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="80" dfdl:lengthKind="explicit" ibmDfdlExtn:sampleValue="body_value28" name="D01DSLI" type="xsd:string"/>
<xsd:element dfdl:length="20" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value29" name="D01ICCN" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="20" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value30" name="D01GPCN" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="20" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value31" name="D01TRCN" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="1" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:useNilForDefault="no" ibmDfdlExtn:sampleValue="body_value32" name="D01TEST" nillable="true" type="xsd:string"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="no" name="D01PRNT" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:terminator="" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="no" name="D01FNKY" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:terminator="%CR;%LF;" name="field1" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Key">
<xsd:complexType>
<xsd:sequence dfdl:initiator="KEY" dfdl:separator="">
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="no" name="Transaction_number" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="60" dfdl:lengthKind="explicit" dfdl:terminator="%CR;%LF;" name="source_key" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="grouprecords">
<xsd:complexType>
<xsd:sequence dfdl:separator="">
<xsd:element name="Reference_number_201_D10">
<xsd:complexType>
<xsd:sequence dfdl:initiator="201" dfdl:separator="">
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D10TRAN" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D10RFKY" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D10FKSQ" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D10RTTB" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D10RFTP" type="xsd:string"/>
<xsd:element dfdl:length="60" dfdl:lengthKind="explicit" name="D10RFNO" type="xsd:string"/>
<xsd:element dfdl:length="80" dfdl:lengthKind="explicit" name="D10DESC" type="xsd:string"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D10FNKY" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:terminator="%CR;%LF;" name="field1" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Charges_301_D07">
<xsd:complexType>
<xsd:sequence dfdl:initiator="301" dfdl:separator="">
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D07TRAN" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D07CHKY" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D07FKSQ" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D07PYTB" type="xsd:string"/>
<xsd:element dfdl:length="5" dfdl:lengthKind="explicit" name="D07PAYT" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D07CHTB" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D07CHGC" type="xsd:string"/>
<xsd:element dfdl:length="1" dfdl:lengthKind="explicit" name="D07CHAS" type="xsd:string"/>
<xsd:element dfdl:length="30" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0.###" dfdl:useNilForDefault="yes" name="D07CHGA" nillable="true">
<xsd:simpleType>
<xsd:restriction base="xsd:decimal">
<xsd:totalDigits value="21"/>
<xsd:fractionDigits value="9"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D07CYTB" type="xsd:string"/>
<xsd:element dfdl:length="5" dfdl:lengthKind="explicit" name="D07CHCU" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D07PMTB" type="xsd:string"/>
<xsd:element dfdl:length="35" dfdl:lengthKind="explicit" name="D07PTRM" type="xsd:string"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D06FNKY" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:terminator="%CR;%LF;" name="field1" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Reference_number_302_D10">
<xsd:complexType>
<xsd:sequence dfdl:initiator="302" dfdl:separator="">
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D10TRAN" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D10RFKY" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D10FKSQ" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D10RTTB" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D10RFTP" type="xsd:string"/>
<xsd:element dfdl:length="60" dfdl:lengthKind="explicit" name="D10RFNO" type="xsd:string"/>
<xsd:element dfdl:length="80" dfdl:lengthKind="explicit" name="D10DESC" type="xsd:string"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D10FNKY" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:terminator="%CR;%LF;" name="field1" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Charges_303_D07">
<xsd:complexType>
<xsd:sequence dfdl:initiator="303" dfdl:separator="">
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D07TRAN" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D07CHKY" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D07FKSQ" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D07PYTB" type="xsd:string"/>
<xsd:element dfdl:length="5" dfdl:lengthKind="explicit" name="D07PAYT" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D07CHTB" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D07CHGC" type="xsd:string"/>
<xsd:element dfdl:length="1" dfdl:lengthKind="explicit" name="D07CHAS" type="xsd:string"/>
<xsd:element dfdl:length="30" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0.###" dfdl:useNilForDefault="yes" name="D07CHGA" nillable="false">
<xsd:simpleType>
<xsd:restriction base="xsd:decimal">
<xsd:totalDigits value="21"/>
<xsd:fractionDigits value="9"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D07CYTB" type="xsd:string"/>
<xsd:element dfdl:length="5" dfdl:lengthKind="explicit" name="D07CHCU" type="xsd:string"/>
<xsd:element dfdl:length="10" dfdl:lengthKind="explicit" name="D07PMTB" type="xsd:string"/>
<xsd:element dfdl:length="35" dfdl:lengthKind="explicit" name="D07PTRM" type="xsd:string"/>
<xsd:element dfdl:length="15" dfdl:lengthKind="explicit" dfdl:nilKind="literalValue" dfdl:nilValue="%ES;" dfdl:textNumberPattern="#0" dfdl:useNilForDefault="yes" name="D06FNKY" nillable="true" type="xsd:integer"/>
<xsd:element dfdl:terminator="" name="field1" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
ITS WORKING FINE WHEN THERE IS INPUT WITH SINGLEJOB NUMBER
BUT IF ANOTHER CSV WITH SAME JOB NUMBER COMERS ITS CREATING NEW RECORDS INSTEAD OF APPENDING TO EXISTING
LIKE
THIS IS WHAT IM GETTING
101 RTMS CTRL CIBCHGINBCHG CONTROL DISIMANWEI INBCHG W1A71795O7 WS
KEY SH20072168 W1A71795O7
201 EXTRNLREF WMSREF 201702150001323
301 M1M +000000000000000001178380000000 CNY
302 CHGTYPE EXTRNLREF SALE
303 1 +000000000000000000129620000000
101 RTMS CTRL CIBCHGINBCHG CONTROL DISIMANWEI INBCHG W1A71795O7 WS
KEY SH20072168 W1A71795O7
201 EXTRNLREF WMSREF 201702150001323
301 M1M +000000000000000001178380000000 CNY
302 CHGTYPE EXTRNLREF SALE
303 1 +000000000000000000129620000000
PLEASE HELP ME
I HAVE TRIED USING DESCRIMINATORS AND ASSESRTS BUT THEY ARE NOT WORKING PLESE HELP ME WITH DFDL
THANKS IN ADVANCE !!!!! |
|
Back to top |
|
 |
Vitor |
Posted: Tue Feb 21, 2017 5:25 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Is the error message you added here connected to the same data? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Feb 21, 2017 9:07 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
DFDL is actually very very straight forward.
It just has complicated names for things. "discriminator" instead of "separator", "indicator" instead of tag, and etc.
So sit down and write out a picture of your data, like "root -> group->indicator->field1" and etc, where you have a list of "<properties>->field-><properties>" that help you sort out how to build a model of your data in DFDL.
Or if you have a schema of some kind - wsdl, xsd, cobol copybook, etc - then just import that and use it for input or output. _________________ chmod -R ugo-wx / |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|