📄 main_htgl_jhgl.frm
字号:
Top = 870
Width = 11160
_ExtentX = 19685
_ExtentY = 6324
_Version = 393216
Rows = 1
Cols = 1
FixedRows = 0
FixedCols = 0
BackColor = 16777215
BackColorFixed = 8421504
ForeColorSel = 16777215
BackColorBkg = 16777215
GridColorFixed = 16777215
Enabled = 0 'False
FocusRect = 2
ScrollBars = 2
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 9
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.Frame Frame3
BackColor = &H80000018&
Height = 510
Left = 15
TabIndex = 16
Top = 4815
Width = 11130
Begin VB.TextBox sf
BackColor = &H00FFFFFF&
Height = 255
Left = 4170
TabIndex = 24
Top = 165
Width = 1725
End
Begin VB.TextBox wf
Appearance = 0 'Flat
BackColor = &H00C0C0C0&
ForeColor = &H000000FF&
Height = 240
Left = 6885
Locked = -1 'True
TabIndex = 23
Top = 195
Width = 1635
End
Begin VB.ComboBox Combo1
Height = 300
Left = 945
TabIndex = 22
Text = "Combo1"
Top = 150
Width = 2325
End
Begin VB.Label Label8
BackStyle = 0 'Transparent
Caption = "实付金额: 未付金额: 元"
Height = 255
Left = 3315
TabIndex = 26
Top = 210
Width = 5940
End
Begin VB.Label Label5
BackStyle = 0 'Transparent
Caption = "付款方式:"
Height = 240
Left = 60
TabIndex = 25
Top = 195
Width = 1020
End
End
Begin VB.Frame Frame6
Height = 510
Left = 30
TabIndex = 32
Top = 315
Width = 10830
Begin VB.TextBox gys
Height = 315
Left = 840
TabIndex = 34
Top = 150
Width = 9870
End
Begin VB.Label Label1
BackStyle = 0 'Transparent
Caption = "供货商"
ForeColor = &H00000000&
Height = 255
Left = 150
TabIndex = 35
Top = 210
Width = 735
End
End
End
Attribute VB_Name = "main_htgl_jhgl"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim rs1 As New ADODB.Recordset '定义数据集对象
Dim rs2 As New ADODB.Recordset '定义数据集对象
Dim rs3 As New ADODB.Recordset '定义数据集对象
Dim rs4 As New ADODB.Recordset '定义数据集对象
Dim rs5 As New ADODB.Recordset '定义数据集对象
Dim s, y, i, j '定义变量
Dim lsph As Integer '定义一个整型变量
Public Sub yfje_exp() '定义求应付金额的函数
'使用Format函数将数据格式为“0.00”格式
yfje.text = Format((Val(hjje.text) * (Val(zk.text) / 10)) + (Val(yfje.text) * (Val(sl.text) / 100)), "0.00")
End Sub
Private Sub Combo1_KeyPress(KeyAscii As Integer) '限制禁止输入
If KeyAscii = vbKeyReturn Then
sf.SetFocus
Else
KeyAscii = 0
End If
End Sub
Private Sub DataList1_Click() '单击添加供应商
gys.text = Trim(DataList1.BoundText)
DataList1.Visible = False
gys.SetFocus
End Sub
Private Sub DataList1_GotFocus() '获得焦点显示控件
DataList1.Visible = True
End Sub
Private Sub Form_Activate()
rkrq.text = Date '初始化进货日期
'向combo1添加付款方式列表
Combo1.AddItem ("现金") '添加列表项
Combo1.AddItem ("支票") '添加列表项
Combo1.AddItem ("欠账") '添加列表项
Combo1.ListIndex = 0 '设置当前选中项目
rs1.Open "select 员工姓名 from 员工信息表 group by 员工姓名", _
cnn, adOpenKeyset, adLockOptimistic '打开"员工信息表"
'添加经手人列表
If rs1.BOF = False Then rs1.MoveFirst 'rs1的记录集指针移到文件首
For i = 0 To rs1.RecordCount - 1 '设置循环值
jsr.AddItem (Trim(rs1.Fields("员工姓名"))) '向列表框jsr中添加列表项
rs1.MoveNext 'rs1的记录集指针移动到下一条记录
Next i '变量i值加1
If jsr.ListCount > 0 Then jsr.ListIndex = 0 '设置当前选中的列表项
rs1.Close '关闭表
rs2.Open "select 仓库名称 from 仓库信息表 group by 仓库名称", _
cnn, adOpenKeyset, adLockOptimistic '打开"仓库信息表"
'添加仓库列表
If rs2.BOF = False Then rs2.MoveFirst 'rs2的记录集指针移到文件首
For i = 0 To rs2.RecordCount - 1 '设置循环值
ck.AddItem (Trim(rs2.Fields("仓库名称"))) '向下拉列表框ck中添加列表项
rs2.MoveNext 'rs2的记录集指针移向下一条记录
Next i '变量i值加1
If ck.ListCount > 0 Then ck.ListIndex = 0 '设置当前选中的列表项
rs2.Close '关闭表
zk.text = "10" '设置折扣输入文本框的初始值为10
sl.text = "0" '设置税率输入文本框的初始值为0
DataList1.Visible = False '设置DataList1控件不可见
grid1.Visible = False '设置grid1控件不可见
ph.Enabled = False '设置ph控件不可用
gys.Enabled = False '设置gys控件不可用
rkrq.Enabled = False '设置rkrq控件不可用
Me.Caption = Me.Caption & " " & frm_main.St1.Panels(3).text '设置窗体的标题栏
End Sub
Private Sub Form_Load()
FormNumber = 1 '给全局变量赋值
Sql = "select * from 供应商信息表" '查询供应商信息
sqlStr = "select * from 商品基础信息表 where 商品级别<>'1级'" '查询商品基础信息
Call FunAdo(Adodc1, Sql) '调用ADO控件的执行函数
Call FunAdo(Adodc2, sqlStr) '调用ADO控件的执行函数
Set grid1.DataSource = Adodc2
MS1.Rows = 102: MS1.Cols = 8 '定义ms1表的总行数、总列数
s = Array("450", "2400", "1200", "750", _
"1200", "900", "1200", "2700") '定义一个整形数组
y = Array("序号", "商品名称", "商品编号", "单位", "单价", _
"数量", "金额", "备注") '定义一个字符数组
'循环为每一列设置宽度和表头
For i = 0 To 7 '设置计数值
MS1.ColWidth(i) = s(i): MS1.TextMatrix(0, i) = y(i)
Next i '变量i加1
MS1.FixedRows = 1 '设置固定行
MS1.FixedCols = 1 '设置固定列
'定义ms1表的列序号
For i = 1 To 101 '设置计数值
MS1.TextMatrix(i, 0) = i '定义ms1表的列序号
Next i '变量i加1
rkrq.text = Date '设置进货日期
End Sub
Private Sub Form_Unload(Cancel As Integer)
frm_main.Enabled = True
End Sub
Private Sub ck_KeyDown(KeyCode As Integer, Shift As Integer) '仓库文本框中输入回车换焦点
'VbKeyReturn常数为键盘上的"回车键"
If KeyCode = vbKeyReturn Then '按回车键焦点到ms1表格的第一行第一列
MS1.Row = 1: MS1.Col = 1
Text1.Visible = True 'text1可见
Text1.SetFocus 'text1获得焦点
End If
End Sub
Private Sub grid1_Click() '定义DataGrid的单击事件,显示相关项
'With语句用来在一个单一对象或一个用户定义类型上执一系列的语行句。
With Adodc2.Recordset
If .RecordCount > 0 Then '判断是否有记录
If .Fields("本级名称") <> "" Then
'赋值给ms1表格
If .Fields("本级名称") <> "" Then MS1.TextMatrix(MS1.Row, 1) = Trim(.Fields("本级名称"))
If .Fields("商品编号") <> "" Then MS1.TextMatrix(MS1.Row, 2) = Trim(.Fields("商品编号"))
If .Fields("单位") <> "" Then MS1.TextMatrix(MS1.Row, 3) = Trim(.Fields("单位"))
If .Fields("单价") <> "" Then MS1.TextMatrix(MS1.Row, 4) = .Fields("单价")
'赋值给text1
Text1.text = MS1.text
Text1.SetFocus
MS1.Col = 5
grid1.Visible = False
Else
MsgBox ("无数据选择!!!")
grid1.Visible = False
Text1.SetFocus
End If
End If
End With
Text1.SetFocus
End Sub
Private Sub gys_Change() '显示供应商的辅助录入项
Sql = "select * from 供应商信息表 where 供应商全称 like '" + Trim(gys.text) + "'+ '%'" & _
"or 简称 like '" + Trim(gys.text) + "'+ '%'" '查询供应商信息
Call FunAdo(Adodc1, Sql) '调用ADO控件的执行函数
Adodc1.Refresh '刷新ADO控件的记录集
DataList1.ReFill 'datalist1显示所有记录
'如果Adodc1控件的记录集不为空并且供应商文本框不为空,显示DataList1控件
If Adodc1.Recordset.RecordCount > 0 And gys.text <> "" Then DataList1.Visible = True
End Sub
Private Sub gys_KeyDown(KeyCode As Integer, Shift As Integer) '使用辅助录入项
If KeyCode = vbKeyReturn Then '按回车键DataList1不可见
DataList1.Visible = False
jsr.SetFocus
End If
If KeyCode = vbKeyPageDown Then '按PageDown键,datalist1显示所有记录
DataList1.ReFill
DataList1.Visible = True
DataList1.SetFocus
End If
End Sub
Private Sub grid1_KeyDown(KeyCode As Integer, Shift As Integer) '使用进货辅助项
If KeyCode = vbKeyReturn Then '如果输入<Enter>键
'With语句用来在一个单一对象或一个用户定义类型上执行一系列的语句。
With Adodc2.Recordset
If .RecordCount > 0 Then '如果记录集不为空
If .Fields("本级名称") <> "" Then '如果本级名称不为空
'赋值给MS1表格
If .Fields("本级名称") <> "" Then MS1.TextMatrix(MS1.Row, 1) = _
Trim(.Fields("本级名称")) '把本级名称赋值给MS1表格
If .Fields("商品编号") <> "" Then MS1.TextMatrix(MS1.Row, 2) = _
Trim(.Fields("商品编号")) '把商品编号赋值给MS1表格
If .Fields("单位") <> "" Then MS1.TextMatrix(MS1.Row, 3) = _
Trim(.Fields("单位")) '把单位名称赋值给MS1表格
If .Fields("单价") <> "" Then MS1.TextMatrix(MS1.Row, 4) = _
.Fields("单价") '把商品单价赋值给MS1表格
Text1.text = MS1.text '把MS1表格内容赋值给Text1
Text1.SetFocus '设置Text1获得焦点
MS1.Col = 5 '把焦点移到MS1的第5列
grid1.Visible = False '隐藏辅助输入项
Else '如果记录集为空
MsgBox ("无数据选择!!!") '提示错误信息
grid1.Visible = False '隐藏辅助输入项
Text1.SetFocus '设置Text1获得焦点
End If '结束If语句
End If '结束If语句
End With '结束With语句块
Text1.SetFocus '设置Text1获得焦点
End If '结束If语句
If KeyCode = vbKeyEscape Then '如果按<ESC>键
grid1.Visible = False '设置grid1不可见
Text1.SetFocus '设置Text1获得焦点
End If '结束If语句
End Sub
Private Sub DataList1_KeyDown(KeyCode As Integer, Shift As Integer) '用键盘控制供应商辅助列表项
'VbKeyReturn常数为键盘上的"回车键"
If KeyCode = vbKeyReturn Then
gys.text = Trim(DataList1.BoundText)
DataList1.Visible = False
gys.SetFocus
End If
End Sub
Private Sub gys_LostFocus() '隐藏供应商辅助输入项
DataList1.Visible = False
End Sub
Private Sub jsr_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then ck.SetFocus '按回车键ck获得焦点
End Sub
Private Sub MS1_Click() '单击ms1表格
If MS1.Row >= 1 And MS1.TextMatrix(MS1.Row - 1, 7) <> "" Then
Text1.Visible = True
Text1.SetFocus
End If
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -