TECH BLOG

MENU

オンプレクラウド

Dr.Sum

Dr.Sum

Dr.Sumにはユーザーやグループに環境変数をセットすることができます。この環境変数をビューなどの抽出条件にセットすることで、ログインするIDによって抽出されるデータを制御することが可能になります。

今回は基本的な環境変数の使い方と、検索条件に入れるときの注意点について紹介をします。

 

環境変数をつかって抽出するデータを制御する

 

上の図は環境変数をつかってログインするユーザーのグループごとに抽出するデータを制御する方法です。

手順は簡単で、

  1. [ユーザー]タブでグループを選択し、[プロパティ]を選択する
  2. ビューの抽出条件に「IN (GET_GROUP_INFO(ENV1))」を設定し、環境変数を反映させます。

という設定をすればOKです。

 

環境変数の活用で気をつけておきたいこと

Dr.Sumでは管理者(Administrator/Administratorsグループへの所属など)はすべての権限を持っていますが管理者がすべてのデータを参照する場合には検索条件に管理者を含める必要があります。

しかし上記の設定をすると、管理者はすべてのデータを表示することができなくなってしまいます。その場合の回避方法を確認しておきましょう。

 

設定方法と設定例

Administratorsグループに所属したユーザーがGET_GROUP_INFOを使用すると、グループ全体のプロパティ値の集合を条件に設定します。そのため、すべてのデータを参照の対象としたい場合は、条件が不足して意図した動作にならない場合があります。

すべてのデータを参照の対象としたい場合は、以下の条件を追加すると、Administratorsグループに所属したユーザーはすべてのデータを表示します。

 

管理者(Administratorsグループに所属)の場合すべてを表示する例

SELECT * FROM 受注ビュー WHERE 地域 IN(GET_GROUP_INFO(ENV1)) OR 'Administrators' IN (GET_GROUP_INFO(ID))

Administratorの場合すべてを表示する例

SELECT * FROM 受注ビュー WHERE 地域 IN(GET_GROUP_INFO(ENV1)) OR GET_USER_INFO(ID) = 'Administrator'

どちらの式もOR条件を使用して、グループやユーザーが管理者であればデータをすべて表示するようにしています。

 

ただしOR文を使用するとパフォーマンスが低下してしまう可能性がありますので、バランスを見て使用してみてください。

 

もうすこし複雑な条件設定をする場合はこちらを参照ください。LIKE関数や正規表現を使用してSQLを書いています。

 

環境変数を活用することで運用をより楽にすることもできますので、ぜひ活用してみてください。

 

 

 

この記事にリアクションしてみませんか?

  • 分かりやすい (1)
  • 問題が解決した (0)
あなたのお役に立ててうれしいです!
プロフィールへ

Toru Sasahara

Dr.Sumのソースコード1行目から開発に携わり、四半世紀にわたってDr.Sumと共に歩んできました。 2022年からはDr.Sumの開発責任者とプロダクトエンゲージメント担当を兼務し、ユーザーが愛着を持ち、長く使い続けられる製品の開発に情熱を注いでいます。

Related article

Related article関連記事

Pick up

Pick upおすすめ記事

特定の文字列で分割して階層構造をつくりたい!~DS Scriptで分割する~1

  • #データ加工
  • #DS Script

2023.07.17

Dr.Sum

DS Scriptで必要なテーブルだけ再構築(リビルド)をしよう

  • #DS Script

2023.07.06

Dr.Sum

「データポイント数が、しきい値をオーバーしました」というエラーの解決方法【データベースで処理をしよう】

  • #データ加工

2023.06.13

MotionBoard

Ranking

Rankingランキング

1

Excelのデータを加工したい。~変換(横持ち⇔縦持ち)について~

  • #データ取り込み
  • #データ加工

2021.01.19

Dr.Sum

2

【Excelの取り込み】データベースにExcelデータをインポートしよ…

  • #データ取り込み

2020.08.14

Dr.Sum

3

【実は動く】フリーのSQL実行ツールでDr.SumのSQLを書こう

  • #外部接続
  • #SQL

2023.11.13

Dr.Sum

Info

Information

ウイングアーク1stからのお知らせ