1.ロジック概要
FineReportポータルにおける権限受け手「部署」はツリー構造とすることができ、親部署と子部署が存在します。以下、権限受け手ツリーと呼びます。
FineReportポータルにおける権限実体「目次」はツリー構造とすることができ,親目次と子目次が存在します。以下、権限実体ツリーと呼びます。
親部署/子部署には、親目次/子目次の権限が異なる時間順で付与され、最終的な有効結果はそれぞれ異なります。
注:本文の権限設定とは、表示、編集などのディメンションを有効/無効にする権限を指します。
1)ツリー構造に対して,子ノードの権限を設定してから親ノードの権限を設定します。親ノードに設定された権限ディメンションの下で、親ノードの権限は対応するディメンションの子ノードの権限を上書きします。
2)ツリー構造に対して、親ノードに権限を設定してから子ノードに異なる権限を設定します。親子ノードの権限はそれぞれ発効し、互いに影響しません。
注1:役職と子部署は同じように、親部署に設定された権限によって上書きされます。
注2:権限ショートカット設定も同じです。
2.親が子を上書き
ロジック:ツリー構造の場合、まず子ノードの権限を設定して、次に親ノードの権限を設定します。親ノードに設定された権限ディメンションの下で、親ノードの権限は対応するディメンションの子ノードの権限を上書きします。
2.1 権限受け手ツリー
ロジック:同じ権限実体(同じ目次)に対して、まず子部署に権限を設定し、次に親部署に権限を設定します。親部署に設定された権限ディメンションの下で、親部署の権限は対応するディメンションの子ノードの権限を上書きします。
シーン:
まず、子部署に目次権限を付与、ディメンションを「プレビュー」にします。

親部署に目次権限を付与、ディメンションを「プレビュー、編集」にします。

結果:
親部署に設定された権限ディメンションの下で、親部署の権限は対応するディメンションの子ノードの権限を上書きします。
親部署に設定された権限のディメンションは「プレビュー、編集」、対応するディメンションを上書きする子部署の権限は「プレビュー、編集」です。

2.2 権限実体ツリー
ロジック:権限実体がツリー構造(目次ツリーなど)である場合、同じ権限受け手(役割など)に子ノードの権限を設定してから、親ノードの権限を設定します。親ノードに設定された権限ディメンションの下で、親ノードの権限は対応するディメンションの子ノードの権限を上書きします。
シーン:
まず、役割 X に子目次1の権限を付与、ディメンションを「プレビュー、編集」にします。

さらに役割 X に親目次の権限を付与、ディメンションを「プレビュー」とします。

結果:
親目次に設定された権限ディメンションの下で、親目次の権限は、「プレビュー」ディメンションなど、対応するディメンションの子目次の権限を上書きします。
親目次に権限ディメンションが設定されていない場合、親目次の「編集」ディメンションなど、子目次の対応するディメンションの権限を上書きできません。
親目次および子目次の「プレビュー」ディメンションは上書きされ,「編集」ディメンションは上書きされず,子目次1の最終権限は「プレビュー、編集」となる.

2.3 並列権限ツリー
ロジック:権限受け手ツリー(親子部署)と権限実体ツリー(親子目次)に対して、まず子部署に子目次の権限を設定し、次に親部署に親目次の権限を設定します。親部署が親目次に対して設定した権限ディメンションの下で、親部署の親目次に対する権限は、対応するディメンションの下の子部署の子目次に対する権限を上書きします。
シーン:
まず、子部署に子目次の権限を設定し、ディメンションを「プレビュー、編集」にします。

また、親部署に親目次の権限を設定し、ディメンションを「プレビュー」にします。

結果:
親部署が親目次に対して設定した権限ディメンションの下で、親部署の親目次に対する権限は、親目次の「プレビュー」ディメンションなど、対応するディメンションの下の子部署の子目次に対する権限を上書きします。
親部署が親目次に対して権限ディメンションを構成していない場合、親目次の「編集」ディメンションなど、子目次の対応するディメンションの権限を上書きできません。
親目次および子目次の「プレビュー」ディメンションは上書きされ、「編集」ディメンションは上書きされず、子目次1の最終権限は「プレビュー、編集」となります。

2.4 クロス権限ツリー
ロジック:権限受け手ツリー(親子部署)と権限実体ツリー(親子目次)に対して、まず子部署に親子目次権限を設定し、次に親部署に親目次権限を設定します。親部署が親目次に対して設定した権限のディメンションでは、親部署の親目次に対する権限は、対応するディメンションの子部署の親目次に対する権限を上書きします。
シーン:
まず、子部署に親目次の権限を設定し、ディメンションを「プレビュー」とし、子部署に子目次1の権限を設定し、ディメンションを「プレビュー、編集」にします。

また、親部署に親目次の権限を設定し、ディメンションを「プレビュー、編集」にします。

結果:
親部署が親目次に対して設定した権限ディメンションの下で、親部署の親目次に対する権限は、親目次の「プレビュー、編集」ディメンションなど、対応するディメンションの下の子部署の親目次に対する権限を上書きします。
子部署の親目次に対する「プレビュー、編集」ディメンションが上書きされ、子部署の親目次とすべての子目次の最終権限が「プレビュー、編集」になります。

3. 子は親に影響を与えない
ロジック:ツリー構造に対して、まず親ノードに権限を設定し、それから子ノードに異なる権限を設定し、親と子の権限はそれぞれ発効し、互いに影響しません。
3.1 権限受け手ツリー
ロジック:同じ権限実体(同じデータ接続)に対して、まず親部署に権限を設定し、次に子部署に権限を設定し、親子部署の権限は互いに影響せず、それぞれ自分の権限を有効にします。
シーン:
まず、親部署に目次の権限を付与、ディメンションを「プレビュー、編集」にします。

また、子部署に目次の権限を付与、ディメンションを「プレビュー」にします。

結果:
親目次に対する「プレビュー、編集」権限は変更されず、子目次に対する「編集」権限は変更されません。
3.2 権限実体ツリー
ロジック:権限実体がツリー構造(例えば目次ツリー)である場合、任意の権限受け手に親ノードの権限を設定してから、子ノードの権限を設定し、親ノードの権限はすべて正常に保留され、互いに影響せずに有効になります。
シーン:
まず、役割Xに親目次の権限を付与、ディメンションを「プレビュー」にします。

さらに役割Xに子目次1の権限を付与、ディメンションを「プレビュー、編集」にします。

結果:
役割Xの親目次に対する「プレビュー」権限は変更されず、役割Xの子目次1に対する「プレビュー、編集」権限は変更されません。
3.3 並列権限ツリー
ロジック:権限受け手ツリー(親子部署)と権限実体(親子目次)に対して、親部署に親目次の権限を設定し、子部署に子目次の権限を設定します。
親部署が親目次に対して設定した権限のディメンションでは、親部署の親目次に対する権限は対応するディメンションの子部署の親子目次に対する権限を上書きしますが、その後に設定された子目次は子部署の設定を保持します。
シーン:
まず、親部署に親目次の権限を設定し、ディメンションを「プレビュー」にします。

子部署には、子目次1の「プレビュー」権限を無効にし、子テンプレート2の「編集」権限を有効にします。

結果:
親目次に対する親部署の「プレビュー」権限は変更されません。
親部署が親目次に対して設定した権限ディメンションの下で、親目次の権限は、「プレビュー」などの対応するディメンションの子目次の権限を上書きします。そのため、親部署は子目次に対して「プレビュー」権限を持っています。

子目次1と子目次2は子部署自身の権限設定を保持し、子部署は子目次1に対して権限がなく、子目次2に対して「プレビュー、編集」権限があります。
親部署が親目次に対して設定した権限のディメンションの下で、親部署の親目次に対する権限は対応するディメンションの下の子部署の親目次に対する権限を上書きし、子部署は親目次と他の子目次に対して「プレビュー」権限を持っています。

3.4 クロス権限ツリー
ロジック:権限受け手ツリー(親子部署)と権限実体ツリー(親子目次)に対して、子部署に親目次権限を設定し、親部署に子目次権限を設定します。
権限設定の時間順によって、子部署の子目次に対して、先に子部署の親目次に対する権限によって上書きされ、それから親部署の子目次に対する権限によって上書きされます。
シーン:
まず、子部署に親目次の権限を設定し、ディメンションを「プレビュー」にします。

また、親部署に子目次1の権限を設定し、ディメンションを「プレビュー、編集」にします。

結果:
子部署の子目次については、まず子部署の親目次に対する権限で上書きします。この時点で、子部署は子目次に対して「プレビュー」権限を持っています。
また、親部署の子目次に対する権限によって上書きされ、子部署は子目次1に対して「プレビュー、編集」権限を持っています。
