2

我们正在使用 BizTalk 生成有效的 SWIFT 消息(最初是 MT 103)并将其放到端点上。但是,我们正在努力生成有效的消息。

(类似但不同的问题,在这个 StackOverflow 帖子上。我把这些问题分解了,因为它们在本质上是不同的。)

给定一个填充的 A4SWIFT MT103 模式(命名空间:)http://schemas.microsoft.com/BizTalk/Solutions/FinancialServices/SWIFT/Categroy1/MT103,我们将其通过管道上的 SWIFT 汇编器传递,从中我们得到一条“扁平”的 SWIFT MT 103 消息。

我们收到如下所示的 SWIFT 消息(显然是错误的):

{1:F01ABCDEFGXAXXX0000000000}{2:I103ABCDEFGHXXXXN}{3:{108:143136}
:20:ABCDEF123456
:23B:CRED
:32A:170607USD500,1
:33B:USD500,1
:50F:/0000000000
Bible Baggins
1 Bag End
Hobbiton
ME1
:53A:/00000000
ABCDEFGXXXX
:57A:ABCDEF
:59F:/00000000000000
CashYourJewelleryFast.com
:71A:OUR
-}

请注意,Block 3 没有正确终止Block 4 没有正确启动

我错过了这些字符:}{4:

Dijkgraaf 要求提供原始 XML。这如下所示(尽可能匿名以匹配示例):

<ns1:SWIFT_CATEGORY1_MT103_Interchange 
    xmlns:ns1="http://schemas.microsoft.com/BizTalk/Solutions/FinancialServices/SWIFT/Category1/MT103" 
    xmlns:ns0="http://schemas.microsoft.com/BizTalk/Solutions/FinancialServices/SWIFT/BaseTypes" 
    xmlns:ns2="http://schemas.microsoft.com/BizTalk/Solutions/FinancialServices/SWIFT/DataTypes">
    <SWIFTHeader>
        <BasicHeaderBlock>
            <ApplicationIdentifier>F</ApplicationIdentifier>
            <ServiceIdentifier>01</ServiceIdentifier>
            <LTAddress>ABCDEFGXAXXX</LTAddress>
            <SessionNumber>0000</SessionNumber>
            <SequenceNumber>000000</SequenceNumber>
        </BasicHeaderBlock>
        <ApplicationHeaderBlock_Input>
            <MessageType>103</MessageType>
            <DestinationAddress>ABCDEFGHXXXX</DestinationAddress>
            <MessagePriority>N</MessagePriority>
        </ApplicationHeaderBlock_Input>
        <UserHeaderBlock>
            <MessageUserReference_108>
                <Reference>143136</Reference>
            </MessageUserReference_108>
        </UserHeaderBlock>
    </SWIFTHeader>
    <SWIFT_CATEGORY1_MT103>
        <SendersReference_20>
            <Reference>ABCDEF123456</Reference>
        </SendersReference_20>
        <BankOperationCode_23B>
            <Type>CRED</Type>
        </BankOperationCode_23B>
        <ValueDateCurrencyInterbankSettledAmount_32A>
            <Date>170607</Date>
            <Currency>USD</Currency>
            <Amount>500,1</Amount>
        </ValueDateCurrencyInterbankSettledAmount_32A>
        <CurrencyInstructedAmount_33B>
            <Currency>USD</Currency>
            <Amount>500,1</Amount>
        </CurrencyInstructedAmount_33B>
        <OrderingCustomer_50F>
            <OrderingCustomerIdentification_1>
                <Account>0000000000</Account>
            </OrderingCustomerIdentification_1>
            <NameAndAddress>
                <Line1>
                    <nameAndAddressLineType_1>Bilbo Baggins</nameAndAddressLineType_1>
                </Line1>
                <Line2>
                    <nameAndAddressLineType_1>1 Bag End</nameAndAddressLineType_1>
                </Line2>
                <Line3>
                    <nameAndAddressLineType_1>Hobbiton</nameAndAddressLineType_1>
                </Line3>
                <Line4>
                    <nameAndAddressLineType_1>ME1</nameAndAddressLineType_1>
                </Line4>
            </NameAndAddress>
        </OrderingCustomer_50F>
        <SendersCorrespondent_53A>
            <PartyIdentifier>
                <Identifier>00000000</Identifier>
            </PartyIdentifier>
            <BankIdentifierCode>
                <BankCode>ABCD</BankCode>
                <CountryCode>EF</CountryCode>
                <AreaCode>GH</AreaCode>
                <BranchCode>XXX</BranchCode>
            </BankIdentifierCode>
        </SendersCorrespondent_53A>
        <AccountWithInstitution_57A>
            <BankIdentifierCode>
                <BankCode>ABCD</BankCode>
                <CountryCode>EF</CountryCode>
                <AreaCode>EF</AreaCode>
                <BranchCode>XXX</BranchCode>
            </BankIdentifierCode>
        </AccountWithInstitution_57A>
        <BeneficiaryCustomer_59F>
            <Account>
                <Account>00000000000000</Account>
                <NameAndAddress>
                    <Line1>
                        <nameAndAddressLineType_1>CashYourJewelleryFast.com</nameAndAddressLineType_1>
                    </Line1>
                </NameAndAddress>
            </Account>
        </BeneficiaryCustomer_59F>
        <DetailsOfCharges_71A>
            <Code>OUR</Code>
        </DetailsOfCharges_71A>
    </SWIFT_CATEGORY1_MT103>
</ns1:SWIFT_CATEGORY1_MT103_Interchange>

我已经使用其他系统中生成的已知有效 MT 103 消息检查了生成的 MT 103 消息,并且我相信这些详细信息存在并且格式正确。

我怀疑 BizTalk/A4SWIFT 在出现问题并生成一半创建的消息时有点合适。

有什么我想念的吗?我在哪里可以找到与此相关的实际错误,而不仅仅是计数?我可以<UnparsedMessages />根据提升的属性生成并路由错误,但它们不包含任何有用的信息。

4

0 回答 0