# テーブル行からレコード追加 詳細マニュアル | 設定リファレンス・トラブルシューティング - KINTAUROS

> kintoneプラグイン「テーブル行からレコード追加」の詳細マニュアル。全設定項目のリファレンス(意味・制約値)、動作条件・制限事項、エラーコード別のトラブルシューティングを掲載。対象バージョン: v1.4.0。

元ページ: https://kintauros.com/plugins/table-row-bulk-copy/manual/

テーブル行からレコード追加は、サブテーブルの各行を別アプリの独立したレコードとして一括登録し、2回目以降は追加・更新・削除を同期するプラグインです。このマニュアルでは、設定項目のリファレンスと、動作仕様・制限事項・トラブルシューティングを説明します。

機能紹介・画面イメージ・導入手順は[プラグイン紹介ページ](https://kintauros.com/plugins/table-row-bulk-copy/)を、ダウンロードは[ダウンロードページ](https://kintauros.com/download/)をご覧ください。このマニュアルは[Markdown版](index.md)でも提供しており、全プラグインのメタ情報と設定スキーマは機械可読な[catalog.json](https://kintauros.com/catalog.json)から取得できます。

## 基本情報

- **プラグインID**: table-row-bulk-copy

- **対象バージョン**: v1.4.0(配布中の最新版)

- **カテゴリ**: テーブル編集・連携

- **説明**: テーブルの各行を別アプリのレコードとして一括登録し、更新・削除も同期します。

## 動作条件

- **対応環境**: kintone スタンダードコース(デスクトップ版UI)。ゲストスペースにも対応。最新版の Chrome / Edge / Safari / Firefox に対応。

- **動作画面**: レコード詳細画面(一括登録ボタン)。

- **必要な権限**: 実行するユーザーにコピー先アプリのレコード追加・編集・削除権限が必要です。

## 設定項目リファレンス

プラグイン設定の全項目です。「項目」は設定データ(エクスポートファイルの config)のキーを表し、[] は配列の要素を意味します。設定画面での入力項目と1対1に対応します。この構造の正式な定義はJSON Schema([catalog.json](https://kintauros.com/catalog.json) の configSchema)として公開しています。

- **項目**: 型 / 必須 / 説明・制約

- **destAppId**: 文字列 / 必須 / コピー先アプリID / 形式: ^[0-9]+$

- **destAppName**: 文字列 / 任意 / コピー先アプリ名 / 表示用の控え。ID が一致していれば名前は自動で最新化される。

- **sourceTable**: 文字列 / 必須 / コピー元テーブル / コピー元となるサブテーブルのフィールドコード。 / 1文字以上 / 対応フィールド型: SUBTABLE

- **destRecNoField**: 文字列 / 任意 / コピー先レコード番号の保存先 / テーブル行内のフィールドコード。追加したレコードの番号を書き戻し、2回目以降は更新にする。空なら毎回新規追加。 / 対応フィールド型: SINGLE_LINE_TEXT, NUMBER

- **sourceRecNoField**: 文字列 / 任意 / コピー元レコード番号の保存先 / コピー先アプリ側のフィールドコード。コピー元レコードの番号を保存する。空なら使用しない。

- **fieldMappings**: 配列 / 必須 / フィールドマッピング / 1件以上

- **fieldMappings[].srcType**: 文字列 / 必須 / table = コピー元テーブル内のフィールド / record = テーブル外(レコード直下)のフィールド。 / 値: table | record

- **fieldMappings[].srcCode**: 文字列 / 必須 / コピー元フィールドコード / 1文字以上

- **fieldMappings[].dstCode**: 文字列 / 必須 / コピー先アプリのフィールドコード / 1文字以上

## 設定のポイント

- destRecNoField(コピー先レコード番号の保存先)を指定すると、追加したレコードの番号がテーブル行に書き戻され、2回目以降のボタン実行は同期(追加・更新・削除)になります。空にすると毎回新規追加になります。

- fieldMappings の srcType で、コピー元をテーブル内の列(table)にするか、テーブル外のレコード直下フィールド(record)にするかを行ごとに選べます。案件名・顧客名などをテーブル外から各レコードへ引き継げます。

- テーブル行内の添付ファイルフィールドをマッピングすると、ファイルも自動でコピーされます。

## 動作仕様

- 詳細画面のボタンを押すと、テーブルの各行がコピー先アプリのレコードとして一括登録されます。100件ずつ分割して処理するため、大量の明細でも安定して動作します。

- 同期モード(destRecNoField 指定時)では、行の追加は新規登録、変更は上書き、削除された行はコピー先レコードの削除として反映されます。

- 登録後は詳細画面に、コピー先アプリの該当レコード一覧へのリンクと件数が表示されます。

## 制限事項・既知の仕様

- モバイルアプリの画面では動作しません(デスクトップ版UIのみ)。

- コピー先アプリの権限(追加・編集・削除)が不足していると実行に失敗します。

- コピー元とコピー先のフィールドは型に互換性が必要です(文字列→文字列、数値→数値など)。

## 設定のインポート / エクスポート

プラグイン設定画面の上部にある「設定のインポート / エクスポート」から、現在の設定をJSONファイルとして書き出し(エクスポート)、別のアプリで読み込み(インポート)できます。検証用アプリから本番アプリへの設定コピーや、バックアップ・復元にご利用ください。

- インポートは取り込む内容の差分を確認してから「設定画面に反映」し、最後に「保存」を押して確定します(反映しただけでは保存されません)。

- 読み込んだファイルはブラウザ内で処理され、KINTAUROSのサーバーには送信されません。

- 別のアプリの設定を取り込んだ場合、このアプリに存在しないフィールドは警告として一覧表示されるので、反映後に該当箇所を選び直してください。

エクスポートファイルは次の形式(封筒形式)です。config の中身が設定本体で、その構造は上の設定項目リファレンスのとおりです。

```
{
  "kintauros": "config/v1",
  "plugin": "<プラグインID>",
  "pluginName": "<プラグイン名>",
  "pluginVersion": "<バージョン>",
  "exportedAt": "<書き出し日時(ISO 8601)>",
  "sourceApp": "<書き出し元アプリID>",
  "config": { ... 設定本体 ... }
}
```

### AIエージェント向け: ブラウザコンソールAPI

各プラグインは共通ランタイム 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())。

## トラブルシューティング

**実行時にエラーになる・一部の行だけ登録されない**

エラーメッセージのAPIエラー内容を確認してください。よくある原因は、(1)コピー先アプリの追加・編集・削除権限の不足、(2)コピー先フィールドの削除・型変更、(3)コピー先アプリの必須フィールドがマッピングされていない、です。

**同期したのに削除した行のレコードが残る**

同期(削除の反映)は destRecNoField(コピー先レコード番号の保存先)を設定している場合のみ動作します。設定を確認し、テーブル行に番号が書き戻されているか確認してください。

**2回目の実行で更新ではなく新規追加になってしまう**

destRecNoField が未設定か、行のレコード番号列が空になっています。番号列の値を消すと対応関係が失われ、新規追加として扱われます。

## エラーコードと診断情報

テーブル行からレコード追加を含む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"}}
```

各エラーコードの意味と対処は[エラーコード一覧](https://kintauros.com/docs/errors/)を参照してください。また、プラグイン設定画面の「サポート用情報をコピー」から、環境・バージョン・ライセンス状態・直近のエラーを含む診断情報をコピーできます(レコードの内容や個人情報は含まれません)。お問い合わせの際はこの情報を添えてください。

## ライセンスについて

- 初回利用時は、プラグイン設定画面の「利用開始」ボタンから60日間の無料トライアルを開始できます(カード登録不要)。

- トライアル・契約の期限が切れるとプラグインの動作は停止し、画面に案内が表示されます。[料金プラン](https://kintauros.com/#pricing)から契約すると同じ設定のまま再開できます。

- ライセンス確認のための外部通信で送信されるのは、kintoneドメイン名・プラグインID・バージョンのみです。レコードの内容や個人情報が外部に送信されることはありません。

- ライセンスサーバーに一時的に接続できない場合も、プラグインは一定期間動作を継続する設計です。

## サポート

解決しない場合は[お問い合わせ](https://kintauros.com/contact/)からご連絡ください。その際、プラグイン設定画面の「サポート用情報をコピー」でコピーした診断情報を添えていただくと、調査がスムーズです。

最終更新: 2026-08-14 / 対象バージョン: v1.4.0
