📄 goodsmanager.frm
字号:
Private m_stockorderDAO As stockorderDAO
Public edit_goods As Integer '编辑商品-0--表示修改商品--1---表示增加商品
Public goods_id As String ' 商品编号
Public g_recordset As ADODB.Recordset
Dim q As Integer
Private m_idList As String ' 在执行查询时查询到的ID列表字符串
Private Sub showform()
MSHFlexGrid1.TextMatrix(0, 0) = "商品名称"
MSHFlexGrid1.TextMatrix(0, 1) = "代号"
MSHFlexGrid1.TextMatrix(0, 2) = "执行标准"
MSHFlexGrid1.TextMatrix(0, 3) = "材质"
MSHFlexGrid1.TextMatrix(0, 7) = "商品产地"
MSHFlexGrid1.TextMatrix(0, 5) = "小单位"
MSHFlexGrid1.TextMatrix(0, 6) = "大单位"
MSHFlexGrid1.TextMatrix(0, 4) = "规格"
MSHFlexGrid1.TextMatrix(0, 8) = "转换关系"
MSHFlexGrid1.TextMatrix(0, 9) = "预售价1"
MSHFlexGrid1.TextMatrix(0, 10) = "预售价2"
MSHFlexGrid1.TextMatrix(0, 11) = "预售价3"
MSHFlexGrid1.TextMatrix(0, 12) = "预售价4"
MSHFlexGrid1.TextMatrix(0, 13) = "预设进价"
MSHFlexGrid1.TextMatrix(0, 14) = "备注"
MSHFlexGrid1.TextMatrix(0, 15) = "商品编号"
'设置列对齐方式 7-右对齐 5-居中对齐 2-左对齐
MSHFlexGrid1.ColAlignment(0) = 2
MSHFlexGrid1.ColAlignment(1) = 2
MSHFlexGrid1.ColAlignment(2) = 2
MSHFlexGrid1.ColAlignment(3) = 2
MSHFlexGrid1.ColAlignment(4) = 2
MSHFlexGrid1.ColAlignment(5) = 2
MSHFlexGrid1.ColAlignment(6) = 2
MSHFlexGrid1.ColAlignment(7) = 2
MSHFlexGrid1.ColAlignment(8) = 2
MSHFlexGrid1.ColAlignment(9) = 2
MSHFlexGrid1.ColAlignment(10) = 2
MSHFlexGrid1.ColAlignment(11) = 2
MSHFlexGrid1.ColAlignment(12) = 2
MSHFlexGrid1.ColAlignment(13) = 2
MSHFlexGrid1.ColAlignment(14) = 2
MSHFlexGrid1.ColAlignment(15) = 2
MSHFlexGrid1.ColWidth(15) = 5
MSHFlexGrid1.ColWidth(7) = 5
MSHFlexGrid1.ColWidth(9) = 5
MSHFlexGrid1.ColWidth(10) = 5
MSHFlexGrid1.ColWidth(11) = 5
MSHFlexGrid1.ColWidth(12) = 5
MSHFlexGrid1.ColWidth(13) = 5
End Sub
Private Sub Form_Load()
SetToCenter Me
Set m_goodsDAO = New GoodsDAO
Set m_recordset = New ADODB.Recordset
Set m_stockorderDAO = New stockorderDAO
Set g_recordset = New ADODB.Recordset
Call showform
Call sxjl
End Sub
Private Sub Form_Resize()
MSHFlexGrid1.Height = Me.Height - 1400
MSHFlexGrid1.Width = Me.Width - 350
' Image1.Stretch = False
If (MSHFlexGrid1.Height > MSHFlexGrid1.Height - 300) Or (MSHFlexGrid1.Width > MSHFlexGrid1.Width - 200) Then
MSHFlexGrid1.Height = MSHFlexGrid1.Height + 400
MSHFlexGrid1.Width = MSHFlexGrid1.Width + 200
'
' Image1.Stretch = True
End If
End Sub
Private Sub MSHFlexGrid1_DblClick()
Dim ret As Boolean
ret = yhqxpd(MainForm.g_application.m_userId, Trim(str(GOODS_MODIFY))) ' 权限判断
If Not ret Then
MainForm.g_msgText = "该功能您无权操作!"
HMsgBox MainForm.g_msgText, 0, 1
Exit Sub
End If
edit_goods = 0 ' 传递参数--表示修改商品记录
If Trim(MSHFlexGrid1.TextMatrix(MSHFlexGrid1.row, 15)) <> "" Then
goods_id = Trim(MSHFlexGrid1.TextMatrix(MSHFlexGrid1.row, 15)) ' 选取MSHFlexGrid1的某一行的商品编号
newgoodsform.show 1
If q = 1 Then
RefreshQueryList
Else
sxjl
End If
Else ' 判断有没有选中MSHFlexgrid1的某一行
MainForm.g_msgText = "对不起您的操作有误,请重试!!"
Call HMsgBox(MainForm.g_msgText, 0, 1)
End If
End Sub
Private Sub SzToolbar_ButtonClick(ByVal Button As MSComctlLib.Button)
Dim ret As Boolean
Select Case Button.Key
Case "xz"
ret = yhqxpd(MainForm.g_application.m_userId, Trim(str(GOODS_NEW))) ' 权限判断
If Not ret Then
MainForm.g_msgText = "该功能您无权操作!"
HMsgBox MainForm.g_msgText, 0, 1
Exit Sub
End If
edit_goods = 1 ' 参数---表示增加商品记录
newgoodsform.show 1
sxjl
Case "sx"
q = 0
Call sxjl
Case "cx"
ret = yhqxpd(MainForm.g_application.m_userId, Trim(str(GOODS_CX))) ' 权限判断
If Not ret Then
MainForm.g_msgText = "该功能您无权操作!"
HMsgBox MainForm.g_msgText, 0, 1
Exit Sub
End If
Call cxjl
Case "sc"
ret = yhqxpd(MainForm.g_application.m_userId, Trim(str(GOODS_MODIFY))) ' 权限判断
If Not ret Then
MainForm.g_msgText = "该功能您无权操作!"
HMsgBox MainForm.g_msgText, 0, 1
Exit Sub
End If
Call delete
Call sxjl
Case "tc"
Unload Me
Case "xg"
ret = yhqxpd(MainForm.g_application.m_userId, Trim(str(GOODS_MODIFY))) ' 权限判断
If Not ret Then
MainForm.g_msgText = "该功能您无权操作!"
HMsgBox MainForm.g_msgText, 0, 1
Exit Sub
End If
edit_goods = 0 ' 传递参数--表示修改商品记录
If Trim(MSHFlexGrid1.TextMatrix(MSHFlexGrid1.row, 15)) <> "" Then
goods_id = Trim(MSHFlexGrid1.TextMatrix(MSHFlexGrid1.row, 15)) ' 选取MSHFlexGrid1的某一行的商品编号
newgoodsform.show 1
If q = 1 Then
RefreshQueryList
Else
sxjl
End If
Else ' 判断有没有选中MSHFlexgrid1的某一行
MainForm.g_msgText = "对不起您的操作有误,请重试!!"
Call HMsgBox(MainForm.g_msgText, 0, 1)
Exit Sub
End If
End Select
End Sub
Private Sub sxjl()
Dim ret As Boolean
ret = m_goodsDAO.goods_all(m_recordset)
MSHFlexGrid1.clear
MSHFlexGrid1.Rows = 2
Call showform
GetRecordToList m_recordset
m_recordset.Close
End Sub
Private Sub delete() ' 根据商品编号删除记录
Dim ret As Boolean
Dim f As Integer
If Trim(MSHFlexGrid1.TextMatrix(MSHFlexGrid1.row, 15)) = "" Then
MainForm.g_msgText = "请选择一条记录!!"
Call HMsgBox(MainForm.g_msgText, 0, 1)
End If
Dim ret4 As Boolean
ret4 = m_goodsDAO.judge_position_goods(g_recordset, Trim(MSHFlexGrid1.TextMatrix(MSHFlexGrid1.row, 15)))
If ret4 Then
MainForm.g_msgText = "该原料已经入库,不能删除!!"
Call HMsgBox(MainForm.g_msgText, 0, 1)
Exit Sub
g_recordset.Close
End If
MainForm.g_msgText = "确定删除这条记录吗?"
f = HMsgBox(MainForm.g_msgText, 2, 1)
If f = 1 Then
m_goodsDAO.goods_delete m_recordset, Trim(MSHFlexGrid1.TextMatrix(MSHFlexGrid1.row, 15))
End If
End Sub
Private Sub cxjl()
q = 1
QueryFom.m_currentQuery = QUERY_GOODS
QueryFom.m_operateType = 1
QueryFom.show vbModal
m_idList = MainForm.g_application.m_queryResultId
RefreshQueryList ' 显示查询到的结果
End Sub
Private Sub RefreshQueryList()
Dim ret As Boolean
' 显示查询到的结果
On Error GoTo EXITFUN
MainForm.g_application.m_databaseCon.m_adoConnection.BeginTrans ' 开始事务
InsertQueryIdList m_idList ' 把要显示的记录ID列表插入临时表
ret = m_goodsDAO.goods_showoneList(m_recordset) ' 查找记录
MainForm.g_application.m_databaseCon.m_adoConnection.CommitTrans ' 提交事务
MSHFlexGrid1.clear
MSHFlexGrid1.Rows = 2
Call showform
If ret Then
GetRecordToList m_recordset
End If
Text1.text = Trim(m_recordset.RecordCount)
m_recordset.Close
Exit Sub
EXITFUN:
MainForm.g_application.m_databaseCon.m_adoConnection.RollbackTrans ' 回滚事务
End Sub
'**************************************
'* 功 能 描 述 :从数据集中取出记录在列表中显示
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub GetRecordToList(recSet As ADODB.Recordset)
Dim currentrow As Integer
With m_recordset
currentrow = 1
Do While Not .EOF
If currentrow > MSHFlexGrid1.Rows - 1 Then
MSHFlexGrid1.AddItem ""
End If
MSHFlexGrid1.TextMatrix(currentrow, 0) = Trim(.Fields("name")) '商品名称
MSHFlexGrid1.TextMatrix(currentrow, 1) = Trim(.Fields("stripe")) '商品条码
MSHFlexGrid1.TextMatrix(currentrow, 2) = Trim(.Fields("acronym")) '商品简称
MSHFlexGrid1.TextMatrix(currentrow, 3) = Trim(.Fields("pattern")) '商品型号
MSHFlexGrid1.TextMatrix(currentrow, 7) = Trim(.Fields("madein")) '商品产地
MSHFlexGrid1.TextMatrix(currentrow, 5) = Trim(.Fields("smallunit")) '小单位
MSHFlexGrid1.TextMatrix(currentrow, 6) = Trim(.Fields("bigunit")) '大单位
MSHFlexGrid1.TextMatrix(currentrow, 4) = Trim(.Fields("specification")) '商品规格
MSHFlexGrid1.TextMatrix(currentrow, 8) = Trim(.Fields("switchrelation")) '转换关系
MSHFlexGrid1.TextMatrix(currentrow, 9) = Trim(.Fields("prepriceo")) '预售价1
MSHFlexGrid1.TextMatrix(currentrow, 10) = Trim(.Fields("prepricet")) '预售价2
MSHFlexGrid1.TextMatrix(currentrow, 11) = Trim(.Fields("prepriceth")) '预售价3
MSHFlexGrid1.TextMatrix(currentrow, 12) = Trim(.Fields("prepricef")) '预售价4
MSHFlexGrid1.TextMatrix(currentrow, 13) = Trim(.Fields("presetprice")) '预设进价
MSHFlexGrid1.TextMatrix(currentrow, 14) = Trim(.Fields("memo")) '备注
MSHFlexGrid1.TextMatrix(currentrow, 15) = Trim(.Fields("goodsid")) '商品编号
.MoveNext
currentrow = currentrow + 1
Loop
End With
Text1.text = Trim(m_recordset.RecordCount)
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -