PEXA Serviceについて

チュートリアル

テストツール

定義ファイル

基本プロセス

拡張プロセス

Condition

セッション

モデル

リファレンス

環境設定

目次
  1. ServiceSession編集書式について
  2. 基本書式
  3. nullエラーハンドラ値付
  4. 条件によるエラーハンドラ値付
  5. 値にUpdatableを設定する場合
  6. 値にUpdatableコレクションを設定する場合
  7. 条件付でUpdatableを設定する場合
  8. モデルを設定する場合
  9. モデルのコレクションを設定する場合
  10. Iteratorパラメータにより、Updatableまたはモデルのコレクションの設定
  11. Iteratorパラメータへの継続条件の追加
  12. Iteratorパラメータへの処理対象条件の追加


ServiceSession編集書式について

ServiceSessionの内容を変更する際に利用する編集書式です。
具体的には下記の箇所で記述する際に利用する。

基本書式

書式:

    ServiceSessoinキー名    ServiceSessionキー値
左辺で指定したキーに右辺で指定した値を設定する。
右辺の値には文字列やServiceSessionの他のキーなどが指定できる(詳細は後述の記述例参照)
ServiceSessionキー値がnullの場合(明示的なnullの設定を除く)はServiceSessionキーへの値の設定は行われない。


nullエラーハンドラ値付

書式:

    ServiceSessoinキー名    ServiceSessionキー値|エラーハンドラ値
右辺の"|"の左側(ServiceSessoinキー値)がnullの場合に"|"の右側(エラーハンドラ値)を設定する。
エラーハンドラ値がnullの場合ServiceSessionキーへの値の設定は行われない(明示的なnullの指定を除く)。

エラーハンドラの右側にさらにnullエラーハンドラ部を追加することもできる。
書式:
    ServiceSessionキー名    ServiceSessionキー値|エラーハンドラ値1|エラーハンドラ値2
ServiceSessionキーの値がnullかつ、エラーハンドラ値1の値がnullの場合はエラーハンドラ値2の値が設定される。


条件によるエラーハンドラ値付

書式:

    ServiceSessionキー名    [ServiceSession条件式]条件が真の場合の値|条件が偽の場合の値
先頭の[]内のServiceSession条件式を評価して、真の場合は"|"の左側の値が、偽の場合は"|"の右側の値が設定される。
値がnullの場合はServiceSessionキーへの値の設定は行われない(明示的なnullの設定を除く)

"|"の右側に条件を追加することで、if~elseif~else相当の処理も記述可能。
書式:
    ServiceSessionキー名    [ServiceSession条件式1]真の値1|[ServiceSession条件式2]真の値2|偽の値


値にUpdatableを設定する場合

マップ形式で指定する。

(ServiceSessionキー名
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
)
無名のUpdatableが生成されて、ServiceSessionキー名の値に設定される。
現象型名を一つも設定しない場合はからのUpdataleが生成される。
現象型名に対する現象型値に設定は、ServiceSession編集書式に準拠する。
ただし、現象型値の指定の際にすべて
    $現象型名:現象値
として設定される。つまり、"$現象型名"指定を省略することができる。
現象型名を指定した値については後述のServceSession値書式を参照。

現象型名に対応する値がUpdatableの場合は下記のように入れ子の()で設定する。
(ServiceSessionキー名
    (現象型名1
        現象型名1_1     現象型値1_1
        ...
    )
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
)


値にUpdatableコレクションを設定する場合

マップのリスト形式で指定する。

[ServiceSessionキー名
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
    ,
    ...
    ,
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
]


条件付でUpdatableを設定する場合

ServiceSession名の後の[]内にServiceSession条件式を記述する。 SerciceSession条件式が偽の場合は、値の設定は行われない 記述例:

(ServiceSessionキー名[ServiceSession条件]
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
)
または、
[ServiceSessionキー名[ServiceSession条件]
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
    ,
    ...
    ,
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
]
例外ハンドラ値を設定する場合は[]の後に"|"に続けて例外ハンドラ値を指定する。
(ServiceSessionキー名[ServiceSession条件]|例外ハンドラ値
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
)
現実的には、
  • Directiveによる明示的なnull指定
  • 外部Helperの呼び出し
以外の例外ハンドラ値の指定はない。


モデルを設定する場合

ServiceSessionキー名の後ろに":"に続けてモデル名を指定する。

下記の例ではモデル名で指定されたモデルが"生成"されて、指定した現象型名に対して現象型名1,2,..,nに値が 設定されたモデルがServiceSessionキー名の値として設定される。

(ServiceSessoinキー名:モデル名
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
)
下記の例ではモデル名でしてされた空のモデルが生成されて、ServiceSessionキー名の値として設定される。
(ServiceSessoinキー名:モデル名
)


モデルのコレクションを設定する場合

[ServiceSessionキー名:モデル名
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
    ,
    ...
    ,
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
]
条件が付く場合は、モデル名の後ろに"[ServiceSession条件式]"または、"[ServiceSession条件式]|エラーハンドル値"を続けて記述する。 条件が真の倍のみモデルの生成と値の設定が行われる。
(ServiceSessoinキー名:モデル名[ServiceSession条件式]
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
)

(ServiceSessoinキー名:モデル名[ServiceSession条件式]|エラーハンドラ値
    現象型名1  現象型値1
    現象型名2  現象型値2
    ...
    現象型名n  現象型値n
)


Iteratorパラメータにより、Updatableまたはモデルのコレクションの設定

ServiceSession上のUpdatable(モデル)のコレクション(ないしは配列)をパラメータにUpdatable(モデル)のコレクションをServieSessionキーに設定する。

Iterator操作対象SessionKey名に設定されているUpdatableのコレクション(配列)数だけ、Updatable(モデル)が生成され、そのコレクションがServiceSessionキーの値に設定される。

現象型値を指定する際に、ServiceSessionキー名"iterator_item"を参照することで、Iterator要素にアクセスすることができる。

Iterator操作対象Sessionkeyに値が設定されていなかった場合、生成したモデル数が0の場合(コレクションの要素数が0だった)、値の設定は行われない。 ただし、ServiceSession条件式なしのエラーハンドル値が指定されていた場合は、その値が設定される。

(ServiceSessionキー名@Iterator操作対象SessionKey
    現象型名1  現象型値1
    ...
    現象型名n  現象型値n
)
モデル名を指定する場合
(ServiceSessionキー名:モデル名@Iterator操作対象SessionKey
    現象型名1  現象型値1
    ...
    現象型名n  現象型値n
)
ServiceSession条件を指定する場合
(ServiceSessionキー名:モデル名[ServiceSession条件式]@Iterator操作対象SessionKey
    現象型名1  現象型値1
    ...
    現象型名n  現象型値n
)


Iteratorパラメータへの継続条件の追加

Iterator操作対象SessionKeyの値がUpdatableのコレクションまたは配列以外の場合はシステム例外が発生する。

繰り返し処理に対して、継続条件(forの条件部相当)をServiceSession条件式で記述することができる。
ServiceSession条件式では、ServiceSessoinキー名"iterator_item"でアクセすることでIterator要素に対する条件を記述することができる

(ServiceSessionキー名@Iterator操作対象SessionKey[継続条件ServiceSession条件式]
    現象型名1  現象型値1
    ...
    現象型名n  現象型値n
)

例:
    @iterator_item/申請額 <= 100
コレクション要素の申請額が100以下の場合処理が継続される。

継続条件が偽になった場合、その時点でループ処理が終了して、それまでに生成されたUpdatableのコレクションがServiceSessionキー値に設定される。


Iteratorパラメータへの処理対象条件の追加

Iterator要素が特定の条件を満たしたい場合のみUpdatableの生成を行いたい場合、継続条件に続けて"[適用条件ServiceSession条件式]"を 記述することで、適用条件が真の場合のみUpdatableの生成を行うことができる。

(ServiceSessionキー名@Iterator操作対象SessionKey[継続条件ServiceSession条件式][適用条件ServiceSession条件式]
    現象型名1  現象型値1
    ...
    現象型名n  現象型値n
)
継続条件を指定しないで、適用条件を記述する場合は、継続条件を空で記述する。
(ServiceSessionキー名@Iterator操作対象SessionKey[][適用条件ServiceSession条件式]
    現象型名1  現象型値1
    ...
    現象型名n  現象型値n
)
ServiceSessoinキー名"iterator_item"でアクセすることで適用条件ServiceSession条件式内で、Iterator要素に対する条件を記述することができる。



更新情報

  • 最終更新者 : $Author: morishita $
  • 最終更新日時 : $Date:: 2007-05-28 18:51:03 #$
  • バージョン : $Revision: 845 $



Copyright © 2006, Atrris Corporation