開発者向け機能:拡張機能:拡張サーバスクリプト
## 概要
システム全体で使用可能な「[サーバスクリプト](/manual/table-management-server-script)」を定義します。
## 制限事項
1. 拡張スクリプトのJSONファイルやスクリプトファイルを更新した後は「アプリケーションを再起動」するまで反映しません。
## 拡張スクリプトの設定方法
.¥Pleasanter¥App_Data¥Parameters¥ExtendedServerScripts¥ 配下に以下の内容を含むjsonファイルを作成し、「アプリケーションを再起動」してください。ファイルの拡張子は必ずjsonにしてください。ExtendedServerScripts配下はフォルダで階層化する事が可能です。この場合、配下の全てのjsonファイルが設定ファイルとして読み込まれます。
|パラメータ名|値の例|説明|
|:--|:--|:--|
|Name|例)Sample|APIから実行させる際の名前を設定します。|
|Description|例)"このスクリプトは・・・を実行します"|スクリプトの説明。動作には影響しません。|
|Disabled|例)false|trueの場合は無効化され動作しません。|
|DeptIdList|例)[1,2,3]|対象となる組織IDを配列形式で指定します。指定しない場合には省略可能です。|
|GroupIdList|例)[1,2,3]|対象となるグループIDを配列形式で指定します。指定しない場合には省略可能です。|
|UserIdList|例)[1,2,3]|対象となるユーザIDを配列形式で指定します。指定しない場合には省略可能です。|
|SiteIdList|例)[1,2,3]|対象となるサイトのサイトIDを配列形式で指定します。指定しない場合には省略可能です。|
|IdList|例)[1,2,3]|対象となるレコードのIDを配列形式で指定します。指定しない場合には省略可能です。|
|WhenloadingSiteSettings|例)false|trueの場合、サイト設定読み込み時に実行します。|
|WhenViewProcessing|例)false|trueの場合、ビュー処理時に実行します。|
|WhenloadingRecord|例)false|trueの場合、レコード読み込み時に実行します。|
|BeforeFormula|例)false|trueの場合、計算式の前に実行します。|
|AfterFormula|例)false|trueの場合、計算式の後に実行します。|
|BeforeCreate|例)false|trueの場合、作成前に実行します。|
|AfterCreate|例)false|trueの場合、作成後に実行します。|
|BeforeUpdate|例)false|trueの場合、更新前に実行します。|
|AfterUpdate|例)false|trueの場合、更新後に実行します。|
|BeforeDelete|例)false|trueの場合、削除前に実行します。|
|AfterDelete|例)false|trueの場合、削除後に実行します。|
|BeforeOpeningPage|例)false|trueの場合、に実行します。|
|BeforeOpeningRow|例)false|trueの場合、に実行します。|
|Body|例)"context.Log('test');"|実行するスクリプトを記述します。|
## スクリプトを外部ファイルから読み込む
jsonファイルと同じディレクトリに、jsonファイルに拡張子.jsを追加したテキストファイルを作成すると、Bodyを外部ファイルから読み込む事が可能です。sample.jsonの外部ファイルのファイル名はsample.json.jsです。
## サンプルコード
下記の例では、サイトID:2で、"BeforeOpeningPage": trueにより画面表示の前にBodyのスクリプトが実行されます。
##### スクリプト
```
{
"Name": "Sample",
"SiteIdList": [2],
"BeforeOpeningPage": true,
"Body": "// Write an arbitrary script."
}
```
## 関連情報
<div id="ManualList"><ul><li><a href="/manual/table-management-server-script">テーブルの管理:サーバスクリプト</a><span>2023/05/18 up</span></li></ul></article>
<ul><li><a href="/manual/server-script">開発者向け機能:サーバスクリプト</a><span>2023/06/01 up</span></li></ul></article>
<ul><li><a href="/manual/faq-server-script-log">FAQ:サーバスクリプトのエラーログを出力する</a><span>2023/01/05 up</span></li></ul></article></div><input id="SearchTextHidden" type="hidden" value="" />