受注の記録に顧客マスタの会社名や住所を呼び出して入れるように、別のアプリの記録を選び、その値を取り込んで入力の手間と間違いを減らしたいときに使います。取り込んだ値はこのレコードにコピーされ、マスタを直しても自動では変わりません。
別のアプリのレコードを参照して値を取得するフィールドです。顧客マスタから会社情報を引用するといった用途に使用します。
入力フォームでの表示
顧客名
自動入力されたフィールド
ルックアップの入力欄には直接文字を入力できません(読み取り専用)。「選択」ボタンか入力欄を押すと「レコードを選択」の画面が開き、 参照先アプリのレコードを検索して選びます。選ぶと、紐づけキーの値が入り、コピー先フィールドの設定に従って値がコピーされます。
プロパティパネル
ラベル *
フィールドコード
参照先アプリ
紐づけキー
参照先が削除されたとき
| 設定項目 | 説明 |
|---|---|
| ラベル | 画面に表示されるフィールド名 |
| フィールドコード | API・計算式で使用する識別子 |
| 参照先アプリ | データを取得する元のアプリ(同じ環境内) |
| 紐づけキー | 参照先アプリのどのフィールドで照合するか。「重複禁止」が有効なフィールドのみ選択可能。文字列・数値・リンク・自動採番が対象 |
| 表示フィールド | ルックアップフィールド自体に、紐づけキーの値の代わりに表示する参照先フィールド。未設定では紐づけキーの値がそのまま表示される |
| 表示するフィールド | 検索ダイアログに表示する参照先フィールドを選択(表示フィールドとは別設定) |
| コピー先フィールドの設定 | 取得時に参照先の値をコピーするフィールドのマッピング |
| フィルタ条件 | 「レコードを選択」の画面に出す参照先レコードを絞り込む条件を設定。複数条件は AND / OR いずれかの結合方法を選択できる。比べる値に「このレコードの種類」も選べる(下の「フィルタ条件(候補の絞り込み)」) |
| ソート | 検索ダイアログでの参照先レコードの並び順 |
| 参照先が削除されたとき | 警告して確認 / 削除を禁止 / 値をクリア / 何もしない から選択(テーブル内のルックアップでは「値をクリア」は選べません) |
「参照先が削除されたとき」は、参照先アプリのレコードを削除するときに、そのレコードを参照しているレコードがあれば働きます。 テーブル(サブテーブル)の中のルックアップからの参照も数えます。件数は参照しているレコードの数です(同じレコードのテーブルの複数の行が同じキーを持っていても 1 件)。 テーブル内のルックアップでは「値をクリア」は選べません(行のほかの入力を壊さないため)。「警告して確認」「削除を禁止」「何もしない」から選んでください。
コピー先フィールドの各マッピングには「コピー後の編集を許可」のチェックボックスがあります。
使用例: 顧客マスタから「住所」をコピーしつつ、個別案件で配送先住所のみ変更したい場合、 住所フィールドの編集許可をオンにします。
参照先の値を直しても、コピー済みの値はその場では変わりません(参照先を直したことで、参照している側のレコードが書き換わることはありません)。 「コピー後の編集を許可」をオフにしたコピー先は、参照している側のレコードを次に保存したときに、参照先のいまの値で入れ直されます。 編集画面で開いて保存すれば、ルックアップを選び直さなくても入れ直されます(API でルックアップの値を同じキーのまま送った場合も同じです)。 一覧のインライン編集・カンバンの移動など、ルックアップの値を含まない部分的な更新では入れ直されません。 「コピー後の編集を許可」をオンにしたコピー先は、同じキーのままの保存では入れ直されません(手で直した値を残すため)。 ステータスや期間ロックで編集できないレコードのコピー先は入れ直せません。 参照先のキーの値そのもの(例: 社員番号)を変えたときは、参照している側のレコードは前の値を持ったままになるので、 ルックアップの値を選び直して保存してください。参照先に合わせて自動で変わってほしい値は、コピーではなく参照値フィールドを使ってください。
ルックアップの設定で「QR・バーコード読み取りを有効化」をオンにすると、紐づけキーの値(商品コード・社員番号など)を印刷したコードをカメラで読み取って、参照先のレコードを選べます。 この設定は、アプリの「設定」→「拡張機能」で「バーコード/QR スキャン」をオンにしたときだけ表示されます(スタンダードコースの機能です。試用期間中も使えます)。
コピー先フィールドの設定は、update_form でフィールドの settings.lookupCopyMappings に配列として渡します。要素は次の形です。
| キー | 値 | 内容 |
|---|---|---|
sourceFieldId | 参照先アプリのフィールドid | コピー元(必須)。list_lookup_sources で確認できます |
targetFieldId | このアプリのフィールドid | コピー先(必須)。get_form で確認できます |
allowEdit | true / false | 「コピー後の編集を許可」(任意。既定 false) |
sourceFieldIdlist_lookup_sources で確認できますtargetFieldIdget_form で確認できますallowEdittrue / falsefrom / to、sourceFieldCode / targetFieldCode のような別名のキーは使えません。 送った場合は保存されず、応答に「送られてきたキー名」と期待される形が返ります「フィルタ条件」で、「レコードを選択」の画面に出す参照先のレコードを絞り込めます。 条件は「参照先の項目」「演算子(= / ≠ / 含む / > / <)」「比べる値」で作り、複数の条件は AND / OR で結びます。
settings.lookupFilters の要素に valueSource: "record_type" を指定し、value は省くか空にします(値を入れると保存できません)。valueSource を省くと固定値ですコピー元とコピー先のフィールドは、データ型に互換性がある組み合わせのみマッピングできます。 コピー先として選択可能なフィールドは、コピー元の型に応じて自動的に絞り込まれます。
テーブル(サブテーブル)のサブフィールドにもルックアップを配置できます。 テーブル内のルックアップでは、参照先アプリの選択・紐づけキー・表示フィールド・コピーマッピング・参照先が削除されたときの扱いを通常のルックアップと同じUIで設定できます。
| 働き | テーブル内のルックアップでの動き |
|---|---|
| 表示フィールド | 一覧・詳細・編集フォーム・関連レコード一覧で、紐づけキーの代わりに参照先の表示フィールドの値が出ます。表示する値は保存せず、開くたびに参照先から読みます(参照先で名前を直すと、次に開いたときから新しい名前が出ます)。 参照先に一致するレコードが無い(削除した・キーを変えた)・2 件以上ある・一度に表示する件数が多すぎるときは、キーのまま出ます。 CSV・帳票・メールにはキーが出ます(通常のルックアップと同じ) |
| コピー | 画面で参照先を選んだときは、その時点の値をコピーします(選び直すとコピーし直します)。保存するときは(画面・API・CSV の取り込み・AI エージェント・データパイプライン・アクションのどれでも)、コピー先が空の欄だけ参照先の値で埋めます。すでに値が入っている欄は上書きしません。 通常のルックアップと違い、保存のたびに参照先のいまの値で入れ直すことはしません。コピーした値は、参照先を後から直しても変わりません |
| コピー後の編集を許可 | オフ(既定)のコピー先は、その行でルックアップが選ばれている間、入力の画面(テーブルのセル・行のダイアログ)では入力できません。 ルックアップを空にすると、そのコピー先も空になり、入力できるようになります(同じコピー先にコピーするほかのルックアップがまだ選ばれていれば残ります)。オンのコピー先は、コピーの後も手で直せ、ルックアップを空にしても値が残ります。 コピーする値を作れなかったとき(参照先の値が型に合わない・読み込めない)は、その選び直しを取り消し、どの項目をコピーできなかったかを知らせます。このロックは入力の画面だけに効きます。API・CSV の取り込み・一括の更新・データパイプライン・AI エージェント・変更履歴からの戻しでは、コピー先を直接書けます |
| キーの確認 | 保存するとき、参照先に無いキー(2 件以上に一致するキー)は保存できません(「「明細」の 2 行目の「使用用途」に指定されたキー…」のように、テーブル・行・列を示します)。 レコードを更新するときは、すでにそのテーブル・その列に入っていたキーはそのまま保存できます(参照先から消えたキーを持つレコードも、行の並べ替えやほかの欄の編集で止まりません) |
| 参照先が削除されたとき | 警告して確認 / 削除を禁止 / 何もしない(「値をクリア」は選べません)。テーブルの中からの参照も数えます |
| 参照先のキーを変えたとき | 参照先のレコードのキーの値を変えて画面で保存すると、そのキーを使っていたレコードの件数を保存の後に知らせます(通常のルックアップからの参照と合わせた件数。一括の更新・CSV の取り込みでは知らせません) |
data に __lookup_display__<テーブルのコード>.<列のコード>(キー → 表示する値の対応)が入ります。 読むときだけの値なので、保存するときは送らないでください(送ると 400 になります。通常のルックアップの __lookup_display__<コード> と同じ)表示フィールドとコピーでこのアプリに持ち込む値は、このアプリの側の権限で守られます。 このアプリでその欄(ルックアップの欄・コピー先の欄)を見られる人には、参照先アプリでの権限(アプリ・レコード・フィールドの閲覧権限、ステータスごとの表示)にかかわらず表示されます。 欄を見られない人には、表示する値も出ません。テーブル内のルックアップも同じです。