伝票データ登録ボタンクリック処理
受注登録ボタンクリック処理を実装します。
サンプルプログラム

【受注データ登録ボタンクリック処理】
[登録ボタン]をクリックして、入力データにエラーがなければ、受注ヘッダー表と受注ディテール表に受注データを追加します。追加が正常なら、「受注伝票を登録しました」とメッセージを表示し、画面を初期化します。エラーがあれば、例外がスローされるので、フォームクラスで例外をキャッチしてエラー処理をします。
- 受注ヘッダー表の空データを生成し、受注日・受注番号・得意先コードをセットする
- この受注ヘッダーデータと受注明細行リストを引数に指定して、受注伝票クラスのインスタンスを生成する
- そして、受注伝票クラスのInsertRecordメソッドを呼び出して、受注ヘッダー表と受注ディテール表に受注データを追加する。
ソースリストの枠内をクリックすると全選択できます。
'*******************************************************
' 受注登録ボタンクリック処理
'*******************************************************
Private Sub BtnTouroku_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles BtnTouroku.Click
Try
' 受注ヘッダー表の空データを生成
Dim dr As DataRow
dr = ClsHeaderBase.CreateDataRow()
' 入力した受注ヘッダーデータをセット
dr("受注日") = LblJuchuBi.Text
dr("受注番号") = TxtJuchuBango.Text
dr("得意先コード") = TxtTokuisakiCode.Text
' 受注伝票インスタンス生成
Dim denpyo As New ClsJuchuDenpyo(dr, meisaiList)
' 受注ヘッダー表と受注ディテール表にレコード追加
denpyo.InsertRecord()
' 正常にレコード追加のメッセージ表示
MessageBox.Show("受注伝票を登録しました", "受注エントリー")
' 画面ヘッダー部初期化
InitialHeader()
' 画面ディテール部初期化
InitialDetail()
Catch ex As JuchuBangoException
' 受注番号例外が発生した時の処理
MessageBox.Show(ex.Message, "受注番号エラー")
' 受注番号にフォーカス
TxtJuchuBango.Focus()
Catch ex As TokuisakiCodeException
' 得意先コードエラー処理
MessageBox.Show(ex.Message, "得意先コードエラー")
' 得意先コードにフォーカス
TxtTokuisakiCode.Focus()
Catch ex As ShohinCodeException
' 商品コードエラー処理
MessageBox.Show(ex.Message, "商品コードエラー")
' 商品コードにフォーカス
TxtShohinCode.Focus()
Catch ex As DBIOException
MessageBox.Show(ex.ToString, "DBIO例外発生")
Catch ex As Exception
MessageBox.Show(ex.ToString, "例外発生")
End Try
End Sub
登録ボタン処理では、ClsJuchuDenpyoクラスのInsertRecordを呼び出すだけです。したがって、フォームクラスのプログラマーは、データベースの実装をする必要がありません。
これでほとんど完成です。