テーブルの管理:サーバスクリプト
## 概要
[サーバスクリプト](/ja/manual/server-script)機能を使うことで、クライアントサイドで実行される従来の[スクリプト](/ja/manual/table-management-script)機能では実現出来なかった条件分岐や複雑な計算をシンプルなコードで実現できます。また、クライアントサイドで実行される[スクリプト](/ja/manual/table-management-script)機能とは異なり、[サーバスクリプト](/ja/manual/server-script)機能はインポートでのレコード追加・更新やAPIによる操作のタイミングでも実行されます。
## 操作手順
![image](https://pleasanter.org/binaries/e9a77c92eba74648a5238d048e098e99)
該当のテーブルを開いた状態でナビゲーションメニューより「管理」-[テーブルの管理](/ja/manual/table-management)をクリックしてください。
※サイトの管理権限が無いユーザには表示されません。
![image](https://pleasanter.org/binaries/0ad1501b071a4a3ba11470ac756dd7ed)
テーブルの管理からサーバスクリプトタブをクリックして開き、新規作成をクリックします。
![image](https://pleasanter.org/binaries/4e2228efd86243099a6963f34b93e220)
|項目名|説明|
|:---|:---|
|タイトル|任意のスクリプトタイトル|
|スクリプト|任意のスクリプト|
|タイムアウト|サーバスクリプトのタイムアウト時間(ミリ秒)を指定(※)|
|条件|実行する条件を選択|
※[Script.json](/ja/manual/script-json)のServerScriptTimeOutChangeableを有効化(true)することで指定できるようになります。
## 設定例
レコードの新規作成前に実行されるサーバスクリプトを設定します。
![image](https://pleasanter.org/binaries/ddfb11353624426c93df410411198191)
・[オブジェクトごとの実行タイミング](/manual/server-script-conditions)
## サンプルコード
ここでは単純にそれぞれの項目に値を挿入します。
```Javascript
model.ClassA = 'テスト';
model.DescriptionA = 'テスト';
model.NumA = 123;
model.CheckA = true;
```
## 実行結果
タイトルのみ入力してレコードを作成ボタンをクリック。
![image](https://pleasanter.org/binaries/dd726fa74f5541b9986d82a8ff9d8e2f)
サーバスクリプトの実行条件として作成前を指定したスクリプトが実行され、それぞれの項目に指定した値が挿入されたうえで、レコードが作成されます。
![image](https://pleasanter.org/binaries/84f76ce579ff44c5a3925d2967162649)
## コードエディタの使用
第2世代[ユーザインターフェースのテーマ](/ja/manual/user-management-theme)の場合は、ハイライトやコードヒント・タブキーでのインデント入力などをサポートする便利なコードエディタ機能がご利用いただけます。
※[General.json](/ja/manual/general.json)の"EnableCodeEditor"を有効化することで利用可能です。
![image](https://pleasanter.org/binaries/977805b8e560459f8de5e4e123b1506f)
## 関連情報
<div id="ManualList"><ul><li><a href="/ja/manual/script-json">パラメータ設定:Script.json</a><span>2024/09/13 up</span></li></ul></article>
<ul><li><a href="/ja/manual/table-management">テーブルの管理</a><span>2024/05/24 up</span></li></ul></article>
<ul><li><a href="/ja/manual/table-management-script">テーブルの管理:スクリプト</a><span>2024/10/08 up</span></li></ul></article>
<ul><li><a href="/ja/manual/user-management-theme">ユーザ管理機能:ユーザインターフェースのテーマをカスタマイズ</a><span>2024/05/21 up</span></li></ul></article>
<ul><li><a href="/ja/manual/server-script">開発者向け機能:サーバスクリプト</a><span>2023/06/01 up</span></li></ul></article>
<ul><li><a href="/ja/manual/faq-server-script-log">FAQ:サーバスクリプトのエラーログを出力したい</a><span>2024/04/29 up</span></li></ul></article></div><input id="SearchTextHidden" type="hidden" value="" />