マスターテーブル削除画面

Visual Basic ADO.NET [Community Express]

得意先マスター削除画面

得意先マスターから1レコードを削除(Delete)するプログラムを作成します。

まず、得意先検索ボタンクリック処理、フォーム初期設定、クリアボタンクリック処理を実装します。

仕様書

レコード削除画面

販売管理データベース

得意先マスター表
Key 列名 データ型 NULLを許容
得意先コード nchar(4) しない
郵便番号 nchar(7) しない
得意先名称 nvarchar(40) しない
得意先住所 nvarchar(50) しない

【得意先検索ボタンクリック処理】

  • 入力された得意先コードを引数に指定して、得意先データ管理クラスのインスタンスを生成
  • 得意先コードをキーにして得意先マスター表を検索し、得意先名称・都道府県・住所を、各ラベルコントロールのTextプロパティにセット
  • 入力した得意先コードにエラーがあれば得意先コード例外、データベースエラーが発生すれば、データベースIO例外をスローするので、それぞれの例外に応じたエラー処理を実装

サンプルプログラム

ソースリストの枠内をクリックすると全選択できます。

'////////// 得意先マスター削除画面クラス //////////
Public Class FormTokuisakiSakujo

    '*******************************************************
    ' フォームロード処理
    '*******************************************************
    Private Sub FormSakujo_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        ' フォーム初期設定
        ClearForm()

    End Sub

    '*******************************************************
    ' 得意先検索ボタンクリック処理
    '*******************************************************
    Private Sub BtnTokuisakiKensaku_Click(sender As Object,
        e As EventArgs) Handles BtnTokuisakiKensaku.Click

        Try
            ' 郵便番号・県名・市町村名・町域名を取得し画面に表示
            Dim tokuisaki As New ClsTokuisaki(TxtTokuisakiCode.Text)
            LblTokuisakiMeisho.Text = tokuisaki.TokuisakiMeisho
            ' 都道府県と市区町村と住所詳細は","で区切って住所に保存してある
            Dim Jusho() As String
            Jusho = tokuisaki.TokuisakiJusho.Split(","c)
            LblTodofukenMei.Text = Jusho(0)
            LblShikuchosonMei.Text = Jusho(1)
            LblJusho.Text = Jusho(2)

            ' コントロールの有効・無効設定
            BtnSakujo.Enabled = True
            BtnClear.Enabled = True

        Catch ex As TokuisakiCodeException
            ' 得意先コードエラー処理
            MessageBox.Show(ex.Message, "得意先コードエラー")
            ' 得意先コードにフォーカス
            TxtTokuisakiCode.Focus()
        Catch ex As DBIOException
            MessageBox.Show(ex.Message, "DBIO例外発生")
        Catch ex As Exception
            ' その他例外発生時
            MessageBox.Show(ex.ToString, "例外発生")
        End Try

    End Sub

    '*******************************************************
    ' クリアボタンクリック処理
    '*******************************************************
    Private Sub BtnClear_Click(sender As Object,
          e As EventArgs) Handles BtnClear.Click

        ' フォーム初期設定
        ClearForm()

    End Sub

    '*******************************************************
    ' フォーム初期設定処理
    '*******************************************************
    Private Sub ClearForm()

        TxtTokuisakiCode.Text = Nothing
        LblYubinBango.Text = Nothing
        LblTokuisakiMeisho.Text = Nothing
        LblTodofukenMei.Text = Nothing
        LblShikuchosonMei.Text = Nothing
        LblJusho.Text = Nothing

        ' コントロールの有効・無効設定
        BtnTokuisakiKensaku.Enabled = True
        BtnSakujo.Enabled = False
        BtnClear.Enabled = False

    End Sub

End Class