📄 clsmtype.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 = "clsMType"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Attribute VB_Ext_KEY = "SavedWithClassBuilder6" ,"Yes"
Attribute VB_Ext_KEY = "Top_Level" ,"Yes"
Option Explicit
'保持属性值的局部变量
Private mvarID As Long '类型ID
Private mvarTypeName As String '类型名称
Private mvarRemark As String '备注
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 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 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 Function AddNew() As gxcAddNew
Dim strSQL As String
'检测输入名称是否存在
If ExistByName("MerchandiseType", "MT_Name_S", TypeName) Then
AddNew = DuplicateName_AddNew
Exit Function
End If
strSQL = "INSERT INTO MerchandiseType(MT_Name_S, MT_Remark_R) "
strSQL = strSQL & " VALUES("
strSQL = strSQL & "'" & TypeName & "'" '商品类型名
strSQL = strSQL & ",'" & Remark & "'" '备注
strSQL = strSQL & ")"
'执行SQL语句,并提交事务
g_Conn.Execute strSQL
'如果发生错误,则返回FALSE,表示未成功添加
If Err.Number = 0 Then
Me.ID = MaxID("MerchandiseType", "MT_ID_N")
AddNew = AddNewOK
Else
AddNew = AddNewFail
End If
End Function
Public Function Update() As gxcUpdate
Dim strSQL As String
'通过ID判断是否存在该记录,即该记录是否被其它商品端删除
'如果不存在该记录,则返回相应的操作结果给调用者
If Not ExistByID("MerchandiseType", "MT_ID_N", Me.ID) Then
Update = RecordNotExist
Exit Function
End If
'通过名称判断是否存在相同名称的记录,如果存在相同的名称,
'则返回调用者“存在相同名称”的信息
If ExistByNameExceptID("MerchandiseType", _
"MT_ID_N", Me.ID, _
"MT_NAME_S", Me.TypeName) Then
Update = DuplicateName_Update
Exit Function
End If
'构造SQL语句,注意需调用RealString函数去除字符串中的单引号
strSQL = "Update MerchandiseType SET "
strSQL = strSQL & "MT_NAME_S='" & RealString(Me.TypeName) & "',"
strSQL = strSQL & "MT_REMARK_R='" & Me.Remark & "' "
strSQL = strSQL & " WHERE MT_ID_N=" & Me.ID
g_Conn.Execute strSQL '执行SQL语句
'根据是否出错,返回给调用者相应的信息
Update = IIf(Err.Number = 0, UpdateOK, UpdateFail)
End Function
Public Function Delete(Optional lngID As Long = -1) As gxcDelete
Dim strSQL As String
'如果调用该函数时传入了ID,则更新该对象的ID
If lngID <> -1 Then Me.ID = lngID
'如果该商品类型下面有商品,则也不能删除
If ExistByID("Merchandise", "M_TypeID_N", Me.ID) Then
Delete = DeleteSubExists
Exit Function
End If
'执行删除操作并返回操作结果
strSQL = "DELETE FROM MerchandiseType "
strSQL = strSQL & " WHERE MT_ID_N=" & Me.ID
g_Conn.Execute strSQL
Delete = IIf(Err.Number = 0, DeleteOK, DeleteFail)
End Function
Public Function DeleteEx() As gxcDelete
Call Delete(Me.ID)
End Function
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -