⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clsgoods.cls

📁 <Visual Basic 数据库开发实例精粹(第二版)>一书首先介绍了Visual Basic(简称VB)开发的技巧和重点技术
💻 CLS
字号:
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "clsGoods"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Attribute VB_Ext_KEY = "SavedWithClassBuilder6" ,"Yes"
Attribute VB_Ext_KEY = "Top_Level" ,"Yes"
Option Explicit

Private mvarID As Long               '商品编号
Private mvarGoodsName As String      '商品名称
Private mvarAmount As Single         '库存数量
Private mvarUnitName As String       '单位
Private mvarTypeID As Long           '类型编号
Private mvarTypeName As String       '类型名称
Private mvarSupplierID As Long       '供货商编号
Private mvarSupplierName As String   '供货商名称
Private mvarIntroduce As String      '商品介绍
Private mvarRemark As String         '备注

Public Property Let SupplierID(ByVal vData As Long)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.SupplierID = 5
    mvarSupplierID = vData
End Property

Public Property Get SupplierID() As Long
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.SupplierID
    SupplierID = mvarSupplierID
End Property

Public Property Let TypeID(ByVal vData As Long)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.TypeID = 5
    mvarTypeID = vData
End Property

Public Property Get TypeID() As Long
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.TypeID
    TypeID = mvarTypeID
End Property

Public Property Let ID(ByVal vData As Long)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.ID = 5
    mvarID = vData
End Property

Public Property Get ID() As Long
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.ID
    ID = mvarID
End Property

Public Property Let UnitName(ByVal vData As String)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.UnitName = 5
    mvarUnitName = vData
End Property

Public Property Get UnitName() As String
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.UnitName
    UnitName = mvarUnitName
End Property

Public Property Let SupplierName(ByVal vData As String)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.SupplierName = 5
    mvarSupplierName = vData
End Property

Public Property Get SupplierName() As String
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.SupplierName
    SupplierName = mvarSupplierName
End Property

Public Property Let TypeName(ByVal vData As String)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.TypeName = 5
    mvarTypeName = vData
End Property

Public Property Get TypeName() As String
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.TypeName
    TypeName = mvarTypeName
End Property

Public Property Let Introduce(ByVal vData As String)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.Introduce = 5
    mvarIntroduce = vData
End Property

Public Property Get Introduce() As String
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.Introduce
    Introduce = mvarIntroduce
End Property

Public Property Let Remark(ByVal vData As String)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.ReMark = 5
    mvarRemark = vData
End Property

Public Property Get Remark() As String
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.ReMark
    Remark = mvarRemark
End Property

Public Property Let GoodsName(ByVal vData As String)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.GoodsName = 5
    mvarGoodsName = vData
End Property

Public Property Get GoodsName() As String
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.GoodsName
    GoodsName = mvarGoodsName
End Property

Public Property Let Amount(ByVal vData As Single)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.Amount = 5
    mvarAmount = vData
End Property

Public Property Get Amount() As Single
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.Amount
    Amount = mvarAmount
End Property

'添加商品信息
Public Function AddNew() As gxcAddNew
  On Error Resume Next

  '使用ADO的内置Command类来调用存储过程
  Dim cmd As New ADODB.Command
  
  '指定命令对象当前的活动连接
  cmd.ActiveConnection = g_Conn
  '指定命令类型为调用存储过程
  cmd.CommandType = adCmdStoredProc
  '指定命令文本,即要调用的存储过程名
  cmd.CommandText = "GoodsAddNew"
  
  '指定命令对象的参数
  cmd.Parameters("@GoodsName") = RealString(Me.GoodsName)
  cmd.Parameters("@Amount") = Me.Amount
  cmd.Parameters("@TypeID") = Me.TypeID
  cmd.Parameters("@UnitName") = RealString(Me.UnitName)
  cmd.Parameters("@SupplierID") = Me.SupplierID
  cmd.Parameters("@Introduce") = RealString(Me.Introduce)
  cmd.Parameters("@Remark") = RealString(Me.Remark)
  cmd.Parameters("@ID") = Null
  cmd.Parameters("@ReturnValue") = Null
  
  '执行命令
  cmd.Execute

  '由存储过程输出参数决定函数返回值 (自定义枚举)
  AddNew = cmd.Parameters("@ReturnValue").Value
  '获取添加成功后商品信息的ID值
  If AddNew = AddNewOK Then Me.ID = cmd.Parameters("@ID").Value
    
  '释放命令对象
  Set cmd = Nothing
End Function

'更新商品信息
Public Function Update() As gxcUpdate
  On Error Resume Next
  
  '使用ADO的内置Command类来调用存储过程
  Dim cmd As New ADODB.Command
  '为创建Command的参数而使用
  Dim param As ADODB.Parameter

  '指定命令对象当前的活动连接
  cmd.ActiveConnection = g_Conn
  '指定命令类型为调用存储过程
  cmd.CommandType = adCmdStoredProc
  '指定命令文本,即要调用的存储过程名
  cmd.CommandText = "GoodsUpdate"

  '创建参数并设置各参数的属性
  '以下是输入型参数
  Set param = cmd.CreateParameter("GoodsID", adInteger, adParamInput, 4, Me.ID)
  cmd.Parameters.Append param
  Set param = cmd.CreateParameter("GoodsName", adVarChar, adParamInput, 100, Me.GoodsName)
  cmd.Parameters.Append param
  Set param = cmd.CreateParameter("Amount", adSingle, adParamInput, 50, Me.Amount)
  cmd.Parameters.Append param
  Set param = cmd.CreateParameter("TypeID", adInteger, adParamInput, 4, Me.TypeID)
  cmd.Parameters.Append param
  Set param = cmd.CreateParameter("UnitName", adVarChar, adParamInput, 100, Me.UnitName)
  cmd.Parameters.Append param
  Set param = cmd.CreateParameter("SupplierID", adInteger, adParamInput, 4, Me.SupplierID)
  cmd.Parameters.Append param
  Set param = cmd.CreateParameter("Introduce", adVarChar, adParamInput, 1000, Me.Introduce)
  cmd.Parameters.Append param
  Set param = cmd.CreateParameter("Remark", adVarChar, adParamInput, 1000, Me.Remark)
  cmd.Parameters.Append param
  '以下是输出型参数
  Set param = cmd.CreateParameter("ReturnValue", adInteger, adParamOutput)
  cmd.Parameters.Append param

  '执行命令
  cmd.Execute

  '由存储过程输出参数决定函数返回值(自定义枚举)
  Update = cmd.Parameters("ReturnValue").Value


  '释放命令对象
  Set cmd = Nothing
End Function

'删除商品信息
Public Function Delete(lngID As Long) As gxcDelete
  On Error Resume Next
  
  '使用ADO的内置Command类来调用存储过程
  Dim cmd As New ADODB.Command
  '为创建Command的参数而使用
  Dim param As ADODB.Parameter

  '指定命令对象当前的活动连接
  cmd.ActiveConnection = g_Conn
  '指定命令类型为调用存储过程
  cmd.CommandType = adCmdStoredProc
  '指定命令文本,即要调用的存储过程名
  cmd.CommandText = "GoodsDelete"

  '创建参数并设置各参数的属性
  '以下是输入型参数
  Set param = cmd.CreateParameter("GoodsID", adInteger, adParamInput, 4, lngID)
  cmd.Parameters.Append param
  '以下是输出型参数
  Set param = cmd.CreateParameter("ReturnValue", adInteger, adParamOutput)
  cmd.Parameters.Append param

  '执行命令
  cmd.Execute

  '由存储过程输出参数决定函数返回值(自定义枚举)
  Delete = cmd.Parameters("ReturnValue").Value
 
  '释放命令对象
  Set cmd = Nothing
End Function

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -