📄 frmzz.frm
字号:
mrc.Update
mrc.Close
End If
Next intCount
'增加成品
txtSQL = "select sl,total_je from kucun where ckdm = '" & Trim(Combo1(3).ItemData(Combo1(3).ListIndex)) & "' and wzdm = '" & Trim(txtItem(2)) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If Not mrc.EOF Then
mrc.Fields(0) = mrc.Fields(0) + CDbl(txtItem(5))
mrc.Fields(1) = mrc.Fields(1) + CDbl(txtItem(6))
mrc.Update
mrc.Close
Else
txtSQL = "insert kucun (update_date,kucun_no,ckdm,wzdm,sl,total_je) values ('"
txtSQL = txtSQL & Trim(txtItem(0)) & "','"
txtSQL = txtSQL & Trim(txtItem(1)) & "','"
txtSQL = txtSQL & Trim(Combo1(3).ItemData(Combo1(3).ListIndex)) & "','"
txtSQL = txtSQL & Trim(txtItem(2)) & "','"
txtSQL = txtSQL & Trim(txtItem(5)) & "','"
txtSQL = txtSQL & Trim(txtItem(6)) & "')"
Set mrc = ExecuteSQL(txtSQL, MsgText)
End If
'添加出库纪录
For intCount = 1 To msgList.Rows - 1
txtSQL = "insert outh (out_date,ywman,outh_no,khdm,ckdm,wzdm,sl,out_danj,o_zk,o_zke,jsfk,jz,yf,bz1) Values ('"
txtSQL = txtSQL & Trim(txtItem(0)) & "','"
txtSQL = txtSQL & Trim(Combo1(0).ItemData(Combo1(0).ListIndex)) & "','"
txtSQL = txtSQL & Trim(txtItem(1)) & "','"
txtSQL = txtSQL & "zz','"
txtSQL = txtSQL & Trim(Combo1(2).ItemData(Combo1(2).ListIndex)) & "','"
txtSQL = txtSQL & Trim(msgList.TextMatrix(intCount, 4)) & "','"
txtSQL = txtSQL & Trim(CDbl(txtItem(5)) * CDbl(msgList.TextMatrix(intCount, 7))) & "','"
txtSQL = txtSQL & Trim(CDbl(msgList.TextMatrix(intCount, 8))) & "','"
txtSQL = txtSQL & "100','"
txtSQL = txtSQL & Trim(CDbl(txtItem(5)) * CDbl(msgList.TextMatrix(intCount, 7)) * CDbl(msgList.TextMatrix(intCount, 8))) & "','"
txtSQL = txtSQL & "Y','"
txtSQL = txtSQL & "N','"
txtSQL = txtSQL & "0','"
txtSQL = txtSQL & "组装')"
Set mrc = ExecuteSQL(txtSQL, MsgText)
Next intCount
'添加入库纪录
txtSQL = "insert inh (in_date,ywman,inh_no,gfdm,ckdm,wzdm,sl,in_danj,i_zk,i_zke,jsfk,jz,yf,bz1) Values ('"
txtSQL = txtSQL & Trim(txtItem(0)) & "','"
txtSQL = txtSQL & Trim(Combo1(0).ItemData(Combo1(0).ListIndex)) & "','"
txtSQL = txtSQL & Trim(txtItem(1)) & "','"
txtSQL = txtSQL & "zz','"
txtSQL = txtSQL & Trim(Combo1(3).ItemData(Combo1(3).ListIndex)) & "','"
txtSQL = txtSQL & Trim(txtItem(2)) & "','"
txtSQL = txtSQL & Trim(txtItem(5)) & "','"
txtSQL = txtSQL & Trim(txtItem(4)) & "','"
txtSQL = txtSQL & "100','"
txtSQL = txtSQL & Trim(txtItem(6)) & "','"
txtSQL = txtSQL & "Y','"
txtSQL = txtSQL & "N','"
txtSQL = txtSQL & "0','"
txtSQL = txtSQL & "组装')"
Set mrc = ExecuteSQL(txtSQL, MsgText)
MsgBox "组装成品成功!", vbOKOnly, "组装成品"
Unload Me
Else
Exit Sub
End If
End If
Else
MsgBox "没有指定产品的配料单,请首先设置该产品的配料单!", vbOKOnly, "警告"
Combo1(1).SetFocus
End If
End Sub
Private Sub Combo1_Click(Index As Integer)
If Index = 1 Then
txtSQL = "select dm,jldw,lsj from dm_wz where mc = '" & Trim(Combo1(1)) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If mrc.EOF = False Then
txtItem(2) = mrc.Fields(0)
txtItem(3) = mrc.Fields(1)
txtItem(4) = mrc.Fields(2)
End If
mrc.Close
txtSQL = "select m_no,wzdm1,wzmc1,wzdm2,wzmc2,jldw2,sl2,in_dj,jine,ywdm from mate where wzmc1 = '" & Trim(Combo1(1)) & "'"
ShowData
If msgList.Rows <= 1 Then
MsgBox "没有指定产品的配料单,请设置该产品的配料单!", vbOKOnly, "警告"
Combo1(1).SetFocus
End If
End If
End Sub
Private Sub Form_Load()
ShowTitle
txtItem(0) = Format(Now(), "yyyy-mm-dd")
txtItem(1) = GetRkno()
txtSQL = "select dm,mc from dm_ywy"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If mrc.EOF = False Then
Do While Not mrc.EOF
Combo1(0).AddItem mrc.Fields(1)
Combo1(0).ItemData(Combo1(0).NewIndex) = mrc.Fields(0)
mrc.MoveNext
Loop
End If
mrc.Close
txtSQL = "select mc from dm_wz"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If mrc.EOF = False Then
Do While Not mrc.EOF
Combo1(1).AddItem mrc.Fields(0)
mrc.MoveNext
Loop
End If
mrc.Close
txtSQL = "select dm,mc from dm_ck"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If mrc.EOF = False Then
Do While Not mrc.EOF
Combo1(2).AddItem mrc.Fields(1)
Combo1(2).ItemData(Combo1(2).NewIndex) = mrc.Fields(0)
Combo1(3).AddItem mrc.Fields(1)
Combo1(3).ItemData(Combo1(3).NewIndex) = mrc.Fields(0)
mrc.MoveNext
Loop
End If
mrc.Close
End Sub
Private Sub Form_Resize()
If Me.WindowState <> vbMinimized And fMainForm.WindowState <> vbMinimized Then
'边界处理
Frame1(0).Left = (Me.Width - Frame1(0).Width) / 2
Frame1(1).Top = 1680
Frame1(1).Width = Me.ScaleWidth - 200
Frame1(1).Left = Me.ScaleLeft + 100
Frame1(1).Height = Me.ScaleHeight - 2000
msgList.Top = 240
msgList.Width = Me.ScaleWidth - 500
msgList.Left = Frame1(1).Left + 10
msgList.Height = Frame1(1).Height - 400
End If
End Sub
Public Sub FormClose()
Unload Me
End Sub
Private Sub ShowData()
Dim j As Integer
Dim i As Integer
Dim MsgText As String
Set mrc = ExecuteSQL(txtSQL, MsgText)
With msgList
.Rows = 1
Do While Not mrc.EOF
.Rows = .Rows + 1
For i = 1 To mrc.Fields.Count
If Not IsNull(Trim(mrc.Fields(i - 1))) Then
Select Case mrc.Fields(i - 1).Type
Case adDBDate
.TextMatrix(.Rows - 1, i) = Format(mrc.Fields(i - 1) & "", "yyyy-mm-dd")
Case Else
.TextMatrix(.Rows - 1, i) = mrc.Fields(i - 1) & ""
End Select
End If
Next i
mrc.MoveNext
Loop
End With
mrc.Close
End Sub
'显示Grid表头
Private Sub ShowTitle()
Dim i As Integer
With msgList
.Cols = 12
.TextMatrix(0, 1) = "配料单编号"
.TextMatrix(0, 2) = "成品编号"
.TextMatrix(0, 3) = "成品名称"
.TextMatrix(0, 4) = "原材料编号"
.TextMatrix(0, 5) = "原材料名称"
.TextMatrix(0, 6) = "计量单位"
.TextMatrix(0, 7) = "数量"
.TextMatrix(0, 8) = "进货单价"
.TextMatrix(0, 9) = "总金额"
.TextMatrix(0, 10) = "业务员"
.TextMatrix(0, 11) = "备注信息"
'固定表头
.FixedRows = 1
'设置各列的对齐方式
For i = 0 To 11
.ColAlignment(i) = 0
Next i
'表头项居中
.FillStyle = flexFillRepeat
.Col = 0
.Row = 0
.RowSel = 1
.ColSel = .Cols - 1
.CellAlignment = 4
'设置单元大小
.ColWidth(0) = 1000
.ColWidth(1) = 1000
.ColWidth(2) = 2000
.ColWidth(3) = 1000
.ColWidth(4) = 1000
.ColWidth(5) = 1000
.ColWidth(6) = 1000
.ColWidth(7) = 1000
.ColWidth(8) = 1000
.ColWidth(9) = 1000
.ColWidth(10) = 1000
.ColWidth(11) = 1000
.Row = 1
End With
End Sub
Private Sub msgList_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
'右键弹出
If Button = 2 And Shift = 0 Then
End If
End Sub
Private Sub txtItem_Change(Index As Integer)
Dim intCount As Integer
'用于计算工资
Dim dblTotal As Double
'有变化设置gblchange
mblChange = True
If Trim(txtItem(4)) <> "" And Trim(txtItem(5) <> "") Then
If (Index = 5) Then
dblTotal = 0
dblTotal = CDbl(txtItem(4)) * CDbl(txtItem(5))
txtItem(6) = Format(dblTotal, "#0.00")
End If
End If
Exit Sub
End Sub
Private Sub txtItem_GotFocus(Index As Integer)
txtItem(Index).SelStart = 0
txtItem(Index).SelLength = Len(txtItem(Index))
End Sub
Private Sub txtItem_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
EnterToTab KeyCode
End Sub
Private Sub txtItem_KeyPress(Index As Integer, KeyAscii As Integer)
If Index = 5 Then
'MsgBox KeyCode
'对键入字符进行控制
'txtQuantity(Index).Locked = False
'小数点只允许输入一次
If KeyAscii = 190 Then
If InStr(Trim(txtItem(Index)), ".") = 0 Then
If Len(Trim(txtItem(Index))) > 0 Then
txtItem(Index).Locked = False
Else
txtItem(Index).Locked = True
End If
Else
txtItem(Index).Locked = True
End If
Exit Sub
End If
'非数字不能输入
If KeyAscii > 57 Or KeyAscii < 48 Then
txtItem(Index).Locked = True
Else
txtItem(Index).Locked = False
End If
'允许Backspace
If KeyAscii = 8 Then
txtItem(Index).Locked = False
End If
'Delete键
If KeyAscii = 46 Then
txtItem(Index).Locked = False
End If
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -