Editions!@CUR.owner_label = @participant_label
業務プロセス管理機能とアクセス制御
概要
業務プロセス管理機能における各種処理における元帳へのデータ書き込み(データ反映)では、提出パッケージ定義で指定されているフォームリストに含まれるフォームで書き込み可能な元帳セル範囲のデータ[1] のみが書き込み対象となります。
その際の書き込み可否の判定には、基本的には、元帳アクセスコントロール機能及びフォームにて設定する入力制限が適用されますが、例外として、これらが適用されない場合及び特殊な方法で適用される場合があります。具体的には下表の通りです。
(○:適用 -:非適用)
アクセス制限機能 | 元帳アクセスコントロール機能 | フォームによる入力制限 | |||
---|---|---|---|---|---|
業務プロセス管理機能における各種処理 |
セルの保護[2] |
||||
○ |
○[3] |
○ or - [4] |
○ |
○ |
|
○ |
○[3] |
○ or - [4] |
○ |
○ |
|
3. 共有作業版のデータ取込[5]での既存データ反映処理 |
○ |
○[3] |
○ |
○ |
○ |
業務プロセスにて使用される元帳版とアクセス制御
ワークスペースに関する説明で述べたように、業務プロセスに参加する業務責任単位ごとに元帳版が生成されます(「業務プロセスの元帳版」をご参照下さい)。これらの元帳版に対するアクセスを制御するために、アクセス許可タイプにおける領域定義式には、元帳版に関する条件を含めて記述することができます。ここでは、業務プロセス機能を使用する場合の典型的なアクセス制御ニーズを対象に、領域定義式の記述方法を解説します。
自業務責任単位の版をアクセス可能とする
元帳版オブジェクトの owner_label プロパティと、関数 @participant_label を用います。
式の要素 | 意味 |
---|---|
Editions!@CUR |
現在アクセスしている元帳版 |
Editions!@CUR.owner_label |
上記元帳版の所有者である業務責任単位のラベル |
= |
左辺と右辺の値が等しいことを検査する |
@participant_label |
データの読み取り/書き込みを行っている業務責任単位自身のラベル。 |
自業務責任単位が提出あるいは承認した提出パッケージをアクセス可能とする
元帳版オブジェクトの is_submission プロパティを用います。
Editions!@CUR.is_submission
式の要素 | 意味 |
---|---|
Editions!@CUR |
現在アクセスしている元帳版 |
Editions!@CUR.is_submission |
上記元帳版が提出パッケージを表すものであるとき、True を、以外の時、False を返す |
なお、提出パッケージの元帳版に関しては、自業務責任単位が提出し又は受付けた、あるいは受付可能なパッケージでない場合、アクセス要求自体がエラーとなるので、上記条件式では単に元帳版が提出パッケージであるかどうかだけをチェックしています。
公開版をアクセス可能とする
元帳版オブジェクトの key プロパティを用います。
Editions!@CUR.key = "PUBLIC"
式の要素 | 意味 |
---|---|
Editions!@CUR |
現在アクセスしている元帳版 |
Editions!@CUR.key |
上記元帳版の元帳版キー |
= |
左辺と右辺の値が等しいことを検査する |
"PUBLIC" |
定数「PUBIC」 |
プロパティ「key」は省略可能なので、上記条件式は以下のように記述することもできます:
Editions!@CUR = "PUBLIC"
典型的なケースでの条件記述
典型的なケースでは、元帳版に対するアクセス条件は、上記3つのいずれかを満たす場合のみアクセス可能とする、というものです。この場合、条件式は以下のようになります:
Editions!@CUR.owner_label = @participant_label OR
Editions!@CUR.is_submission OR
Editions!@CUR = "PUBLIC"
なお、公開データ確定担当業務責任単位に対しては、通常、上記に加えて共通作業版等へのアクセス権限を与える必要があります(公開データ確定担当業務責任単位にもプライベートな元帳版を割り当てず、共通作業版をそのワークスペースとして使用している場合など)。この場合、上記条件式は以下のように修正されます:
Editions!@CUR.owner_label = @participant_label OR
Editions!@CUR.is_submission OR
Editions!@CUR = "PUBLIC" OR
Editions!@CUR = "WORKSPACE" ....
もちろん、上記の条件式は他の条件式と組み合わせて使用することができます。