伝票パネルの行の削除時に関連する明細をすべて削除するには (親子削除)

概要

親子削除とは、親子連携された2つのパネル(親パネルの主キーなどの項目によって、子パネルの行が限定されているパネル)で、親パネルの行を削除すると同時に、対応する子パネルの行も削除する機能です。

例えば、親である伝票パネルと、子である明細パネルの2つが親子関係で定義されている場合に、伝票パネルの行を削除するだけでなく、同時に子である明細リストの行も削除したいことがあります。

親子パネル間で親子削除を行うには、コマンドで親パネルにて「親子削除」というアクションを使います。なお、親子削除を有効にするには、子パネルの限定設定で「親子編集する」にチェックを入れる必要があります。

例題

ここでは、説明のために次のような親となる「受注伝票」パネルと、子となる「受注明細」パネルがある状態で、親子削除アクションを含むコマンドを実行するための[伝票削除]ボタンを配置する例を示します。

親子削除は、親子関係を持つ2つのパネルが定義されている(子パネルが親パネルの選択行によって限定されている)必要があります。親子関係を持つパネルは、ウィザードの「明細パネル追加」機能でも定義できます。

設定手順

(1) リボンの「定義」タブから「コマンド」を選択します。

リボンの「定義」タブの「コマンド」

(2) 「コマンド」画面で[新規]ボタンをクリックします。

(3) 「コマンド名」画面でコマンド名として「伝票削除」と入力し、[OK]をクリックします。

(4) 「コマンド」画面にて作成した「親子削除」コマンドが選択されている状態で、
「パネル」欄が親のパネル「受注伝票」となっていることを確認します。

次に「ボタン配置」欄で「パネル」を選択して、表示名に「伝票削除」と入力します。

(5) 画面下のアクション表に新しい行を追加して「アクション種別」欄のプルダウンから「親子削除」を選択します。

(6) 「アクション設定」画面にて、「対象コンテキスト」欄で 親パネルのコンテキスト「受注伝票」を選択し、[登録]ボタンをクリックします。

なお「アクション設定」画面を表示するには、追加したアクションの「指定内容」欄をダブルクリックします。

(7) 「コマンド」画面の[登録]をクリックします。

(8) 「受注伝票」パネルの入力フォーム上にボタン[伝票削除]が自動的に配置されます。

なお、ボタンの配置を変えるには、入力フォームを右クリックして「デザインモード」を選択することにより位置や大きさを変更できます。

(9) 次に、リボンの「定義」タブの「コンテキスト」を選択します。

リボンの「定義」タブの「コンテキスト」

(10) 「コンテキスト」画面にて、「受注明細」コンテキストを選択して[限定]ボタンをクリックします。

(11) 「限定」画面の「基本設定」タブにて
「親子関係として扱う」にチェックを入れて 、[登録]ボタンをクリックします。

動作確認

(1) 「受注伝票」パネルで削除したい行を選択して[伝票削除]ボタンをクリックします。

(2) ボタンをクリックすると、親パネルで選択した行が削除されると同時に、子パネルである「受注明細」パネルの行も削除されます。

限定されていない時のコンテキストの内容は、親子削除の前後で、次のように変化します。

関連項目

2023年3月29日 更新

ページの先頭へ