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

📄 clsprovider.cls

📁 《超市进销存管理系统的开发与实现》 2、开发工具 Microsoft Visual Basic 6.0 3、运行环境 (1)、硬件环境 486DX/66MHz或更高
💻 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 = "clsProvider"
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              '供货商编号
Private mvarProviderName As String  '供货商名称
Private mvarIntroduce 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 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 ProviderName(ByVal vData As String)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.ProviderName = 5
    mvarProviderName = vData
End Property


Public Property Get ProviderName() As String
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.ProviderName
    ProviderName = mvarProviderName
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("Provider", "P_Name_S", Me.ProviderName) Then
    AddNew = DuplicateName_AddNew
    Exit Function
  End If
 
  strSQL = "INSERT INTO Provider(P_Name_S, P_Introduce_S, P_Remark_R) "
  strSQL = strSQL & " VALUES("
  strSQL = strSQL & "'" & Me.ProviderName & "'"   '供货商名称
  strSQL = strSQL & ",'" & Me.Introduce & "'"     '供货商简介
  strSQL = strSQL & ",'" & Me.Remark & "'"        '备注
  strSQL = strSQL & ")"
  
  '执行SQL语句
  g_Conn.Execute strSQL
  
  '如果发生错误,则返回FALSE,表示未成功添加
  If Err.Number = 0 Then
    Me.ID = MaxID("Provider", "P_ID_N")
    AddNew = AddNewOK
  Else
    AddNew = AddNewFail
  End If
  
End Function

Public Function Update() As gxcUpdate
  Dim strSQL As String
  
  '通过ID判断是否存在该记录,即该记录是否被其它商品端删除
  '如果不存在该记录,则返回相应的操作结果给调用者
  If Not ExistByID("Provider", "P_ID_N", Me.ID) Then
    Update = RecordNotExist
    Exit Function
  End If
  
  '通过名称判断是否存在相同名称的记录,如果存在相同的名称,
  '则返回调用者“存在相同名称”的信息
  If ExistByNameExceptID("Provider", _
                      "P_ID_N", Me.ID, _
                      "P_NAME_S", Me.ProviderName) Then
    Update = DuplicateName_Update
    Exit Function
  End If
  
  '构造SQL语句,注意需调用RealString函数去除字符串中的单引号
  strSQL = "Update Provider SET "
  strSQL = strSQL & "P_NAME_S='" & RealString(Me.ProviderName) & "',"
  strSQL = strSQL & "P_Introduce_S='" & RealString(Me.Introduce) & "',"
  strSQL = strSQL & "P_Remark_R='" & Me.Remark & "' "
  strSQL = strSQL & " WHERE P_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
  '以下四个操作要同时发生
  g_Conn.BeginTrans
  
  '删除Buy表中的相关记录
  strSQL = "DELETE FROM Buy WHERE B_ProviderID_N=" & Me.ID
  g_Conn.Execute strSQL
  '删除Provider表中的相关记录
  strSQL = "DELETE FROM Provider WHERE P_ID_N=" & Me.ID
  g_Conn.Execute strSQL
  
  g_Conn.CommitTrans
  '如果发生错误,则返回FALSE,表示未删除成功
  Delete = IIf(Err.Number = 0, DeleteOK, DeleteFail)
  
End Function


Public Function DeleteEx() As gxcDelete
  DeleteEx = Delete(Me.ID)
End Function

⌨️ 快捷键说明

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