📄 incheck.frm
字号:
End If
If comboy.Text = "" Then
MsgBox "请选择年份!", vbOKOnly + vbExclamation, ""
comboy.SetFocus
Exit Sub
End If
If combom.Text = "" Then
MsgBox "请选择月份!", vbOKOnly + vbExclamation, ""
combom.SetFocus
Exit Sub
End If
If combod.Text = "" Then
MsgBox "请选择日期!", vbOKOnly + vbExclamation, ""
combod.SetFocus
Exit Sub
End If
If MSFlexGrid1.Col <> 0 Then
MsgBox "请输入完整的物品信息!", vbOKOnly + vbExclamation, ""
Text5.SetFocus
Exit Sub
End If
sql = "select * from 入库单 where 入库单号='" & Text1.Text & "'"
rs_save.Open sql, conn, adOpenKeyset, adLockPessimistic
If rs_save.EOF Then
rs_save.AddNew
rs_save.Fields(0) = Trim(Text1.Text)
rs_save.Fields(1) = CDate(Trim(comboy.Text) & "-" & Trim(combom.Text) & "-" & Trim(combod.Text))
rs_save.Fields(2) = Trim(Combo1.Text)
rs_save.Fields(3) = Trim(Text2.Text)
rs_save.Fields(4) = Trim(Text3.Text)
rs_save.Fields(5) = Trim(Text4.Text)
If incheck1.Caption = "进库" Then '进出库标记
rs_save.Fields(6) = True
Else
rs_save.Fields(6) = False
End If
rs_save.Update
rs_save.Close
Else
MsgBox "入库单号重复!", vbOKOnly + vbExclamation, ""
Text1.SetFocus
Text1.Text = ""
rs_save.Close
Exit Sub
End If
sql = "select * from 车辆资料"
rs_save.Open sql, conn, adOpenKeyset, adLockPessimistic
For i = 1 To MSFlexGrid1.Row - 1
rs_save.AddNew
rs_save.Fields(0) = Trim(Text1.Text)
rs_save.Fields(1) = CDate(Trim(comboy.Text) & "-" & Trim(combom.Text) & "-" & Trim(combod.Text))
rs_save.Fields(2) = Trim(Combo1.Text)
MSFlexGrid1.Row = i
MSFlexGrid1.Col = 0
rs_save.Fields(3) = Trim(MSFlexGrid1.Text)
MSFlexGrid1.Col = 1
If incheck1.Caption = "出库" Then
s = "-" & Trim(MSFlexGrid1.Text)
rs_save.Fields(4) = CDbl(s)
Else
rs_save.Fields(4) = CDbl(Trim(MSFlexGrid1.Text))
End If
MSFlexGrid1.Col = 2
rs_save.Fields(5) = Trim(MSFlexGrid1.Text)
MSFlexGrid1.Col = 3
rs_save.Fields(6) = Trim(MSFlexGrid1.Text)
MSFlexGrid1.Col = 4
If incheck1.Caption = "出库" Then
s = "-" & Trim(MSFlexGrid1.Text)
rs_save.Fields(7) = CDbl(s)
Else
rs_save.Fields(7) = CDbl(Trim(MSFlexGrid1.Text))
End If
MSFlexGrid1.Col = 5
rs_save.Fields(8) = Trim(MSFlexGrid1.Text)
Next i
rs_save.Update
rs_save.Close
MsgBox "添加成功!", vbOKOnly + vbExclamation, ""
Unload Me
Exit Sub
saveerror:
MsgBox Err.Description
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
Private Sub Form_Load()
Dim sql As String
Dim i As Integer
On Error GoTo loaderror
sql = "select * from 车辆名称"
rs_checkname.CursorLocation = adUseClient
rs_checkname.Open sql, conn, adOpenKeyset, adLockPessimistic
sql = "select * from 供应商名称"
rs_custom.CursorLocation = adUseClient
rs_custom.Open sql, conn, adOpenKeyset, adLockPessimistic
While Not rs_custom.EOF
Combo2.AddItem rs_custom.Fields(0)
rs_custom.MoveNext
Wend
If Not rs_checkname.EOF Then
rs_checkname.MoveFirst
While Not rs_checkname.EOF '添加可选择的发货地
Combo1.AddItem rs_checkname.Fields(0)
rs_checkname.MoveNext
Wend
End If
comboy.AddItem 2002 '添加年份
comboy.AddItem 2003
comboy.AddItem 2004
comboy.AddItem 2005
For i = 1 To 12 '添加月份
combom.AddItem i
Next i
For i = 1 To 31 '添加日期
combod.AddItem i
Next i
setgrid
setgrid_head
Text5.Visible = False
clear_grid
Exit Sub
loaderror:
MsgBox Err.Description
End Sub
Private Sub Form_Unload(Cancel As Integer)
'关闭数据对象
rs_checkname.Close
rs_custom.Close
End Sub
Public Sub setgrid() '设置表格子程序
Dim i As Integer
On Error GoTo seterror
MSFlexGrid1.ScrollBars = flexScrollBarBoth
MSFlexGrid1.FixedCols = 0
MSFlexGrid1.Rows = row_num
MSFlexGrid1.Cols = col_num
MSFlexGrid1.SelectionMode = flexSelectionByRow
For i = 0 To row_num - 1
MSFlexGrid1.RowHeight(i) = 315
Next
For i = 0 To col_num - 1
MSFlexGrid1.ColWidth(i) = 1300
Next i
Exit Sub
seterror:
MsgBox Err.Description
End Sub
Public Sub setgrid_head()
On Error GoTo setheaderror
MSFlexGrid1.Row = 0
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = "车辆名称"
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = " 单价"
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = "数量"
MSFlexGrid1.Col = 3
MSFlexGrid1.Text = "单位"
MSFlexGrid1.Col = 4
MSFlexGrid1.Text = " 金额"
MSFlexGrid1.Col = 5
MSFlexGrid1.Text = "供应商名称"
Exit Sub
setheaderror:
MsgBox Err.Description
End Sub
Public Sub clear_grid()
Dim i As Integer, j As Integer
For i = 1 To row_num - 1
MSFlexGrid1.Row = i
For j = 0 To col_num - 1
MSFlexGrid1.Col = j
MSFlexGrid1.Text = ""
Next j
Next i
End Sub
Public Sub nextposition(ByVal r As Integer, ByVal c As Integer)
On Error GoTo nexterror
Text5.Width = MSFlexGrid1.CellWidth
Text5.Height = MSFlexGrid1.CellHeight
Text5.Left = MSFlexGrid1.Left + MSFlexGrid1.ColPos(c)
Text5.Top = MSFlexGrid1.Top + MSFlexGrid1.RowPos(r)
Text5.Text = MSFlexGrid1.Text
Text5.Visible = True
Text5.SetFocus
Exit Sub
nexterror:
MsgBox Err.Description
End Sub
Private Sub MSFlexGrid1_Click()
If Combo2.Visible = True Then
Exit Sub
End If
nextposition MSFlexGrid1.Row, MSFlexGrid1.Col
End Sub
Private Sub Text5_KeyPress(KeyAscii As Integer)
Dim i As Integer, j As Integer
Dim price As Double, coun As Integer
On Error GoTo texterror
If KeyAscii = keyenter Then
MSFlexGrid1.Text = Text5.Text
i = MSFlexGrid1.Row
j = MSFlexGrid1.Col
If j = 0 And Trim(Text5.Text) = "" Then
MsgBox "车辆名称不能为空", vbOKOnly + vbExclamation, ""
Text5.SetFocus
Exit Sub
End If
If j = 1 And Not IsNumeric(Text5.Text) Then
MsgBox "单价请输入数字!", vbOKOnly + vbExclamation, ""
Text5.SetFocus
Exit Sub
End If
If j = 2 And Not IsNumeric(Text5.Text) Then
MsgBox "数量请输入数字!", vbOKOnly + vbExclamation, ""
Text5.SetFocus
Exit Sub
End If
If j = 3 And Trim(Text5.Text) = "" Then
MsgBox "单位不能为空!", vbOKOnly + vbExclamation, ""
Text5.SetFocus
Exit Sub
End If
If j = 3 And Not IsNull(Text5.Text) Then
MSFlexGrid1.Col = 1 '金额由程序算出
price = CDbl(MSFlexGrid1.Text)
MSFlexGrid1.Col = 2
coun = CInt(MSFlexGrid1.Text)
MSFlexGrid1.Col = 4
MSFlexGrid1.Text = price * coun
MSFlexGrid1.Col = MSFlexGrid1.Col + 1
Text5.Visible = False
setcombo2 MSFlexGrid1.Row, MSFlexGrid1.Col
KeyAscii = 0
Exit Sub
End If
MSFlexGrid1.Col = MSFlexGrid1.Col + 1
KeyAscii = 0
nextposition MSFlexGrid1.Row, MSFlexGrid1.Col
End If
Exit Sub
texterror:
MsgBox Err.Description
End Sub
Public Sub setcombo2(ByVal r As Integer, ByVal c As Integer)
On Error GoTo seterror
Combo2.Width = MSFlexGrid1.CellWidth
Combo2.Left = MSFlexGrid1.Left + MSFlexGrid1.ColPos(c)
Combo2.Top = MSFlexGrid1.Top + MSFlexGrid1.RowPos(r)
Combo2.Text = MSFlexGrid1.Text
Combo2.Visible = True
Combo2.SetFocus
Exit Sub
seterror:
MsgBox Err.Description
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -