2009-08-02 16 views
2

注文の詳細を含むスキーマがあります。スキーマ内では、オーダー内の各アイテムの詳細を含む広告申込情報のコレクションがあります。スキーマは次の構造に似ています。BizTalkマッピング、要素のネストされたコレクション、必要なヘルプ

Order 
    SaleItems 
     SaleItem 
      OrderID 1234 
      Price 99 
      Quantity 3 

Order 
    SaleItems 
     SaleItem 
      OrderID 
      Price 
      Quantity 
      etc. 

私は別のラインアイテムが作成されるべきであり、価格は、例えばので、ラインアイテム間で分割されていることが、SaleItem内の数量が1以上であれば要件を有します以下が出力に作成されて生じるはずである:

Order 
    SaleItems 
     SaleItem 
      OrderID 1234 
      Price 33 
      Quantity 1 
     SaleItem 
      OrderID 1234 
      Price 33 
      Quantity 1 
     SaleItem 
      OrderID 1234 
      Price 33 
      Quantity 1 

は、任意のあなたののBizTalk教祖のアドバイス1は、これを実現するための最良の方法だろうか?いくつかのfunctiodを持つマップでそれを行うのが最善であるかどうか、IF If> Quantity> 1ロジックを実行するためにマップに入れるもの、またはオーケストレーションでいくつかのカスタムでそれを行うのが最善かどうかはわかりません。たぶん私はここで非常にシンプルなものを見逃しているかもしれませんが、どんな助けも感謝して受け取ります。

リチャード

答えて

2

カスタムXSLTように、その変換を書き、その後のBizTalkの変換を行うためにそれを使用して取得することができます。

0

このマップが利用されるシナリオについては言及していませんでした。オーケストレーションでこの変換が必要な場合は、最も簡単で簡単な解決策は.NETヘルパクラスをシリアル化されたメッセージで利用することです。そのようにすれば、qty> 1 ...ロジックのタイプの場合に言及したことができます。マップでもこれを実現できると確信しています。BizTalkマッパーやカスタムXSLT開発でいくつかの問題が発生するでしょう。あなたのポートで地図を利用する予定がある場合は、後のルートを選択する必要があります。

HTH

関連する問題