明細行でDBリンク項目の「明細キー」を選択した際に親の「キー項目」を自動取得し、入力画面では非表示状態でデータを登録する方法
「DBリンク項目」で明細行を紐付け、「従属項目」の自動取得設定と入力画面の非表示設定を正しく組み合わせることでデータの取得が可能です。
データベース間の紐付けに「DBリンク項目」を使用し、そのリンク先が「明細行」である場合、その明細行が所属する親レコード(ヘッダ項目)の情報も「従属項目」として取得できます。
ユーザーが入力画面で特定の明細(例:受注明細ID)を選択した瞬間に、システムがその親レコードの情報(例:受注ID)を自動的に取得し、項目へ値を流し込みます。
さらに入力画面の設定でその項目を「非表示」にしつつ、「非表示でも値を取得する」設定を有効にすることで、ユーザーに意識させることなく、正確なリレーションデータを裏側で登録し続ける運用が実現できます。
【設定箇所】 左パネル>[対象のデータベース]>設定(スパナアイコン)
DBリンク項目の詳細設定で「対象DBの明細項目にリンクを張る」を有効にして明細単位の紐付けを行う
まず、値を登録したいデータベース(例:出荷データベース)の明細行において、親となるデータベース(例:受注データベース)の「明細行」を特定できるように設定します。
1. 対象データベース(例:出荷データベース)の「項目設定」にて、項目タイプ「DBリンク項目」を新規追加し、リンク先のデータベース(例:受注データベース)を指定します。
2. 追加した項目の「設定」ボタンをクリックし、詳細設定画面にて「対象DBの明細項目にリンクを張る」のチェックボックスにチェックを入れます。
この設定により、出荷データベースの1行ごとに、受注データベースの特定の1明細(受注明細ID)を紐付けることができます。
親レコードの情報を取得するための「従属項目」を作成して受注IDを紐付ける
次に、紐付いた受注明細が所属する親レコードの「受注ID」を取得するための項目を作成します。
1. 出荷データベースの「項目設定」にて、タイプ「(従属項目)」を新規追加します。
2. 「対象リンク項目」に先ほど作成した受注データベースへのDBリンク項目を選択し、「コピーする項目」に受注データベースの「受注ID(ヘッダ項目)」を指定します。
DBリンクで明細行を指している場合でも、その行が属するヘッダ項目の値をコピーしてくることができます。
DB全体設定の「従属項目の自動取得設定」を「常に有効にする」に変更してボタン操作を不要にする
ユーザーが入力画面で「取得」ボタンを手動でクリックしなくても、受注明細を選択しただけで自動的に受注IDが裏側でセットされるようにします。
1. 出荷データベースの「基本設定」タブ内にある「DB全体設定」をクリックします。
2. 「従属項目の自動取得設定」のプルダウンにて「常に有効にする」を選択し、確定します。これにより、新規登録時だけでなく既存レコードの編集時であっても、リンク項目が選択・変更されたタイミングで従属項目の値が自動で引っ張ってこられるようになります。
レコード入力画面設定の「従属取得設定」で非表示項目への値の流し込みを許可する
最後に、入力画面上で項目を隠しながらも、データの登録を確実に行うための重要な設定を行います。
この設定を忘れると、画面上では値が取得されているように見えても、保存(確定)時にデータが空のまま登録されてしまうため注意してください。
1. 出荷データベースの「表示設定」タブ内にある「レコード入力画面設定」を開き、対象の画面の「設定」ボタンをクリックします。
2. 項目一覧から「受注ID(従属項目)」を探し、「削除」ボタンをクリックして画面上から非表示にします。
3. 画面上部にある全体設定の「設定」ボタンをクリックします。
4. 「従属取得設定」という項目にある「編集不可・非表示に対して取得を行う」のチェックボックスに必ずチェックを入れ、確定します。 この設定により、ユーザーの目には見えない状態であっても、裏側で正しく受注IDが保持・登録されます。
注意
トリガーとなる「DBリンク項目」は必ず表示させてください。
今回の設定は、ユーザーが画面上で「受注明細ID(DBリンク項目)」を直接選択(表示・編集可能な状態に)している場合に、裏側の非表示の「受注ID(従属項目)」が自動取得されます。
元となるDBリンク項目自体を入力画面から非表示にしたり、編集不可にしたりすると、たとえ従属取得設定を有効にしていても、紐づく従属項目は一切自動取得されなくなりますのでご注意ください。
関連マニュアル
詳細な仕様の違いや作成手順については、下記記事をご確認ください。
データベース同士を関連付ける「DBリンク項目」の基本設定
他のデータベースの情報を参照するための設定手順や、明細行に対してリンクを張る際の詳細な仕様について解説しています。
項目設定:項目タイプ「DBリンク項目」
リンク先から情報をコピーして保持する「従属項目」の設定方法
DBリンクを介して特定の項目の値を自動で取得し、自身のデータベースに保存するための設定手順を記載しています。
項目設定:項目タイプ「従属項目」
入力画面での項目の表示・非表示や入力制御に関するマニュアル
レコード入力画面のレイアウト変更や、非表示にした従属項目に値を反映させるための「従属取得設定」の詳しい仕様について解説しています。
レコード入力画面設定
(記事ID:2856)
「項目設定」の関連記事一覧
こちらの記事もあわせてご確認ください。
- 必須設定にしている日時項目に対して、特定の条件に合致する場合は入力必須とせずに登録する方法・設定手順
- レコード入力画面で「編集不可・非表示の場合も取得する」にチェックしているのに従属項目が自動取得されない原因と対処方法
- DBリンク項目の検索ウィンドウで特定の項目(顧客名やコードなど)が検索にヒットしない場合の対処方法
- 入力画面で特定の条件に合致するリンク先のデータだけを選択肢リスト(プルダウンや検索画面)に絞り込んで表示する方法・設定手順
- レコード入力画面のDBリンク項目(プルダウン)で長い名称が文字切れ・省略される事象の回避策
- レコード一覧画面で「ベースURL+レコードID」をハイパーリンクとして表示する方法・設定手順
- 添付ファイルが表示されない・アップロードできない場合の確認箇所と対処手順
- 「文字連結」項目の設定候補に「参照専用項目」が表示されない
- 明細項目の値を別DBの明細項目に表示させる方法・設定手順