削除画面ボタンクリック VB Web

マスター削除画面クラス:ボタンクリック処理

マスター削除ページの「得意先検索」ボタンクリック処理、「削除」ボタンクリック処理と、「クリア」ボタンクリック処理を実装します。

マスター削除フォーム

得意先検索ボタンをダブルクリックすると、"TokuisakiShokai.aspx.vb" ファイルが開くので、ここに得意先検索ボタンクリック処理を実装します。

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

得意先データ管理クラスClsTokuisakiのインスタンスを生成して、そのプロパティから得意先名・郵便番号・住所を取得後、ラベルのTextプロパティにセットする。

得意先データ管理クラスClsTokuisakiクラスは、データベースアクセスとフォーム(画面)クラスを仲介するクラスなので、フォームクラス実装者は、データベースの知識がなくてもプログラミングできます。同様に、得意先データ管理クラス実装者も、SQLなどデータベースの専門知識がなくても実装できます。

  • 得意先データ管理クラスClsTokuisakiクラスの実装

【削除ボタンクリック処理】

削除する得意先コードを引数に指定して、ClsDeleteTokuisakiクラスのインスタンスを生成し、DeleteRecord()メソッドを呼び出します。正常に削除されたときは、画面を初期化します。

なお、ClsDeleteTokuisakiクラスとDeleteRecord()メソッドは次のリンク先を参考にして実装してください。

  • ClsDeleteTokuisakiクラス
  • DeleteRecord()メソッド

【クリアボタンクリック処理】

フォーム(画面)を初期状態に戻す。

削除フォームfソースリスト:TokuisakiSakujo.aspx.vb

Partial Class TokuisakiSakujo
    Inherits System.Web.UI.Page

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

        Try
            Dim tokuisaki As New ClsTokuisaki(TxtTokuisakiCode.Text)
            TxtTokuisakiCode.Enabled = False
            LblTokuisakiMei.Text = tokuisaki.TokuisakiMei
            LblTokuisakiYubinBango.Text = tokuisaki.YubinBango
            LblTokuisakiJusho.Text = tokuisaki.TokuisakiJusho
            BtnKensaku.Enabled = False
            BtnSakujo.Enabled = True
            BtnSakujo.Focus()

        Catch ex As TokuisakiCodeException
            ' 得意先コード例外が発生した時の処理
            LblMessage.Text = ex.Message

        End Try

    End Sub

    '*******************************************************
    ' 得意先削除ボタンクリック処理
    '*******************************************************
    Protected Sub BtnSakujo_Click(sender As Object,
        ByRefe As EventArgs) Handles BtnSakujo.Click

        Try
            ' 得意先マスター表から削除
            Dim del As New ClsDeleteTokuisaki(TxtTokuisakiCode.Text)
            del.DeleteRecord()

            ' 正常終了メッセージ
            LblMessage.Text = "得意先マスター表から正常にレコード削除"

            ' 画面初期設定
            ClearForm()

        Catch ex As TokuisakiCodeException
            ' 得意先コードエラー
            LblMessage.Text = "得意先コード入力エラー"
            TxtTokuisakiCode.Focus()

        Catch ex As DBIOException
            ' DBアクセスクラス独自例外発生時
            LblMessage.Text = "DBIO例外発生"

        Catch ex As Exception
            ' その他例外発生時
            LblMessage.Text = "例外発生"

        End Try

    End Sub

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

        ' 画面初期設定
        ClearForm()

    End Sub

    '*******************************************************
    ' 画面初期設定
    '*******************************************************
    Private Sub ClearForm()

        TxtTokuisakiCode.Text = Nothing
        TxtTokuisakiCode.Enabled = True
        TxtTokuisakiCode.Focus()
        LblTokuisakiMei.Text = Nothing
        LblTokuisakiYubinBango.Text = Nothing
        LblTokuisakiJusho.Text = Nothing
        LblMessage.Text = Nothing
        BtnKensaku.Enabled = True
        BtnSakujo.Enabled = False

    End Sub

End Class