📄 ps_partproductform.frm
字号:
currentrow = 1
Do While Not .EOF
If currentrow > HFG_materialList.Rows - 1 Then
HFG_materialList.AddItem ""
End If
'[>>自定义填充内容
HFG_materialList.TextMatrix(currentrow, 0) = Trim(.Fields("processNo"))
HFG_materialList.TextMatrix(currentrow, 1) = Trim(.Fields("processName"))
HFG_materialList.TextMatrix(currentrow, 2) = Trim(.Fields("bomName"))
HFG_materialList.TextMatrix(currentrow, 3) = "¥" & Trim(.Fields("fee"))
HFG_materialList.TextMatrix(currentrow, 4) = "¥" & Trim(.Fields("totalfee"))
HFG_materialList.TextMatrix(currentrow, 5) = "¥" & Trim(.Fields("bomCost"))
HFG_materialList.TextMatrix(currentrow, 6) = "¥" & Trim(.Fields("totalCost"))
HFG_materialList.TextMatrix(currentrow, 7) = Trim(.Fields("quantity"))
HFG_materialList.TextMatrix(currentrow, 8) = Trim(.Fields("finish"))
HFG_materialList.TextMatrix(currentrow, 9) = Trim(.Fields("madeBillNum"))
HFG_materialList.TextMatrix(currentrow, 10) = Trim(.Fields("psMaterialId"))
HFG_materialList.TextMatrix(currentrow, 11) = Trim(.Fields("psId"))
HFG_materialList.TextMatrix(currentrow, 12) = Trim(.Fields("bomId"))
HFG_materialList.TextMatrix(currentrow, 13) = Trim(.Fields("materialType"))
HFG_materialList.TextMatrix(currentrow, 14) = Trim(.Fields("materialId"))
HFG_materialList.TextMatrix(currentrow, 15) = Trim(.Fields("lossNum") & " ")
HFG_materialList.TextMatrix(currentrow, 16) = Trim(.Fields("counterclaimNum") & " ")
HFG_materialList.TextMatrix(currentrow, 17) = Trim(.Fields("backNum") & " ")
'<<]
'设置数据行高度(Fixed)
HFG_materialList.RowHeight(currentrow) = 200
'动态集指针加1,同时将计数器加1(Fixed)
.MoveNext
currentrow = currentrow + 1
Loop
End With
End If
Text1.text = m_recordset.RecordCount
m_recordset.Close
End If
HFG_materialList_SelChange ' 刷新设置完工情况面版的操作
End Sub
'**************************************
'* 功 能 描 述 :从数据库中读取BOM的各级子BOM 并把各子BOM的物料记录显示在列表中
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub ReadChildrenNodes(bomId As String)
Dim ret1 As Boolean
Dim rec As ADODB.Recordset ' 数据操作数据集对象
Dim materialRec As ADODB.Recordset ' 物料数据集对象
Set rec = New ADODB.Recordset
Set materialRec = New ADODB.Recordset
ret = m_bomDAO.FindDetailBom(rec, bomId) ' 到数据库查找其所有子BOM列表
If ret Then ' 如果找到明细则增加到树中
With rec
Do While Not .EOF
'[>>自定义填充内容
ReadChildrenNodes Trim(.Fields("bomId"))
' 找到此条明细的物料资料
ret1 = m_dao.FindSchemeMaterialByPsidPsbomid(materialRec, m_psId, Trim(.Fields("bomId")))
If ret1 Then
m_currentrow = m_currentrow + 1
If m_currentrow > HFG_materialList.Rows - 1 Then ' 对列表的行进行调整
HFG_materialList.AddItem ""
End If
' 读入数据
HFG_materialList.TextMatrix(m_currentrow, 0) = m_currentrow
HFG_materialList.TextMatrix(m_currentrow, 1) = Trim(materialRec.Fields("processName"))
HFG_materialList.TextMatrix(m_currentrow, 2) = Trim(materialRec.Fields("bomName"))
HFG_materialList.TextMatrix(m_currentrow, 3) = "¥" & Trim(materialRec.Fields("fee"))
HFG_materialList.TextMatrix(m_currentrow, 4) = "¥" & Trim(materialRec.Fields("totalfee"))
HFG_materialList.TextMatrix(m_currentrow, 5) = "¥" & Trim(materialRec.Fields("bomCost"))
HFG_materialList.TextMatrix(m_currentrow, 6) = "¥" & Trim(materialRec.Fields("totalCost"))
HFG_materialList.TextMatrix(m_currentrow, 7) = Trim(materialRec.Fields("quantity"))
HFG_materialList.TextMatrix(m_currentrow, 8) = Trim(materialRec.Fields("finish"))
HFG_materialList.TextMatrix(m_currentrow, 9) = Trim(materialRec.Fields("madeBillNum"))
HFG_materialList.TextMatrix(m_currentrow, 10) = Trim(materialRec.Fields("psMaterialId"))
HFG_materialList.TextMatrix(m_currentrow, 11) = Trim(materialRec.Fields("psId"))
HFG_materialList.TextMatrix(m_currentrow, 12) = Trim(materialRec.Fields("bomId"))
HFG_materialList.TextMatrix(m_currentrow, 13) = Trim(materialRec.Fields("materialType"))
HFG_materialList.TextMatrix(m_currentrow, 14) = Trim(materialRec.Fields("materialId"))
HFG_materialList.TextMatrix(m_currentrow, 15) = Trim(materialRec.Fields("lossNum") & " ")
HFG_materialList.TextMatrix(m_currentrow, 16) = Trim(materialRec.Fields("counterclaimNum") & " ")
HFG_materialList.TextMatrix(m_currentrow, 17) = Trim(materialRec.Fields("backNum") & " ")
'<<]
End If
materialRec.Close
'设置数据行高度(Fixed)
HFG_materialList.RowHeight(m_currentrow) = 200
'动态集指针加1,同时将计数器加1(Fixed)
.MoveNext
Loop
End With
End If
Text1.text = Trim(rec.RecordCount)
rec.Close
' Unload rec
End Sub
'**************************************
'* 功 能 描 述 :标注生产工序到生产物料清单
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub SetProcessNo()
Dim i As Integer
' 设置物料清单的生产工序编号
For i = 1 To HFG_materialList.Rows - 1
ret = m_dao.SetPsMaterialProcessNo(Trim(HFG_materialList.TextMatrix(i, 10)), i, _
Trim(m_partMaterialSet.Fields("psMaterialId")))
Next i
m_haveSetProcessNo = True ' 把是否设置工序编号改成真
End Sub
Private Sub Form_Resize()
HFG_materialList.Height = Me.Height - 1400
HFG_materialList.Width = Me.Width - 350
' Image1.Stretch = False
If (HFG_materialList.Height > HFG_materialList.Height - 300) Or (HFG_materialList.Width > HFG_materialList.Width - 200) Then
HFG_materialList.Height = HFG_materialList.Height + 400
HFG_materialList.Width = HFG_materialList.Width + 200
'
' Image1.Stretch = True
End If
End Sub
Private Sub HFG_materialList_DblClick()
' 单列
CooperateList
End Sub
Private Sub HFG_materialList_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
HFG_materialList_SelChange
End Sub
'**************************************
'* 功 能 描 述 :当选择的行改变时,把此物料的生产情况显示在状态栏
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub HFG_materialList_SelChange()
If Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 10)) <> "" Then
StatusBar1.Panels(1).text = "工序名称:" + Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 1)) + _
" 需要生产数量:" + Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 7)) + _
" 已下单数量:" + Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 9)) + _
" 完工数量:" + Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 8)) + _
" 报损数量:" + Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 15)) + _
" 索赔数量:" + Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 16)) + _
" 返工数量:" + Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 17))
End If
End Sub
'**************************************
'* 功 能 描 述 :工具栏按钮的单击操作按钮
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub SzToolbar_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Key
Case "bj" ' 调出生产此管理零件的所有外协生产单,并可以报警
AllCooperateList
Case "xd" ' 下外协生产单
ret = yhqxpd(MainForm.g_application.m_userId, COOPERATE_LIST)
If Not ret Then
MainForm.g_msgText = "该功能您无权操作!"
HMsgBox MainForm.g_msgText, 0, 1
Exit Sub
End If
CooperateBill
Case "dl" ' 外协生产单列表
ret = yhqxpd(MainForm.g_application.m_userId, COOPERATE_LIST)
If Not ret Then
MainForm.g_msgText = "该功能您无权操作!"
HMsgBox MainForm.g_msgText, 0, 1
Exit Sub
End If
CooperateList
Case "sx" ' 刷 新
refreshlist
Case "tc" ' 退 出
Unload Me
End Select
End Sub
'**************************************
'* 功 能 描 述 :调用生产此零件的所有生产外协单 ,并可以报警
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub AllCooperateList()
'
End Sub
'**************************************
'* 功 能 描 述 :调用生成生产外协单
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub CooperateBill()
If Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 10)) <> "" Then
CooperateSingleForm.m_operatorType = 0
CooperateSingleForm.m_productSchemeId = Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 11))
CooperateSingleForm.m_psbomId = HFG_materialList.TextMatrix(HFG_materialList.row, 12)
CooperateSingleForm.m_materialNum = CDbl(HFG_materialList.TextMatrix(HFG_materialList.row, 7)) - _
CDbl(HFG_materialList.TextMatrix(HFG_materialList.row, 9))
CooperateSingleForm.show 1
refreshlist
End If
End Sub
'**************************************
'* 功 能 描 述 :调出己生成的外协单的列表
'* 输 入 参 数 :无
'* 输 出 能 数 :无
'**************************************
Private Sub CooperateList()
If Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 10)) <> "" Then
CooperateListForm.m_operateType = 2
CooperateListForm.m_productSchemeId = Trim(HFG_materialList.TextMatrix(HFG_materialList.row, 11))
CooperateListForm.m_psbomId = HFG_materialList.TextMatrix(HFG_materialList.row, 12)
CooperateListForm.m_materialNum = CDbl(HFG_materialList.TextMatrix(HFG_materialList.row, 7)) - _
CDbl(HFG_materialList.TextMatrix(HFG_materialList.row, 9))
CooperateListForm.m_supplierid = ""
CooperateListForm.m_state = "0"
CooperateListForm.show
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -