開発者向け機能:サーバスクリプト:context.UserData
## 概要
[サーバスクリプト](/ja/manual/table-management-server-script)のスクリプト間でデータを共有可能にする機能を提供します。
## プロパティ
ExpandoObjectのため、任意の名称のプロパティを追加可能。
## メソッド
メソッドはありません。
## 使用例
下記の例では、1つ目のサーバスクリプトでデータベースから取得した情報をユーザデータ MyData に格納し、2つ目のサーバスクリプトでユーザデータ MyData に格納されているデータ件数をログに出力します。条件については1つ目は「更新前」、2つ目「更新後」にチェックしています。
##### JavaScript
```
// 1つ目のサーバスクリプト
let results = items.Get(10);
context.UserData.MyData = results;
```
##### JavaScript
```
// 2つ目のサーバスクリプト
let results = context.UserData.MyData;
context.Log(results.Length);
```
## サンプルコード
<details>
<summary>1. 一覧画面で平均値との比較で行を色付け</summary>
一覧画面でテーブル内の任意の数値項目に対し平均値を取得、平均値に対し自身のレコードが低いか高いかで、行に色を付けます。
また、平均値は画面表示時で1回計算できれば良いため、UserDataに設定し持ち回ることで、余計な計算をさせないように制御します。
##### JavaScript
条件:行表示の前
```javascript
// UserDataで平均値を持ち回り
if (!context.UserData.average) {
context.UserData.average = items.Average(context.SiteId, 'NumA');
}
// 行の色付けを平均値と比較して変更
if (context.UserData.average < model.NumA) {
model.ExtendedRowCss = 'high';
} else {
model.ExtendedRowCss = 'low';
}
```
##### CSS
CSS設定例です。
```css
/* 平均より高い */
.high td:not(:nth-child(0)) {
background-color: rgb(235, 175, 175);
}
/* 平均より低い */
.low td:not(:nth-child(0)) {
background-color: rgb(185, 220, 246);
}
```
</details>
## 対応バージョン
|対応バージョン|内容|
|:--|:--|
|1.1.13.0 以降|機能追加|
## 関連情報
<div id="ManualList"><ul><li><a href="/ja/manual/table-management-server-script">テーブルの管理:サーバスクリプト</a><span>2026/02/10 up</span></li></ul></article>
<ul><li><a href="/ja/manual/server-script">開発者向け機能:サーバスクリプト</a><span>2025/11/27 up</span></li></ul></article></div><input id="SearchTextHidden" type="hidden" value="" />



