開発者向け機能:拡張機能:拡張サーバスクリプト
## 概要
システム全体で使用可能な[サーバスクリプト](/ja/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="/en/manual/table-management-server-script">Table Management: Server Script</a><span>08.13.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/server-script">Developer Function: Server Script</a><span>08.14.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/faq-server-script-log">FAQ: I want to output the error log of a server script</a><span>08.14.2024 up</span></li></ul></article></div><input id="SearchTextHidden" type="hidden" value="" />