📄 销售查询.frm
字号:
VERSION 5.00
Object = "{86CF1D34-0C5F-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCT2.OCX"
Object = "{5E9E78A0-531B-11CF-91F6-C2863C385E30}#1.0#0"; "MSFLXGRD.OCX"
Begin VB.Form frmXSCX
Caption = "商品销售查询"
ClientHeight = 7245
ClientLeft = 60
ClientTop = 345
ClientWidth = 11880
Icon = "销售查询.frx":0000
LinkTopic = "Form1"
ScaleHeight = 7245
ScaleWidth = 11880
WindowState = 2 'Maximized
Begin VB.CommandButton cmdExit
Cancel = -1 'True
Caption = "退 出"
Height = 375
Left = 7200
TabIndex = 11
Top = 1080
Width = 1095
End
Begin VB.CommandButton cmdOK
Caption = "开始查找"
Height = 375
Left = 7200
TabIndex = 10
Top = 600
Width = 1095
End
Begin VB.ComboBox cboType
Height = 300
ItemData = "销售查询.frx":0442
Left = 4680
List = "销售查询.frx":044C
TabIndex = 5
Text = "请选择"
Top = 600
Width = 1575
End
Begin MSComCtl2.DTPicker DTEnd
Height = 300
Left = 4680
TabIndex = 4
Top = 1200
Width = 1575
_ExtentX = 2778
_ExtentY = 529
_Version = 393216
CalendarBackColor= 16761024
CalendarTitleBackColor= 12648447
Format = 77725697
CurrentDate = 38034
End
Begin MSComCtl2.DTPicker DTStar
Height = 300
Left = 1320
TabIndex = 3
Top = 1200
Width = 1575
_ExtentX = 2778
_ExtentY = 529
_Version = 393216
CalendarBackColor= 16761024
CalendarTitleBackColor= 12648447
Format = 77725697
CurrentDate = 38034
End
Begin VB.ComboBox cboName
Height = 300
Left = 1320
TabIndex = 2
Text = "请选择"
Top = 600
Width = 1575
End
Begin MSFlexGridLib.MSFlexGrid flggrid
Height = 5775
Left = 0
TabIndex = 0
Top = 1560
Width = 11895
_ExtentX = 20981
_ExtentY = 10186
_Version = 393216
BackColorFixed = 14085351
BackColorBkg = 14939377
AllowUserResizing= 3
End
Begin VB.Label Label2
AutoSize = -1 'True
BackStyle = 0 'Transparent
Caption = "结束日期:"
Height = 180
Index = 3
Left = 3600
TabIndex = 9
Top = 1200
Width = 900
End
Begin VB.Label Label2
AutoSize = -1 'True
BackStyle = 0 'Transparent
Caption = "开始日期:"
Height = 180
Index = 2
Left = 360
TabIndex = 8
Top = 1200
Width = 900
End
Begin VB.Label Label2
AutoSize = -1 'True
BackStyle = 0 'Transparent
Caption = "查询方式:"
Height = 180
Index = 1
Left = 3600
TabIndex = 7
Top = 600
Width = 900
End
Begin VB.Label Label2
AutoSize = -1 'True
BackStyle = 0 'Transparent
Caption = "商品名称:"
Height = 180
Index = 0
Left = 360
TabIndex = 6
Top = 600
Width = 900
End
Begin VB.Label Label1
AutoSize = -1 'True
BackStyle = 0 'Transparent
Caption = "商品销售查询"
BeginProperty Font
Name = "宋体"
Size = 18
Charset = 134
Weight = 700
Underline = -1 'True
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H00800000&
Height = 360
Left = 4815
TabIndex = 1
Top = 0
Width = 2250
End
End
Attribute VB_Name = "frmXSCX"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim RS As Recordset
Dim sql As String
Public Sub Search()
'初始化MSFlexGrid
Dim i As Integer
flggrid.Clear '清空
flggrid.Cols = 5 '设置总列数
flggrid.Rows = 3
flggrid.FixedCols = 0 '固定列为0
flggrid.FixedRows = 2 '固定行为1
'设置每一列的宽度
flggrid.ColWidth(0) = flggrid.Width / 6
flggrid.ColWidth(1) = flggrid.Width / 5
flggrid.ColWidth(2) = flggrid.Width / 5
flggrid.ColWidth(3) = flggrid.Width / 5
flggrid.ColWidth(4) = flggrid.Width / 5
'设置列标题
flggrid.TextMatrix(0, 0) = "商品名称"
flggrid.TextMatrix(0, 1) = "销售数量"
flggrid.TextMatrix(0, 2) = "商品价格"
flggrid.TextMatrix(0, 3) = "销售类型"
flggrid.TextMatrix(0, 4) = "销售金额"
flggrid.Row = 0
For i = 0 To 4
flggrid.Col = i
flggrid.CellAlignment = 4
flggrid.CellFontBold = True
flggrid.CellFontSize = 10
flggrid.CellBackColor = vbYellow
Next i
flggrid.Row = 1
flggrid.RowHeight(0) = 350
For i = 0 To 4
flggrid.Col = i
flggrid.Text = " "
flggrid.BackColorFixed = vbBlack
Next i
flggrid.MergeCells = flexMergeFree
flggrid.MergeRow(1) = True
If RS.EOF = True Then
MsgBox "没有符合条件的记录"
Else
RS.MoveFirst ' 移动到记录集的第一条记录
' 使用循环将记录集中的记录写入表中,循环的退出条件是rs.eof
Do While Not RS.EOF ' Loops until the Recordset is at end. (EOF = End Of File)
flggrid.TextMatrix(flggrid.Rows - 1, 0) = RS.Fields(0).Value ' Set Grid Col 0 the data from Row 0
flggrid.TextMatrix(flggrid.Rows - 1, 1) = RS.Fields(1).Value ' Set Grid Col 1 the data from Row 1
flggrid.TextMatrix(flggrid.Rows - 1, 2) = RS.Fields(3).Value ' Set Grid Col 2 the data from Row 2
flggrid.TextMatrix(flggrid.Rows - 1, 3) = RS.Fields(2).Value ' Set Grid Col 3 the data from Row 3
flggrid.TextMatrix(flggrid.Rows - 1, 4) = RS.Fields(1).Value * RS.Fields(3).Value
flggrid.Rows = flggrid.Rows + 1 '给表加一行
RS.MoveNext ' 下一条记录
Loop
End If
flggrid.ColAlignment(0) = 4
flggrid.ColAlignment(3) = 4
flggrid.BackColor = &HC0FFFF
End Sub
Private Sub cmdExit_Click()
Unload Me
End Sub
Private Sub cmdOK_Click()
If cboType.Text = "分类汇总" Then
sql = "SELECT 库存表.商品名称, Sum(销售单.count) AS 销量合计, 销售单.type, 销售单.price From 库存表 INNER JOIN 销售单 ON 库存表.商品编号 = 销售单.code GROUP BY 库存表.商品名称, 销售单.outdate, 销售单.type, 销售单.price HAVING 库存表.商品名称='" & cboName.Text & "' AND 销售单.outdate Between #" & DTStar.Value & "# And #" & DTEnd.Value & "# ORDER BY 销售单.outdate"
Set RS = Db.OpenRecordset(sql)
Search
Exit Sub
End If
If cboType.Text = "查询明细" Then
sql = "SELECT 库存表.商品名称, 销售单.count, 销售单.type, 销售单.price FROM 库存表 INNER JOIN 销售单 ON 库存表.商品编号 = 销售单.code WHERE 库存表.商品名称='" & cboName.Text & "' AND 销售单.outdate Between #" & DTStar.Value & "# And #" & DTEnd.Value & "#"
Set RS = Db.OpenRecordset(sql)
Search
Exit Sub
End If
MsgBox "请先设定查询的条件"
End Sub
Private Sub Form_Load()
Set Db = OpenDatabase(App.Path + "\db1.mdb")
Set RS = Db.OpenRecordset("进货单")
Do While Not RS.EOF
cboName.AddItem RS.Fields("name")
RS.MoveNext
Loop
DTStar.Value = Date
DTEnd.Value = Date
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -