Cosminexus ビジネスプロセス管理/エンタープライズサービスバス V8 サービスプラットフォーム 開発ガイド

[目次][用語][索引][前へ][次へ]

7.5.14 条件によって異なる値を出力する

ある条件を設定して,その条件に合致する場合または合致しない場合で,異なる値を出力します。

<この項の構成>
(1) 使用するファンクション
(2) 設定手順

(1) 使用するファンクション

ある条件を設定して,その条件に合致する場合または合致しない場合で,異なる値を出力させるには,選択ファンクションを使用します。選択ファンクションを使用した例を次に示します。

図7-15 選択ファンクションの使用例

[図データ]

(2) 設定手順

ある条件を設定して,その条件に合致する場合または合致しない場合で,異なる値を出力させる手順を次に示します。

  1. パレットから選択ファンクション(choose)を選択して,マッピングビューアに配置します。
  2. マッピング線を設定します。
    パレットのツールではなく,[選択]ダイアログでマッピング元を設定してマッピング線を設定する場合は,手順.7〜手順.11を実施します。
  3. 次のどちらかの方法で[選択]ダイアログを表示させます。
    • 選択ファンクションを右クリックして,[設定]を選択します。
    • 選択ファンクションをダブルクリックします。
    [選択]ダイアログが表示されます。
    手順2.でマッピング線を設定した場合は,[条件と出力値]の[出力値]にマッピング元が設定されています。
    [選択]ダイアログの詳細については,マニュアル「Cosminexus サービスプラットフォーム リファレンス」の「1.6.29 選択ダイアログ」を参照してください。
  4. 次のどちらかの方法で[条件追加/編集]ダイアログを表示させます。
    • [条件と出力値]の[出力値]にマッピング元が設定されている場合
      [条件と出力値]の[出力値]に設定されているマッピング元を選択して,[編集]ボタンをクリックします。
    • [条件と出力値]の[出力値]にマッピング元が設定されていない場合
      [追加]ボタンをクリックします。
    [条件追加/編集]ダイアログの詳細については,マニュアル「Cosminexus サービスプラットフォーム リファレンス」の「1.6.30 条件追加/編集ダイアログ」を参照してください。
  5. [条件設定]ボタンをクリックします。
    [条件設定]ダイアログが表示されます。
  6. 条件を設定します。
    [条件設定]ダイアログでの条件設定の方法については,マニュアル「Cosminexus サービスプラットフォーム リファレンス」の「1.6.10 条件設定ダイアログ(ノード条件の設定)」を参照してください。
  7. [条件がtrueの場合]欄で次のように指定します。
    • 変換先ノードを出力させる場合
      [ノードを出力する]チェックボックスにチェックします。
    • 変換先ノードを出力させない場合
      [ノードを出力しない]チェックボックスにチェックします。
    なお,[条件と出力値]の[出力値]ですでにマッピング元が設定されている場合,[値]にマッピング元が表示されます。マッピング元を変更しないときは,手順.10に進んでください。
  8. 手順7.で[ノードを出力する]チェックボックスにチェックした場合,[出力値]欄で次のように指定します。
    • 変換先ノードに値を出力させる場合
      [値を出力する]チェックボックスにチェックします。
    • 変換先ノードに値を出力させない場合
      [空ノード]チェックボックスにチェックします。
  9. 手順8.で[値を出力する]チェックボックスにチェックした場合,[値]を次のように指定します。
    • 変換元ノードの値を出力させる場合
      [ノード選択]ボタンをクリックすると,[ノード選択]ダイアログが表示されます。[ノード選択]ダイアログで,値を出力させたい変換元ノードを選択します。
    • ファンクションの値を出力させる場合
      [ファンクション選択]ボタンをクリックすると,[ファンクション選択]ダイアログが表示されます。[ファンクション選択]ダイアログで,値を出力させたいファンクションを選択します。
  10. [値]に変換元ノードが指定されている場合,その変換元ノードに条件を設定して,その条件を満たす場合だけマッピングさせたいとき,[ノード条件設定]ボタンをクリックします。
    [ノード条件設定]ダイアログが表示されます。
    ノード条件の設定方法については,「7.7 ノード条件を設定する」を参照してください。また,[ノード条件設定]ダイアログについては,マニュアル「Cosminexus サービスプラットフォーム リファレンス」の「1.6.9 ノード条件設定ダイアログ」を参照してください。
  11. [OK]ボタンをクリックします。
    [条件追加/編集]ダイアログが閉じます。
  12. 条件を追加または編集する場合,手順4.〜手順.11をくり返します。
    [条件と出力値]に複数の条件およびマッピング元を指定した場合,いちばん上に表示された条件から順に,条件を判定します。
  13. どの条件にも合致しない場合のマッピング元を,[選択]ダイアログの[どの条件にも合致しない場合]欄で設定します。
    設定方法は,[条件追加/編集]ダイアログの[条件がtrueの場合]欄と同じです。
  14. [OK]ボタンをクリックします。
    [選択]ダイアログで設定した条件中に,マッピング元以外の変換元ノードまたはファンクションを指定した場合,その条件中の変換元ノードまたはファンクションと選択ファンクションの間にはマッピング線[図データ](条件線)が設定されます。
    注意
    • 複合内容の変換先ノードにマッピングする場合,[値を出力する]を選択して[値]を指定しないでください。また,複合内容以外の変換先ノードにマッピングする場合,[値を出力する]を選択したときは,必ず[値]を指定してください。
    • すべての子要素の最小出現回数が1回以上に設定されているchoice要素にマッピングする場合,[空ノード]を指定しないでください。
    • 最小出現回数が1回以上に設定されている子要素を持つ要素(choice要素以外)にマッピングする場合,[空ノード]を指定しないでください。
    • 最小出現回数が1回以上に設定されているノードにマッピングする場合,[ノードを出力しない]を指定しないでください。
    • 出力値にくり返しファンクションを一つでも設定した場合,ほかの出力値もすべてくり返しファンクションを設定してください。また,出力値にくり返しファンクション以外を設定した場合,ほかの出力値もすべてくり返しファンクション以外を設定してください。