得意先マスター追加派生クラス

Visual Basic ADO.NET [Community Express]

得意先追加派生クラスの実装

得意先追加派生クラスClsInsertTokuisakiは、得意先基本クラスClsTokuisakiBaseから派生したクラスです。

クラスメンバー

【得意先基本クラスメンバー】

基本クラスClsTokuisakiBaseに、得意先マスター表の選択・更新・削除・追加の共通処理メンバーを実装します。

  • 定数メンバー:得意先マスター表・得意先コード
  • 変数メンバー:得意先コード・得意先名・得意先郵便番号・得意先住所
  • プロパティ:得意先名・得意先郵便番号・得意先住所
  • メソッド:得意先コードエラーチェック

得意先基本クラスはこちら


【得意先追加派生クラスメンバー】

追加派生クラスClsInsertTokuisakiは、得意先マスター表にレコード追加するメンバーを実装します。

  • コンストラクタ
  • プロパティ:得意先コード
  • メソッド:得意先マスター表に1レコードを追加するメソッド
'///////////////// 派生クラス:得意先追加 //////////////////
Public Class ClsInsertTokuisaki
    Inherits ClsTokuisakiBase

    '=======================================================
    ' 機能:コンストラクタ
    ' 引数:得意先データ構造体
    '=======================================================
    Public Sub New(ByVal tokuisaki As TokuisakiData)

       ' 最初に基本クラスのコンストラクタを呼び出す
       MyBase.New()
       ' 登録する得意先マスターデータをセット
       TokuisakiCode = tokuisaki.tCode
       TokuisakiMeisho = tokuisaki.tName
       YubinBango = tokuisaki.tYuBango
       TokuisakiJusho = tokuisaki.tJusho

    End Sub

    '-------------------------------------------------------
    ' プロパティ:得意先コード
    '-------------------------------------------------------
    Public Property TokuisakiCode() As String

        ' Getプロパティ
        Get
            Return tokuisakiValue.tCode
        End Get

        ' Setプロパティ
        Set(ByVal tCode As String)
            ' 得意先コードエラーチェック
            CheckTokuisakiCode(tCode)
           ' 得意先マスター表からレコード取得
            Dim dbIO As New ClsHanbaiKanriDBIO(TABLE_NAME, KEY_FIELD, tCode)
            Dim dt As DataTable = dbIO.GetRowsData()
            If dt.Rows.Count = 0 Then
                ' レコードがなければ正常
                tokuisakiValue.tCode = tCode          ' 得意先コード
            Else
                ' レコードがあれば例外スロー
                Throw New TokuisakiCodeException _
                    ("この得意先コードは既に登録済みです")
            End If
        End Set

    End Property

  '**********************************************************
  ' 機能:得意先マスター表に1レコードを追加するメソッド
  ' 引数:なし
  ' 戻値:追加したレコード数
  '******1*********2*********3*********4*********5**********6
  Public Function InsertRecord() As Integer

      Dim retInsertCount As Integer            ' リターン値
      ' 得意先マスター表に1レコードを追加
      Dim tbIO As New ClsTokuisakiTableIO()
      retInsertCount = tbIO.InsertRecord(tokuisakiValue)
      ' ◆戻値を設定してリターン
      Return retInsertCount

  End Function

End Class