📄 mdlmerchandise.bas
字号:
Attribute VB_Name = "mdlMerchandise"
Option Explicit
'***********************************************************************
'* 过程名:AppendMerchandise
'* 功 能:追加新商品
'* 参 数:ListView 列表控件
'* 版 本:2006.01.03 颜志军 初版
'***********************************************************************
Public Sub AppendMerchandise(ByRef lvListViewCtl As ListView)
Dim opMerchandiseinfo As clsOpMerchandiseinfo
Set opMerchandiseinfo = New clsOpMerchandiseinfo
opMerchandiseinfo.AppendNewMerchandise g_currentUser
UpdateListViewInMerchandise lvListViewCtl
End Sub
'***********************************************************************
'* 过程名:EditMerchandise
'* 功 能:编辑商品信息
'* 参 数:ListView 列表控件
'* 版 本:2006.01.03 颜志军 初版
'***********************************************************************
Public Sub EditMerchandise(ByRef lvListViewCtl As ListView)
'变量定义
Dim currentSelMerchandiseString As String '当前选择商品ID
Dim currentSelMerchandiseInfo As clsMerchandiseinfo '当前选择商品
Dim opMerchandise As clsOpMerchandiseinfo '商品操作对象
'取得当前选择
If lvListViewCtl.SelectedItem Is Nothing Then
MsgBox "请选择要编辑的商品类别!", vbExclamation Or vbOKOnly, "警告"
Else
currentSelMerchandiseString = Trim(lvListViewCtl.SelectedItem.Text)
Set currentSelMerchandiseInfo = New clsMerchandiseinfo
If currentSelMerchandiseInfo.LoadById(CInt(currentSelMerchandiseString)) = DbOpRecExist Then
Set opMerchandise = New clsOpMerchandiseinfo
opMerchandise.EditMerchandise currentSelMerchandiseInfo, g_currentUser
lvListViewCtl.ListItems.Remove lvListViewCtl.SelectedItem.Index
UpdateListViewInMerchandise lvListViewCtl
Else
MsgBox "读取商品信息失败!", vbExclamation Or vbOKOnly, "警告"
End If
End If
End Sub
'***********************************************************************
'* 过程名:RemoveMerchandise
'* 功 能:删除商品
'* 参 数:ListView 列表控件
'* 版 本:2006.01.03 颜志军 初版
'***********************************************************************
Public Sub RemoveMerchandise(ByRef lvListViewCtl As ListView)
'变量定义
Dim currentSelMerchandiseString As String '当前选择商品ID
Dim currentSelMerchandiseInfo As clsMerchandiseinfo '当前选择商品
Dim opMerchandise As clsOpMerchandiseinfo '商品操作对象
If Not lvListViewCtl.SelectedItem Is Nothing Then
currentSelMerchandiseString = lvListViewCtl.SelectedItem.Text
If MsgBox("删除ID为[" & currentSelMerchandiseString & "]的商品吗?", _
vbQuestion Or vbYesNo, "询问") = vbYes Then
Set currentSelMerchandiseInfo = New clsMerchandiseinfo
If currentSelMerchandiseInfo.LoadById(CInt(currentSelMerchandiseString)) = DbOpRecExist Then
Set opMerchandise = New clsOpMerchandiseinfo
If opMerchandise.RemoveMerchandise(currentSelMerchandiseInfo, g_currentUser) Then
lvListViewCtl.ListItems.Remove lvListViewCtl.SelectedItem.Index
Exit Sub
End If
End If
MsgBox "删除商品失败!", vbExclamation Or vbOKOnly, "警告"
End If
Else
MsgBox "请先选择要删除的商品!", vbExclamation Or vbOKOnly, "警告"
End If
End Sub
'***********************************************************************
'* 过程名:IniListViewInMerchandise
'* 功 能:以商品列表初始化ListView
'* 参 数:ListView 列表控件
'* 版 本:2006.01.03 颜志军 初版
'***********************************************************************
Public Sub IniListViewInMerchandise(ByRef lvListViewCtl As ListView)
If g_listViewState = MERCHANDISELIST Then
UpdateListViewInMerchandise lvListViewCtl
Else
'变量定义
Dim merchandiseSet As clsMerchandiseinfoSet
Dim merchandise As clsMerchandiseinfo
Dim curListItem As ListItem
'取得商品类型集合
Set merchandiseSet = New clsMerchandiseinfoSet
'清除现有显示
lvListViewCtl.ColumnHeaders.Clear
lvListViewCtl.ListItems.Clear
'设定表头
lvListViewCtl.ColumnHeaders.Add , "商品ID", "商品ID"
lvListViewCtl.ColumnHeaders.Add , "商品名", "商品名"
lvListViewCtl.ColumnHeaders.Add , "所属类别", "所属类别"
lvListViewCtl.ColumnHeaders.Add , "备注", "备注"
'明细显示
For Each merchandise In merchandiseSet
Set curListItem = lvListViewCtl.ListItems.Add(, , CStr(merchandise.merchandiseId))
curListItem.SubItems(1) = merchandise.merchandiseName
curListItem.SubItems(2) = merchandise.kindName
curListItem.SubItems(3) = merchandise.remark
Next
End If
g_listViewState = MERCHANDISELIST
End Sub
'***********************************************************************
'* 过程名:UpdateListViewInMerchandise
'* 功 能:更新商品列表
'* 参 数:ListView 列表控件
'* 版 本:2006.01.03 颜志军 初版
'***********************************************************************
Public Sub UpdateListViewInMerchandise(ByRef lvListViewCtl As ListView)
'变量定义
Dim merchandiseSet As clsMerchandiseinfoSet
Dim merchandise As clsMerchandiseinfo
Dim curListItem As ListItem
Dim iLoop As Integer
'取得商品类型集合
Set merchandiseSet = New clsMerchandiseinfoSet
'明细更新
For Each merchandise In merchandiseSet
For iLoop = 1 To lvListViewCtl.ListItems.Count
If merchandise.merchandiseId = lvListViewCtl.ListItems.Item(iLoop).Text Then
GoTo CHECKAGAIN
End If
Next
Set curListItem = lvListViewCtl.ListItems.Add(, , CStr(merchandise.merchandiseId))
curListItem.SubItems(1) = merchandise.merchandiseName
curListItem.SubItems(2) = merchandise.kindName
curListItem.SubItems(3) = merchandise.remark
CHECKAGAIN:
Next
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -