これは、このような画面に表示する必要がある Datagridview です。
(Datagrid ビューは「メイン テーブル」(RECEIVE_PLAN)とバインドされます)
コンセプト デザイン データベース:
倉庫に何かを輸入したい場合は、1日で受け取ることを計画する必要があります. 受入計画は「発注書」から直接作成する か、発注前に倉庫に受入スケジュールがある場合があります。
データベースには、Table AとTable BおよびMain Tableを含む 3 つのテーブルがあります。
このような関係にあります。
注:メイン テーブルには、画面に表示する値を取得するための 2 つのオプションがあります。
Aテーブル(PURCHASE ORDERテーブル)から「 PO_LIST_NO」と「PO_NO」を直接取得。
B テーブル(RECEIVE SCHEDULE テーブル)から「 PO_LIST_NO」と「PO_NO」を取得し、A テーブルから値を取得します。
重要な条件
メイン テーブル (RECEIVE PLAN) では、「PO_ID」または「RS_ID」のいずれかに値が必要です。
メインテーブル (RECEIVE PLAN) の PO_ID 列に値がある場合、RS_ID 列は NULL でなければなりません。一方、主テーブル(RECEIVE PLAN)のRS_ID列に値がある場合、PO_ID列はNULLでなければなりません。
メイン テーブル (RECEIVE PLAN) は、PO_ID と RS_ID の両方を NULL にすることはできません
メイン テーブル (RECEIVE PLAN) は、PO_ID と RS_ID の両方に値を持っていてはなりません
以下のようなRECEIVE PLANの例。
(PO_TRAN_ID) は PO_ID
(RS_TRAN_ID) は、この場合の RS_ID です。
質問 : テーブル A または B から値を取得するためにクエリを実行する方法は?
このように表示するために、メイン テーブル、Aテーブル、およびB テーブルを結合する方法。
この datagridview プロパティ。
BindingSource :メイン テーブル (RECEIVE_PLAN)
「PO LIST NO」列 : A テーブルから取得 (PURCHASE_ORDER)
「PO NO」列 : A テーブルから取得 (PURCHASE_ORDER)
「PLAN QTY」列 :メインテーブルから取得 (RECEIVE PLAN)