ユーザマニュアル




2024/04/29

MANUAL

FAQ:作成したレコードのIDを取得したい

## 回答 [スクリプト](/ja/manual/table-management-script)を利用してください。 --- ## 概要 親テーブルにレコードを新規作成したと同時にリンクしたレコードを子テーブルに新規作成したい場合などで、新規作成したレコードのIDを取得したい場合は[スクリプト](/ja/manual/table-management-script)の実装が必要です。 顧客テーブル(親)でレコードを作成したタイミングで、作成したレコードとリンクしたレコードをチェックリストテーブル(子)に作成するサンプルになります。 ## 事前準備 本FAQでは以下のような親子関係のテーブルをもとに進めます。 ![image](https://pleasanter.org/binaries/b9c694ba5d2d4f6eb3e2f109d22f0082) チェックリストテーブル(子)でリンクに使用する項目は分類A(ClassA)になります。 リンクの設定方法については以下ページを参照ください。 [テーブルの管理:エディタ:項目の詳細設定:選択肢一覧:リンク \| Pleasanter](https://pleasanter.org/manual/table-management-choices-text-link) ## 操作手順 1. 下記スクリプトを顧客テーブル(親)のテーブルの管理にあるスクリプトに登録します。実行タイミングは「新規作成」です。 1. 顧客テーブルでレコードを新規作成します。 1. チェックリストテーブルに移動します。 1. 2.で作成したレコードにリンクしているレコードが作成されていることを確認します。 ## サンプルコード ##### JavaScript ``` $p.events.before_set_Create = function (args) { console.log(args.json); craeteCheckListRecored(args.json[0].Value); } function craeteCheckListRecored(recordId) { $p.apiCreate({ id: 242196, data: { Offset: 0, Title: '顧客テーブルでレコードを作成したタイミングで、このレコードは作成されました。', ClassA: recordId }, done: (data) => { console.log('Success!'); console.log(data); }, fail: (data) => { console.log(data); } }) } ``` ### 補足説明 上記スクリプトでレコードを作成したタイミングでレコードIDを取得する部分は下記の部分になります。 ##### JavaScript ``` $p.events.before_set_Create = function (args) { console.log(args.json); craeteCheckListRecored(args.json[0].Value); } ``` 「$p.events.before_set_Create」のイベントが実行されたタイミングのレスポンス(args)に作成したレコード情報が格納されております。 「args.json[0].Value」でレコードIDを確認することができます。 ## 関連情報 <div id="ManualList"><ul><li><a href="/ja/manual/table-management-script">テーブルの管理:スクリプト</a><span>2024/10/08 up</span></li></ul></article></div><input id="SearchTextHidden" type="hidden" value="" />
TOP
このページをシェアする
記載された商品名、各製品名は各社の登録商標または商標です。 © Implem Inc.