| プラグインID | record-auto-update |
|---|---|
| 対象バージョン | v1.0.1(配布中の最新版) |
| カテゴリ | AI・自動化 |
| 説明 | レコード保存時に、条件に一致する自アプリまたは他アプリのレコードを自動で一括更新します。テーブルの同期(上書き転記)や文字列まとめにも対応。 |
| 対応環境 | kintone スタンダードコース(デスクトップ版UI)。最新版の Chrome / Edge / Safari / Firefox に対応。 |
|---|---|
| 動作タイミング | レコードの新規作成・編集・一覧のインライン編集の保存成功時(デスクトップ版)。モバイルアプリからの保存では更新されません。 |
| 必要な権限 | 保存するユーザーに、更新先アプリの対象レコードの閲覧・編集権限が必要です。 |
プラグイン設定の全項目です。「項目」は設定データ(エクスポートファイルの config)のキーを表し、[] は配列の要素を意味します。設定画面での入力項目と1対1に対応します。この構造の正式な定義はJSON Schema(catalog.json の configSchema)として公開しています。
| 項目 | 型 | 必須 | 説明・制約 |
|---|---|---|---|
rules | 配列 | 必須 | 更新ルール 1件以上 |
rules[].triggerCondition | オブジェクト | 任意 | 実行条件(保存したレコードの条件) 保存したレコードがこの条件を満たすときだけ更新を実行する。省略時・mode が always のときは常に実行。 |
rules[].triggerCondition.mode | 文字列 | 任意 | 値: always | conditions |
rules[].triggerCondition.logic | 文字列 | 任意 | 値: and | or |
rules[].triggerCondition.rules | 配列 | 任意 | - |
rules[].triggerCondition.rules[].fieldCode | 文字列 | 必須 | フィールドコード(このアプリ) 1文字以上 |
rules[].triggerCondition.rules[].operator | 文字列 | 必須 | 値: equals | not_equals | contains | not_contains | gt | gte | lt | lte | empty | not_empty |
rules[].triggerCondition.rules[].valueType | 文字列 | 任意 | const = 固定値 / func = 関数(TODAY() など) 値: const | func |
rules[].triggerCondition.rules[].value | 文字列 | 任意 | valueType が func のときは LOGINUSER() / TODAY() / NOW() のいずれか |
rules[].destAppId | 文字列 | 必須 | 更新先アプリID(自アプリのIDも指定可) 形式: ^[0-9]+$ |
rules[].destAppName | 文字列 | 任意 | 更新先アプリ名 表示用の控え。保存時に自動で最新化される。 |
rules[].maxTargets | 整数 | 任意 | 更新する件数の上限 条件に一致した件数がこの値を超えた場合は、更新を行わずエラーにする(意図しない一括更新の防止)。省略時は1。 1以上 / 1000以下 |
rules[].destCondition | オブジェクト | 必須 | 更新先レコードの条件 更新先アプリでこの条件に一致するレコードを更新する(件数が maxTargets を超えたら更新しない)。 |
rules[].destCondition.logic | 文字列 | 任意 | 値: and | or |
rules[].destCondition.rules | 配列 | 必須 | 1件以上 |
rules[].destCondition.rules[].fieldCode | 文字列 | 必須 | フィールドコード(更新先アプリ) 1文字以上 |
rules[].destCondition.rules[].operator | 文字列 | 必須 | 値: equals | not_equals | contains | not_contains | gt | gte | lt | lte | empty | not_empty |
rules[].destCondition.rules[].valueType | 文字列 | 任意 | const = 固定値 / func = 関数(TODAY() など) / field = 保存したレコードのフィールド値 値: const | func | field |
rules[].destCondition.rules[].value | 文字列 | 任意 | valueType が field のときはこのアプリのフィールドコード |
rules[].destCondition.rules[].fieldType | 文字列 | 任意 | 更新先フィールドの型(保存時に自動算出)。クエリ生成の内部情報。手で編集しない。 |
rules[].updates | 配列 | 必須 | 更新内容(更新先フィールドと値) 1件以上 |
rules[].updates[].dest | 文字列 | 必須 | 更新先フィールドコード 1文字以上 |
rules[].updates[].destType | 文字列 | 任意 | 更新先フィールドの型(保存時に自動算出)。値変換の内部情報。手で編集しない。 |
rules[].updates[].srcType | 文字列 | 必須 | field = 保存したレコードのフィールド値 / const = 固定値 / func = 関数 / table = テーブルを文字列にまとめて転記 / table_copy = テーブルの行を更新先のテーブルへ上書き転記(同期) 値: field | const | func | table | table_copy |
rules[].updates[].value | 文字列 | 任意 | srcType が field/table/table_copy のときはこのアプリのフィールドコード。func のときは TODAY() / NOW() / LOGINUSER()。const のときは固定値(空文字で更新先をクリア)。 |
rules[].updates[].table | オブジェクト | 任意 | テーブル転記オプション(srcType が table のときのみ) |
rules[].updates[].table.columns | 配列 | 任意 | 出力する列(テーブル内フィールド) 1件以上 |
rules[].updates[].table.columns[].code | 文字列 | 必須 | 1文字以上 |
rules[].updates[].table.columns[].label | 文字列 | 任意 | 見出しの表示名。保存時に自動で最新化される。 |
rules[].updates[].table.format | 文字列 | 任意 | markdown = Markdown表 / csv = カンマ区切り。省略時は markdown。 値: markdown | csv |
rules[].updates[].sync | オブジェクト | 任意 | テーブル同期オプション(srcType が table_copy のときのみ) |
rules[].updates[].sync.mappings | 配列 | 必須 | フィールドの関連付け 1件以上 |
rules[].updates[].sync.mappings[].src | 文字列 | 必須 | 転記元(このアプリのテーブル内)フィールドコード 1文字以上 |
rules[].updates[].sync.mappings[].dest | 文字列 | 必須 | 転記先(更新先テーブル内)フィールドコード。型が一致している必要がある 1文字以上 |
rules[].updates[].sync.emptyBehavior | 文字列 | 任意 | テーブルが空のときの動作。skip = 同期しない(転記先を保護) / clear = 空で上書きする。省略時は skip。 値: skip | clear |
rules[].updates[].sync.destLookups | 配列 | 任意 | 転記先テーブル内のルックアップ情報(保存時に自動算出) 実行時の送信制御に使う内部情報。手で編集しない(保存時に更新先アプリの定義から再計算される)。 |
rules[].updates[].sync.destLookups[].field | 文字列 | 任意 | - |
rules[].updates[].sync.destLookups[].copyTargets | 配列(文字列) | 任意 | - |
プラグイン設定画面の上部にある「設定のインポート / エクスポート」から、現在の設定をJSONファイルとして書き出し(エクスポート)、別のアプリで読み込み(インポート)できます。検証用アプリから本番アプリへの設定コピーや、バックアップ・復元にご利用ください。
エクスポートファイルは次の形式(封筒形式)です。config の中身が設定本体で、その構造は上の設定項目リファレンスのとおりです。
{
"kintauros": "config/v1",
"plugin": "<プラグインID>",
"pluginName": "<プラグイン名>",
"pluginVersion": "<バージョン>",
"exportedAt": "<書き出し日時(ISO 8601)>",
"sourceApp": "<書き出し元アプリID>",
"config": { ... 設定本体 ... }
}
各プラグインは共通ランタイム window.KINTAUROS を搭載しており、ブラウザの開発者コンソールから設定の読み取り・検証・保存ができます。設定の保存(save: true)はkintoneの制約上、プラグイン設定画面でのみ成功します。
KINTAUROS.config.plugins() // このページのKINTAUROSプラグインID一覧
KINTAUROS.config.describeAll() // 同居プラグインすべての設定サマリ
KINTAUROS.config.of('<プラグインID>').schema() // 設定のJSON Schema
KINTAUROS.config.of('<プラグインID>').export() // 現在の設定(封筒つき)
KINTAUROS.config.of('<プラグインID>').validate(x) // 保存せず検証
KINTAUROS.config.of('<プラグインID>').diff(x) // 現在の設定との差分
await KINTAUROS.config.of('<プラグインID>').import(x, { save: true }) // 検証して保存(設定画面のみ)
登録が1件だけのページでは of(...) を省略できます(例: KINTAUROS.config.export())。
レコード自動更新を含むKINTAUROSプラグインは、エラー発生時にブラウザのコンソールへ統一形式のログを出力します。人間向けの1行に続けて、機械可読なJSON(code / plugin / version / appId / message / doc)を出力し、doc には該当エラーの解説ページのURLが入ります。
[KINTAUROS <プラグインID>@<バージョン>] E001: 設定されたフィールドが見つかりません: ...
{"kintauros":{"code":"E001","plugin":"...","version":"...","appId":"...","message":"...","doc":"https://kintauros.com/docs/errors/E001"}}
各エラーコードの意味と対処はエラーコード一覧を参照してください。また、プラグイン設定画面の「サポート用情報をコピー」から、環境・バージョン・ライセンス状態・直近のエラーを含む診断情報をコピーできます(レコードの内容や個人情報は含まれません)。お問い合わせの際はこの情報を添えてください。
解決しない場合はお問い合わせからご連絡ください。その際、プラグイン設定画面の「サポート用情報をコピー」でコピーした診断情報を添えていただくと、調査がスムーズです。
最終更新: 2026-09-12 / 対象バージョン: v1.0.1