-2

同じ itemid に基づいて数量をグループ化する必要があります。ヘッダーはそのまま表示されるはずです。

この XSLT は BizTalk 2010 で使用されます。

これらの XML と XSLT を BizTalk 2010 で使用しているため、XSLT バージョン 2.0 はサポートされていません

非常に多くの例を見てきましたが、うまくいかなかったり、間違いを犯したりしています。

ここに私の入力があります

    <Invoice>
        <LineHeader>
            <ContractorID>1</ContractorID>
            <ContractorName>XXX</ContractorName>
            <InvoiceDate>1999-05-31</InvoiceDate>
            <GSTCode>AUS</GSTCode>
        </LineHeader>
        <LineItems>
            <LineItem>
                <ItemID>1</ItemID>
                <Qty>10</Qty>
            </LineItem>

            <LineItem>
                <ItemID>2</ItemID>
                <Qty>20</Qty>
            </LineItem>

            <LineItem>
                <ItemID>1</ItemID>
                <Qty>-3</Qty>
            </LineItem>


        </LineItems>
    </Invoice>

私の出力は

    <Invoice>
        <LineHeader>
            <ContractorID>1</ContractorID>
            <ContractorName>XXX</ContractorName>
            <InvoiceDate>1999-05-31</InvoiceDate>
            <GSTCode>AUS</GSTCode>
        </LineHeader>
        <LineItems>
            <LineItem>
                <ItemID>1</ItemID>
                <Qty>7</Qty>
            </LineItem>

            <LineItem>
                <ItemID>2</ItemID>
                <Qty>20</Qty>
            </LineItem>
        </LineItems>
    </Invoice>

入力には 3 つの項目がありますが、出力には 2 つしかありません。ItemID 1 はグループ化され、qty は 10 として計算されます

4

1 に答える 1

-1

ここで私が取った入力

http://www.sharexml.com/x/get?k=qbbVk8enuoNF

そして、これがそのトリックを行う XSLT です。

http://www.sharexml.com/x/get?k=F9zGd5aTG2t7

于 2013-03-23T10:33:26.320 に答える