- 主题
- 0
- 积分
- 0
- 贝壳
- 0 个
- 来自
- 云南曲靖
- 注册时间
- 2006-11-19
- 最后登录
- 2006-11-19
|
[公告]技术区5.1比赛作品发表专帖
单据查询
Option Explicit
Private Sub Form_Load()
Adodc1.ConnectionString = DataConnectString
Adodc1.Visible = False
制单时间.Year = Year(Date)
制单时间.Month = Month(Date)
制单时间.Day = Day(Date)
T制单时间.Text = "无限制"
T货物数量.Text = "无限制"
T其它金额.Text = "无限制"
End Sub
Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single)
End Sub
Private Sub 打印_Click()
ShowPrintDlg Adodc1, "单据查询"
End Sub
Private Sub 货物名称_DblClick()
On Error Resume Next
Dim sel As New 数据选择
sel.Adodc1.ConnectionString = DataConnectString
sel.Adodc1.RecordSource = "select 编号,货物名称,货物类别,货物规格 from 货物信息"
sel.title = "请选择货物名称"
sel.Show vbModal
If sel.result2 <> "" Then 货物名称.Text = sel.result2
Unload sel
End Sub
Private Sub 经办人_DblClick()
On Error Resume Next
Dim sel As New 数据选择
sel.Adodc1.ConnectionString = DataConnectString
sel.Adodc1.RecordSource = "select 编号,姓名 from 职员信息"
sel.title = "请选择经办人"
sel.Show vbModal
If sel.result2 <> "" Then 经办人.Text = sel.result2
Unload sel
End Sub
Private Sub 执行查询_Click()
If 单据名称.Text = "" Then MsgBox "请选择单据名称!": Exit Sub
Dim SQL As String
Dim 前缀 As String
Dim t As String
SQL = ""
On Error GoTo quit
t = Str(制单时间.Year) + "-" + Str(制单时间.Month) + "-" + Str(制单时间.Day)
If 单据名称.Text = "入库单" Then
SQL = "select 入库单.编号,货物信息.货物名称,货物信息.货物类别,货物信息.货物规格,职员信息.姓名 as 经办人,入库单.入库时间,入库单.入库单价,货物信息.计量单位,入库单.入库数量,(入库单.入库单价*入库单.入库数量) as 金额,供应商.供应商名称 as 供应商,仓库.仓库名称 as 存放仓库,入库单.定单状况,入库单.其它金额,入库单.备注 from 入库单,货物信息,职员信息,供应商,仓库 where 货物信息.编号=入库单.货物编号 and 职员信息.编号=入库单.经办人编号 and 供应商.编号=入库单.供应商编号 and 仓库.编号=入库单.仓库编号"
前缀 = "入库"
ElseIf 单据名称.Text = "出库单" Then
SQL = "select 出库单.编号,货物信息.货物名称,货物信息.货物类别,货物信息.货物规格,职员信息.姓名 as 经办人,出库单.出库时间,出库单.出库单价,货物信息.计量单位,出库单.出库数量,(出库单.出库单价*出库单.出库数量) as 金额,客户.客户名称 as 客户,仓库.仓库名称 as 存放仓库,出库单.定单状况,出库单.其它金额,出库单.备注 from 出库单,货物信息,职员信息,客户,仓库 where 货物信息.编号=出库单.货物编号 and 职员信息.编号=出库单.经办人编号 and 客户.编号=出库单.经办人编号 and 仓库.编号=出库单.仓库编号"
前缀 = "出库"
ElseIf 单据名称.Text = "借入单" Then
SQL = "select 借入单.编号,货物信息.货物名称,货物信息.货物类别,货物信息.货物规格,职员信息.姓名 as 经办人,借入单.借入时间,货物信息.计量单位,借入单.借入数量,供应商.供应商名称 as 供应商,仓库.仓库名称 as 存放仓库,借入单.定单状况,借入单.其它金额,借入单.备注 from 借入单,货物信息,职员信息,供应商,仓库 where 货物信息.编号=借入单.货物编号 and 职员信息.编号=借入单.经办人编号 and 供应商.编号=借入单.供应商编号 and 仓库.编号=借入单.仓库编号"
前缀 = "借入"
ElseIf 单据名称.Text = "借出单" Then
SQL = "select 借出单.编号,货物信息.货物名称,货物信息.货物类别,货物信息.货物规格,职员信息.姓名 as 经办人,借出单.借出时间,货物信息.计量单位,借出单.借出数量,供应商.供应商名称 as 供应商,仓库.仓库名称 as 存放仓库,借出单.定单状况,借出单.其它金额,借出单.备注 from 借出单,货物信息,职员信息,供应商,仓库 where 货物信息.编号=借出单.货物编号 and 职员信息.编号=借出单.经办人编号 and 供应商.编号=借出单.经办人编号 and 仓库.编号=借出单.仓库编号"
前缀 = "借出"
ElseIf 单据名称.Text = "调拔单" Then
SQL = "select 调拔单.编号,货物信息.货物名称,货物信息.货物类别,货物信息.货物规格,职员信息.姓名 as 经办人,调拔单.调拔时间,货物信息.计量单位,调拔单.调拔数量,仓库.仓库名称 as 原存放仓库,(select 仓库名称 from 仓库 where 编号=调拔单.目标仓库编号) as 目标仓库,调拔单.其它金额,调拔单.备注 from 调拔单,货物信息,职员信息,仓库 where 货物信息.编号=调拔单.货物编号 and 职员信息.编号=调拔单.经办人编号 and 仓库.编号=调拔单.原仓库编号"
前缀 = "调拔"
ElseIf 单据名称.Text = "报损单" Then
SQL = "select 报损单.编号,货物信息.货物名称,货物信息.货物类别,货物信息.货物规格,职员信息.姓名 as 经办人,报损单.报损时间,报损单.报损单价,货物信息.计量单位,报损单.报损数量,(报损单.报损单价*报损单.报损数量) as 金额,仓库.仓库名称 as 存放仓库,报损单.其它金额,报损单.备注 from 报损单,货物信息,职员信息,仓库 where 货物信息.编号=报损单.货物编号 and 职员信息.编号=报损单.经办人编号 and 仓库.编号=报损单.仓库编号"
前缀 = "报损"
End If
If SQL <> "" Then
If T制单时间.Text <> "无限制" Then
SQL = SQL + " and " + 前缀 + "时间" + T制单时间.Text + "#" + t + "#"
End If
If 经办人.Text <> "" Then
SQL = SQL + " and 职员信息.姓名 like " + "';%" + 经办人.Text + "%';"
End If
If 货物名称.Text <> "" Then
SQL = SQL + " and 货物信息.货物名称 like " + "';%" + 货物名称.Text + "%';"
End If
If T货物数量.Text <> "无限制" And 货物数量.Text <> "" Then
SQL = SQL + " and " + 前缀 + "单." + 前缀 + "数量" + T货物数量.Text + 货物数量.Text
End If
If T其它金额.Text <> "无限制" And 其它金额.Text <> "" Then
SQL = SQL + " and 其它金额" + T其它金额.Text + 其它金额.Text
End If
If 单据备注.Text <> "" Then
SQL = SQL + " and " + 前缀 + "单.备注 like " + "';%" + 单据备注.Text + "%';"
End If
Adodc1.RecordSource = SQL
Set DataGrid1.DataSource = Adodc1
Adodc1.Refresh
Dim i As Integer
For i = 0 To DataGrid1.Columns.count - 1
DataGrid1.Columns(i).width = Len(DataGrid1.Columns(i).caption) * 200
Next
End If
quit:
End Sub |
|