コンテンツにスキップ

siteSettings

概要

サーバスクリプトで「サイト設定」の読み取り、変更を行うためのオブジェクトです。

制限事項

  1. 「サイト設定の読み取り時」の条件のみ使用できます。

プロパティ

No プロパティ名 変更 説明
1 DefaultViewId ○ 既定のビューのID
2 Sections ○ Sectionオブジェクトの配列

メソッド

No Name Description
1 SiteId サイトのタイトルをキーに「サイトID」を取得

使用例①

以下の例では、ビューのIDが1のものを既定のビューとして設定します。

JavaScript
siteSettings.DefaultViewId = 1;

使用例②

以下の例では、セクションの情報を取得してセクションのIDとラベルテキストをログに出力します。

JavaScript
let sections = siteSettings.Sections;
for (let section of sections) {
    context.Log(`${section.Id} ${section.LabelText}`);
}

使用例③

以下の例では、サイト名が 部署マスタ のサイトIDを取得してログに出力します。

JavaScript
let siteId = siteSettings.SiteId('部署マスタ');
context.Log(siteId);

サンプルコード

Note

コード内の【 ... 】は適宜修正してください。

1. 見る人の所属組織によって、テーブルを開いたときのビューを変える

案件管理のテーブルを開いたときに最初に表示するビューを、見る人の所属組織によって変えます。「サイト設定の読み込み時」に、context.DeptIdを「組織ID→ビューID」の対応表で引き、siteSettings.DefaultViewIdを書き換えます。対応表に無い組織の人には、テーブルに設定した既定のビューが表示されます。

実務での使いどころ

1つのテーブルを複数の部署で使うと、部署ごとに見たい切り口が違います。テーブルの既定のビューは1つで、組織ごとやユーザーごとには変えられません。このサンプルを使うと、たとえば営業部は「自分の担当」、管理部は「未完了のみ」で開くようにでき、毎回ビューを選び直す手間を減らせます。利用者が画面でビューを切り替えた場合は、ログインしている間はその選択が優先されます。

事前準備

1:「案件管理」テーブルで、部署ごとに開きたいビューを作成し、「テーブルの管理 > ビュー」でビューIDを確かめてください(例:1「全件」、2「未完了のみ」、3「自分の担当」)。既定のビューには、対応表に無い組織の人に表示するビュー(例:「全件」)を設定します。

2:スクリプトを登録します。

2-1:「テーブルの管理 > サーバスクリプト」タブで「新規作成」を選択する。
 2-2:タイトル: 任意の名前(例:defaultViewByDept)
 2-3:スクリプト: 下記サンプルコードを貼り付け、対応表の組織IDとビューIDを書き替える
 2-4:条件: 「サイト設定の読み込み時」にチェック

JavaScript
// 組織ID → 最初に開くビューのID(ビューIDは「テーブルの管理 > ビュー」で確かめる)
const DEFAULT_VIEW_BY_DEPT = {
    【営業部の組織ID】: 【「自分の担当」のビューID】,
    【管理部の組織ID】: 【「未完了のみ」のビューID】,
};

// 見る人の所属組織に応じて、テーブルを開いたときのビューを変える。
// 対応表に無い組織の人は、テーブルに設定した既定のビューのまま
const viewId = DEFAULT_VIEW_BY_DEPT[context.DeptId];
if (viewId !== undefined) {
    siteSettings.DefaultViewId = viewId;
}

注記

  • 変わるのは、テーブルを開いたときに最初に表示するビューのみです。利用者が画面でビューを切り替えると、ログインしている間はその選択が優先されます。
  • 対応表のビューIDは、存在するビューのIDを書いてください。
  • グループやユーザーごとに変える場合は、context.DeptIdの代わりにcontext.UserIdなどで対応表を引きます。

関連情報