Re: [jpos-users] IPM file : EBCDIC encoded

136 views
Skip to first unread message

Alejandro Revilla

unread,
May 22, 2023, 12:19:01 PM5/22/23
to jpos-...@googlegroups.com
ISOFieldPackager classes need to be of BINARY class. I suggest you replace IFE_LLLCHAR and use IFE_LLLBINARY instead.



On Thu, May 18, 2023 at 5:19 PM Abhinav Kumar <crusky...@gmail.com> wrote:
Hi folks, 

I have been working on developing a package creator for generating an IPM clearing file that includes individual messages/transactions. One of the fields in this file is DE48, with a maximum length of 999 characters. DE48 contains various PDS (including cavV and transaction ID) fields. I have successfully created a packaged message with the PDS inside DE48, and everything functions properly as long as the length of DE48 does not exceed 170 positions (approximately 85 bytes). Strangely, no errors are thrown during the packaging process. However, when I attempt to parse it using the IPM tool, an error occurs stating "DE 2: Invalid number." If I reduce the length by removing some fields, the parsing works correctly.

I am unsure where the issue lies, but I have included a snapshot of my packager configuration and the TLV code. I would greatly appreciate any assistance you can provide.


PACKAGER : 

<isofieldpackager
            id="48"
            name="Additional Data"
            length="999"
            class="org.jpos.iso.IFE_LLLCHAR"
            token="0000"
            emitBitmap="false"
            packager="org.jpos.tlv.packager.TaggedSequencePackager">
        <isofield
                id="1"
                length="99"
                token="####"
                name="Default Tag Packager"
                class="org.jpos.tlv.packager.IFTA_LLLCHAR"/>
        <isofield
                id="2"
                length="3"
                token="0023"
                name="Currecy code and exponents"
                class="org.jpos.tlv.packager.IFTA_LLLCHAR"/>
        <isofield
                id="3"
                length="7"
                token="0026"
                name="File reversal indicator"
                class="org.jpos.tlv.packager.IFTA_LLLCHAR"/>
        <isofield
                id="4"
                length="25"
                token="0105"
                name="File ID"
                class="org.jpos.tlv.packager.IFTA_LLLNUM"/>
        <isofield
                id="5"
                length="25"
                token="0110"
                name="Transmission ID"
                class="org.jpos.tlv.packager.IFTA_LLLNUM"/>
        <isofield
                id="6"
                length="1"
                token="0122"
                name="Processing Mode"
                class="org.jpos.tlv.packager.IFTA_LLLCHAR"/>
        <isofield
                id="7"
                length="60"
                token="0148"
                name="Currecy code and exponents"
                class="org.jpos.tlv.packager.IFTA_LLLCHAR"/>
        <isofield
                id="8"
                length="30"
                token="0165"
                name="Currecy code and exponents"
                class="org.jpos.tlv.packager.IFTA_LLLCHAR"/>
        <isofield
                id="9"
                token="0184"
                name="Trn Ind"
                length="199"
                class="org.jpos.tlv.packager.IFTA_LLLCHAR"/>
        <isofield
                id="10"
                token="0185"
                name="Recurring Trn Ind"
                length="199"
                class="org.jpos.tlv.packager.IFTA_LLLCHAR"/>
        <isofield
                id="11"
                token="0186"
                name="Recurring Trn Ind"
                length="1"
                class="org.jpos.tlv.packager.IFTA_LLLCHAR"/>
        <isofield
                id="12"
                length="1"
                token="0191"
                name="Orignating message format"
                class="org.jpos.tlv.packager.IFTA_LLLCHAR"/>
        <isofield
                id="13"
                length="16"
                token="0301"
                name="File Amount, Checksum"
                class="org.jpos.tlv.packager.IFTA_LLLNUM"/>
        <isofield
                id="14"
                length="8"
                token="0306"
                name="File Message Counts"
                class="org.jpos.tlv.packager.IFTA_LLLNUM"/>
    </isofieldpackager>


Sample code for tlv : 

ISOMsg field48 = new ISOMsg(48);
tagValueSequence.add(new LiteralTagValue("0023", "CT6"));
tagValueSequence.add(new LiteralTagValue("0148", "7040"));
tagValueSequence.add(new LiteralTagValue("0165", "M"));
tagValueSequence.add(new LiteralTagValue("0158", ISOUtil.padleft(this.transactionIrd,12,' ')));
// tagValueSequence.add(new LiteralTagValue("0184", cbsTxnId));
tagValueSequence.add(new LiteralTagValue("0185", "kL"));
tagValueSequence.writeTo(field48);
isoMsg.set(field48);

--
--
jPOS is licensed under AGPL - free for community usage for your open-source project. Licenses are also available for commercial usage. Please support jPOS, contact: sa...@jpos.org
---
You received this message because you are subscribed to the Google Groups "jPOS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jpos-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jpos-users/9745bdfe-1170-469b-b31a-bb776faca8den%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages