For Each

メニュー For Each
単一選択の使用可能性 以下を選択した場合に使用可能になります。
  1. ColumnStatement に含まれていない MapFromStatement
  2. SelectStatement
  3. 以下の BlockOpenStatement:
    • AbstractTargetMapStatement
    • ForEachStatement
    • DeclarationStatement
    • CallOperationStatement
AbstractTargetMapStatement には以下が含まれます。
  • MsgTargetMapStatement
  • InsertStatement
  • UpdateStatement
  • DeleteStatement
  • CallOperationStatement
単一選択時の動作 ForEachStatement が以下のものの親として挿入されます。
  1. 選択された MapFromStatement (設定解除された式を持つ) を包含している MapStructureStatement
  2. select 式を持つ SelectStatement のすべての子
  3. 設定解除された式を持つ、選択されたブロック・オープン・ステートメント
 
複数選択の使用可能性 すべての選択内容が隣接する兄弟である場合に使用可能になります。  
複数選択時の動作 1 つの ForEachStatement が、すべての選択済み項目の共通の親になります。  
アクションの前のステートメント (太字を選択)
PurchaseOrder
  Comment+MapFrom
  Items+MapFrom
アクションの後のステートメント (太字部分が挿入される)
PurchaseOrder
  Comment+MapFrom
  ForEach
    Items+MapFrom

アクションの前のステートメント (太字を選択)
Items
  ProductNumber+MapFrom
  Price+MapFrom
  Quantity+MapFrom
アクションの後のステートメント (太字部分が挿入される)
Items
  ForEach
    ProductNumber+MapFrom
    Price+MapFrom
    Quantity+MapFrom

アクションの前のステートメント (太字を選択)
Items
  ProductName+MapFrom
  ProductNumber+MapFrom
  Price+MapFrom
  Quantity+MapFrom
アクションの後のステートメント (太字部分が挿入される)
Items
  ProductName+MapFrom
  ForEach
    ProductNumber+MapFrom
    Price+MapFrom
  Quantity+MapFrom

この ForEach はおそらく無意味ですが、挿入は可能です。

アクションの前のステートメント (太字を選択)
MapOp
  Target_1
    Headers
    PurchaseOrder+MapFrom
アクションの後のステートメント (太字部分が挿入される)
MapOp
  Target_1
    Headers
    ForEach
      PurchaseOrder+MapFrom

PurchaseOrder は普通のエレメントです。

アクションの前のステートメント (太字を選択)
MapOp
  Insert_1 - Db1.Sch2.Tbl3
    Column_1 + MapFrom(exp_1)
    Column_2 + MapFrom(exp_2)
アクションの後のステートメント (太字部分が挿入される) MapFrom が ColumnStatement に包含されているため、アクションは使用不可

アクションの前のステートメント (太字を選択)
MapOp
  Target_1
    Headers
    PurchaseOrder
アクションの後のステートメント (太字部分が挿入される)
MapOp
  ForEach
    Target_1
      Headers
      PurchaseOrder

これは、複数のメッセージ・アセンブリーを作成するための方法です。

アクションの前のステートメント (太字を選択)
MapOp
  Target_1
    Headers
    PurchaseOrder
  Target_2
    Headers
    Inventory
アクションの後のステートメント (太字部分が挿入される)
MapOp
  ForEach
    Target_1
      Headers
      PurchaseOrder
    Target_2
      Headers
      Inventory

同じ ForEach 内に 2 つのアセンブリーが含まれます。

アクションの前のステートメント (太字を選択)
MapOp
  Insert_1
    ColumnStatement
アクションの後のステートメント (太字部分が挿入される)
MapOp
  ForEach
    Insert_1
      ColumnStatement

アクションの前のステートメント (太字を選択)
MapOp
  Insert_1
    ColumnStatement
  Call_1 (db1)
  Update_1 (where_clause)
    ColumnStatement
アクションの後のステートメント (太字部分が挿入される)
MapOp
  ForEach
    Insert_1
      ColumnStatement
    Call_1 (db1)
    Update_1 (where_clause)
      ColumnStatement

アクションの前のステートメント (太字を選択)
PurchaseOrder
  Qualify
    Default
      ShipTo + MapFrom (exp_1)
アクションの後のステートメント (太字部分が挿入される)
PurchaseOrder
  ForEach
    Qualify
      Default
        ShipTo + MapFrom (exp_1)

アクションの前のステートメント (太字を選択)
PurchaseOrder
  Qualify
    Default
      ShipTo + MapFrom (exp_1)
  Qualify
    Condition (cond_exp)
      BillTo + MapFrom (exp_2)
    Default
      BillTo+MapFrom (exp_3)
アクションの後のステートメント (太字部分が挿入される)
PurchaseOrder
  ForEach
    Qualify
      Default
        ShipTo + MapFrom (exp_1)
    Qualify
      Condition (cond_exp)
        BillTo + MapFrom (exp_2)
      Default
        BillTo+MapFrom (exp_3)

アクションの前のステートメント (太字を選択)
PurchaseOrder
  ForEach
    Items
アクションの後のステートメント (太字部分が挿入される)
PurchaseOrder
  ForEach
    ForEach
      Items

アクションの前のステートメント (太字を選択)
MapOp
  Target_1
    select_1 (where_clause)
      PurchaseOrder + MapFrom(exp)
アクションの後のステートメント (太字部分が挿入される)
MapOp
  Target_1
    select_1 (where_clause)
      ForEach select_1
        PurchaseOrder + MapFrom(exp)

アクションの前のステートメント (太字を選択)
MapOperation
  CallOperationStatement
アクションの後のステートメント (太字部分が挿入される)
MapOperation
  ForEach
    CallOperationStatement

アクションの前のステートメント (太字を選択)
PurchaseOrder
  Qualify
    Default
      ShipTo + MapFrom (exp_1)
  Qualify
    Condition (cond_exp)
      BillTo+MapFrom (exp_2)
アクションの後のステートメント (太字部分が挿入される) 選択した部分は兄弟ではありません (2 つの分岐は兄弟ではあるものの)。 アクションは使用不可になります。

アクションの前のステートメント (太字を選択)
PurchaseOrder
  Qualify
    Condition (cond_exp_1)
      ShipTo + MapFrom (exp_1)
  Qualify
    Condition (cond_exp_2)
      BillTo + MapFrom (exp_2)
  Qualify
    Condition (cond_exp_3)
      Comment+MapFrom (exp_3)
アクションの後のステートメント (太字部分が挿入される) 隣接していない兄弟が選択されています。アクションは使用不可になります。

アクションの前のステートメント (太字を選択)
MapOp
  Target_1
  Qualify
    Condition (cond_exp)
      Target_2 - Headers_Inventory
  ForEach (exp)
    Target_3 - Headers_Library
アクションの後のステートメント (太字部分が挿入される)
MapOp
  ForEach
    Target_1
    Qualify
      Condition (cond_exp)
        Target_2 - Headers_Inventory
    ForEach (exp)
      Target_3 - Headers_Library

隣接する兄弟が同じ種類のステートメントでない場合がありますが、これは許可されています。

アクションの前のステートメント (太字を選択)
ShipTo
  country (attribute in ShipTo)
  first_name (element in sequence in ShipTo)
  last_name (element in sequence in ShipTo)
  street_name (element in sequence in ShipTo)
アクションの後のステートメント (太字部分が挿入される) country は、first_name、last_name、street_name の兄弟に見えますが、実際にはそうでないため、アクションは使用不可になります。
関連タスク
メッセージ・マッピングの開発
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2005 Last updated: 11/07/2005
ar25236_4_