フォームのセクションへの [編集者] のアクセス権を制限する

ワークフローアプリケーションでは、セクションを使用して、文書のある部分の編集または署名を行うユーザーを制限できます。複数の承認の署名が必要な文書を作成する場合は、署名または部門ごとに、1 つのセクションをフォーム上に作成します。例えば、「仕入れ」部門に専用のセクションを作成できます。

編集のアクセスリストとアクセス制御リスト

セクションの一部を編集できるユーザーを指定するには、制限するフィールドを選択し、そのフィールドを含んだセクションを作成します。次に、次のいずれかの方法で、そのフィールドを編集できるユーザーを指定します。

そのセクションの編集者としてリストされていないユーザーに対しては、そのフィールドが読み込み専用として表示されます。セクションの編集者リストは、アクセス権を取り上げるだけで、アクセス権を与えることはできません。ここにユーザーをリストしても、そのユーザーが文書を編集するためのアクセス権を持っていなければ、セクションの内容を編集できるようにはなりません。 リストされていないユーザーは、データベースのアクセス制御リスト (ACL) でのアクセスレベルにかかわらず、そのセクションを編集できません。編集のアクセスリストでは、[管理者] などの権限名は使用できません。

文書へのアクセス制御の詳細については、「フォームにアクセス制御されたセクションを作成する」と「[読者] フィールドを使用して特定の文書へのアクセスを制限する」を参照してください。

ヒント: カスタムロールを使用して標準アクセスレベルをさらに細かく設定する場合は、各アクセスロールに対応したセクションを作成することを検討してください。次に、セクションの先頭に RoleName という名前のフィールドを作成します。

計算結果フィールドを使用してセクションの編集者を定義する

セクションの編集者のリストを定義するには、許可された編集者のリストを生成する式を作成します。この式を作成するには、現在のユーザーの名前の記入、[@DbColumn] による名前のリストの取得、承認者フィールドの値の使用、または ACL からのグループの名前や役割の取得を行います。作成時に計算されるフィールドを使用して、文書の作成時に編集者のリストを作成します。

ここでは、1 つ以上の名前を含むテキストリストが返される式だけを使用することができます。次に、この名前を、セクションの編集のアクセスリストに追加できます。名前を引用符で囲み、コロン (:) で区切って連結します。

"Mary Sen":"Marketing Group"

アクセスロール名はカッコで囲み、さらに引用符で囲む必要があります。

"[Scheduling Committee]"

データベースの検索の使用方法については、「@DbColumn」を参照してください。

作成者がセクション編集者を指名できるようにする

文書の作成者がセクション内のフィールドを編集できるユーザーを特定できるようにするには、セクションを編集可能にします。

作成者にとって便利なように、セクションの編集者の初期リストを作成するためのデフォルト式を記述します。これにより、セクションを編集するすべてのユーザーがこのリストを更新できるようにします。作成者が複数の場合は、フィールドに対して必ず [複数値も可] を選択してください。

編集可能セクションでは、文書が編集モードのときにセクションのタイトルをダブルクリックするか、[セクション] - [編集者の定義] を選択することにより、各文書の作成者が編集者のカスタムリストを作成できます。セクション内のフィールドを編集する権限を持つすべてのユーザーが表示されます。作成者は、このリストに他の編集者を追加できます。

複数のフォーム上でアクセス制御されたセクションを使用する

アクセス制御されたセクションを複数のフォーム上で使用するには、1 つのサブフォーム上にセクションを配置し、このサブフォームをフォームに配置します。