# 受注詳細画面(編集モード) - 処理はForm1に実装する。受注IDはフォーム内のTextBoxで指定。 - 基本的に照会モードと同じだが、顧客名、商品名は、選択ドロップダウンになる。 - ドロップダウンのIDリストはフォームロード時に全件ロードする。 - 明細はDataGridViewで表示し、行ごとに商品ドロップダウン、数量、単価、割引、合計を編集可能にする - 明細の追加/削除ボタンはDataGridView内の各行にボタン列を追加 ## 画面項目 - 受注情報 - 受注ID - 顧客情報(顧客名、電話番号、住所) - 従業員情報(従業員名、職位、内線番号) - 受注日 - 必要日 - 出荷日 - 合計金額 - 受注明細情報 - 商品情報(商品名、価格=単価-割引、在庫) - 数量 - 合計金額(=価格*数量) - 配送情報 - 配送業者(社名、電話番号) - 配送先名 - 配送先住所 - 配送先市 - 配送先地域 - 配送先郵便番号 - 配送先国 - 運送料 - アクションボタン - 明細追加ボタン - 明細削除ボタン - 作成ボタン - キャンセルボタン ## イベント一覧 - ページ読み込み - 編集対象の受注情報を取得し表示 - 顧客、従業員、商品、配送業者、選択ドロップダウンを表示 - 顧客選択ドロップダウン変更:選択された顧客に基づいて、関連情報を表示 - 従業員選択ドロップダウン変更:選択された従業員に基づいて、関連情報を表示 - 明細追加ボタンクリック:明細を追加 - 明細削除ボタンクリック:明細を削除 - 商品選択ドロップダウン変更:選択された商品に基づいて、価格や在庫情報を表示 - 商品数量変更:価格と入力された数量に基づいて合計金額を計算し表示 - 配送業者選択ドロップダウン変更:選択された配送業者に基づいて、関連情報を表示 - 作成ボタンクリック:入力内容を検証し、受注、受注明細を作成 - キャンセルボタンクリック:受注詳細画面(照会モード)に遷移 - 更新ボタンクリック:入力内容を検証し、受注、注文明細を更新し、受注詳細画面(照会モード)に遷移 # イベント定義書 ## ページ読み込み - 概要:編集対象の受注情報を取得し、フォームに表示。 - このイベントは、受注詳細画面(編集モード)が初めて表示される際にトリガーされる。 - 受注IDに基づいてDBから受注情報を取得し、各フォーム項目に適切に表示する。 - 顧客、従業員、商品、配送業者、選択ドロップダウンのデータも取得しフォームにロード。 - トリガー条件 - ユーザーが受注詳細画面(編集モード)にアクセスした際に自動的に発生 - 事前条件 - NorthWind DBに接続可能であること。 - 受注IDが取得済みであること。 - 入力:受注ID - 出力:フォームへの受注データ表示 - 受注情報 - 受注明細情報 - 配送情報 - 処理内容 - 受注情報の取得:受注IDに基づいて受注情報、受注明細情報をNorthWind DBから取得 - 合計金額の計算:受注合計金額、明細合計金額(割引適用後)を計算して表示する。 - 検証内容 - 受注詳細画面(編集モード)が正しく表示されること。 - 受注IDに基づく受注情報、受注明細情報が各フォーム項目に適切に表示されること。 - 受注合計金額、明細合計金額(割引適用後)が正しく計算され、表示されること。 - エラーハンドリング - DB接続エラーが発生した場合:エラーメッセージを表示し、ユーザーに再試行を促す - 受注IDが無効または存在しない場合:エラーメッセージを表示し、受注一覧画面に戻る - 依存関係 - 顧客、商品のデータは、別のイベントによって更新される可能性がある ## 顧客、従業員、商品、配送業者選択ドロップダウン変更 - 概要 - 選択された顧客、従業員、商品、配送業者に基づいて、関連情報を表示。 - このイベントは、顧客、従業員、商品、配送業者選択ドロップダウンの選択が変更された際にトリガーされる。 - トリガー条件 - 選択ドロップダウンの選択が変更されたとき。 - 入力 - 選択ドロップダウンの選択値(ID) - 処理内容 - 選択ドロップダウンから選択されたIDを取得 - IDを使用して、DBから情報を取得 - 取得した情報を画面の対応するフィールドに表示 - 検証内容 - 入力に対応した出力であるか確認する。 - エラーハンドリング - DB接続エラーが発生した場合:エラーメッセージを表示 - IDが無効または存在しない場合:エラーメッセージを表示し画面を再初期化 - 依存関係 - 情報を取得するためのDB接続が必要。 - 選択ドロップダウンに正しいIDリストが事前にロードされていること。