'请教下老师,如何才能让AR中的Detail显示这样的效果:
业务编号: 20080901 领货日期: 2008-09-01 领货人: 小陈
'------------------------------------------------------------------------------------------------------------------------------
收货日期: 2008-09-22 序号:1 货品名称:电路板A 单位:块 领货数量:20
收货日期: 2008-09-25 序号:2 货品名称:电路板A 单位:块 领货数量:15
收货日期: 2008-09-29 序号:3 货品名称:电路板A 单位:块 领货数量:65
'------------------------------------------------------------------------------------------------------------------------------
目前是否该语句错了呢,为何在AR中却显示成这样子了:
'------------------------------------------------------------------------------------------------------------------------------
业务编号: 20080901 领货日期: 2008-09-01 领货人: 小陈
'================================================================
收货日期: 2008-09-22 序号:1 货品名称:电路板A 单位:块 领货数量:20
'------------------------------------------------------------------------------------------------------------------------------
业务编号: 20080901 领货日期: 2008-09-01 领货人: 小陈
'================================================================
收货日期: 2008-09-25 序号:2 货品名称:电路板A 单位:块 领货数量:15
'------------------------------------------------------------------------------------------------------------------------------
业务编号: 20080901 领货日期: 2008-09-01 领货人: 小陈
'================================================================
收货日期: 2008-09-29 序号:3 货品名称:电路板A 单位:块 领货数量:65
'------------------------------------------------------------------------------------------------------------------------------SQL = "select 加工领货单.业务编号 as 业务编号,加工领货单.领货日期 as 领货日期,加工领货单.序号 as 序号," & _
"加工领货单.货品名称 as 货品名称,加工领货单.单位 as 单位,加工领货单.领货数量 as 领货数量," & _
"收货记录单.领取日期 as 领取日期,收货记录单.领取时间 as 领取时间,收货记录单.领取数量 as 领取数量 " & _
"from (加工领货单 left join 收货记录单 on 加工领货单.业务编号=收货记录单.业务编号 and 加工领货单.货品名称=收货记录单.货品名称) " & _
"where 加工领货单.业务编号='" & Form22.Label11.Caption & "'"'一个表是: "A表" 格式如下:
ID 业务编号 领货日期 领货人 序号 货品名称 单位 领货数量
1 20080901 2008-09-01 小陈 1 电路板A 块 100
'-----------------------------------------------------------------------------------------------
2 20080901 2008-09-01 小陈 2 电路板B 块 200
'-----------------------------------------------------------------------------------------------
3 20080901 2008-09-01 小陈 3 电路板C 块 300
'-----------------------------------------------------------------------------------------------
4 20080930 2008-09-30 小王 1 电路板A 块 50
'-----------------------------------------------------------------------------------------------
5 20080930 2008-09-30 小王 2 电路板B 块 150
'-----------------------------------------------------------------------------------------------
6 20080930 2008-09-30 小王 3 电路板C 块 250
'--------------------------------------------------------------------------------------------------'另一个表是: "B表" 格式如下:
ID 业务编号 收货日期 序号 货品名称 单位 领货数量
1 20080901 2008-09-22 1 电路板A 块 20
'-----------------------------------------------------------------------------------------------
2 20080901 2008-09-25 2 电路板A 块 15
'-----------------------------------------------------------------------------------------------
3 20080901 2008-09-29 3 电路板A 块 65
'-----------------------------------------------------------------------------------------------
业务编号: 20080901 领货日期: 2008-09-01 领货人: 小陈
'------------------------------------------------------------------------------------------------------------------------------
收货日期: 2008-09-22 序号:1 货品名称:电路板A 单位:块 领货数量:20
收货日期: 2008-09-25 序号:2 货品名称:电路板A 单位:块 领货数量:15
收货日期: 2008-09-29 序号:3 货品名称:电路板A 单位:块 领货数量:65
'------------------------------------------------------------------------------------------------------------------------------
目前是否该语句错了呢,为何在AR中却显示成这样子了:
'------------------------------------------------------------------------------------------------------------------------------
业务编号: 20080901 领货日期: 2008-09-01 领货人: 小陈
'================================================================
收货日期: 2008-09-22 序号:1 货品名称:电路板A 单位:块 领货数量:20
'------------------------------------------------------------------------------------------------------------------------------
业务编号: 20080901 领货日期: 2008-09-01 领货人: 小陈
'================================================================
收货日期: 2008-09-25 序号:2 货品名称:电路板A 单位:块 领货数量:15
'------------------------------------------------------------------------------------------------------------------------------
业务编号: 20080901 领货日期: 2008-09-01 领货人: 小陈
'================================================================
收货日期: 2008-09-29 序号:3 货品名称:电路板A 单位:块 领货数量:65
'------------------------------------------------------------------------------------------------------------------------------SQL = "select 加工领货单.业务编号 as 业务编号,加工领货单.领货日期 as 领货日期,加工领货单.序号 as 序号," & _
"加工领货单.货品名称 as 货品名称,加工领货单.单位 as 单位,加工领货单.领货数量 as 领货数量," & _
"收货记录单.领取日期 as 领取日期,收货记录单.领取时间 as 领取时间,收货记录单.领取数量 as 领取数量 " & _
"from (加工领货单 left join 收货记录单 on 加工领货单.业务编号=收货记录单.业务编号 and 加工领货单.货品名称=收货记录单.货品名称) " & _
"where 加工领货单.业务编号='" & Form22.Label11.Caption & "'"'一个表是: "A表" 格式如下:
ID 业务编号 领货日期 领货人 序号 货品名称 单位 领货数量
1 20080901 2008-09-01 小陈 1 电路板A 块 100
'-----------------------------------------------------------------------------------------------
2 20080901 2008-09-01 小陈 2 电路板B 块 200
'-----------------------------------------------------------------------------------------------
3 20080901 2008-09-01 小陈 3 电路板C 块 300
'-----------------------------------------------------------------------------------------------
4 20080930 2008-09-30 小王 1 电路板A 块 50
'-----------------------------------------------------------------------------------------------
5 20080930 2008-09-30 小王 2 电路板B 块 150
'-----------------------------------------------------------------------------------------------
6 20080930 2008-09-30 小王 3 电路板C 块 250
'--------------------------------------------------------------------------------------------------'另一个表是: "B表" 格式如下:
ID 业务编号 收货日期 序号 货品名称 单位 领货数量
1 20080901 2008-09-22 1 电路板A 块 20
'-----------------------------------------------------------------------------------------------
2 20080901 2008-09-25 2 电路板A 块 15
'-----------------------------------------------------------------------------------------------
3 20080901 2008-09-29 3 电路板A 块 65
'-----------------------------------------------------------------------------------------------
业务编号: 20080901 领货日期: 2008-09-01 领货人: 小陈
不要放在details中,根据你的需要放在group header或者page header或者report header中
放在group header中
收货日期: 2008-09-22 序号:1 货品名称:电路板A 单位:块 领货数量:20
放在details中
如果放在group header或者page header或者report header中 的话,那么一下的就不能继续被读到了
'-----------------------------------------------------------------------------------------------
2 20080901 2008-09-01 小陈 2 电路板B 块 200
'-----------------------------------------------------------------------------------------------
3 20080901 2008-09-01 小陈 3 电路板C 块 300
·在 ActiveReport 设计器上,右键菜单“Insert -> Group Header/Footer”;
·然后在 GroupHeader1 属性中,设好 DataSource,并且将 DateField 设为 “业务编号”;
·将字段 [业务编号]、[领货日期]、[领货人] 放在 GroupHeader1 上;
·GroupFooter1 的高度设为 0。
'-----------------------------------------------------------------------------------------------
2 20080901 2008-09-01 小陈 2 电路板B 块 200
'-----------------------------------------------------------------------------------------------
3 20080901 2008-09-01 小陈 3 电路板C 块 300
是这样的:让AR中的Detail显示这样的效果:
业务编号: 20080901 领货日期: 2008-09-01 领货人: 小陈
'------------------------------------------------------------------------------------------------------------------------------
货品名称 :电路板A 领货数量:100
'------------------------------------------------------------------------------------------------------------------------------'下面是每次收货的明细
收货日期: 2008-09-22 序号:1 货品名称:电路板A 单位:块 领货数量:20
收货日期: 2008-09-25 序号:2 货品名称:电路板A 单位:块 领货数量:15
收货日期: 2008-09-29 序号:3 货品名称:电路板A 单位:块 领货数量:65
'------------------------------------------------------------------------------------------------------------------------------
货品名称 :电路板B 领货数量:200
'------------------------------------------------------------------------------------------------------------------------------'如果没有收货的明细则显示这样了
货品名称 :电路板C 领货数量:300
业务编号: 20080901 领货日期: 2008-09-01 领货人: 小陈
group header2………………
货品名称 :电路板A 领货数量:100 details…………………………
收货日期: 2008-09-22 序号:1 货品名称:电路板A 单位:块 领货数量:20
收货日期: 2008-09-25 序号:2 货品名称:电路板A 单位:块 领货数量:15
收货日期: 2008-09-29 序号:3 货品名称:电路板A 单位:块 领货数量:65
·在 ActiveReport 设计器上,右键菜单“Insert -> Group Header/Footer”;
·然后在 GroupHeader2 属性中,设好 DataSource,并且将 DateField 设为 “货品名称”;
·将字段 [货品名称]、[领货数量] 放在 GroupHeader2 上;
·GroupFooter2 的高度设为 0。
够详细了吧。字段的显示靠绑定(也是 DataSource、DataField 两个属性)会自动填充,ActiveReport 的基本概念。
不好意思,
那如果我用这样的话可以吗?Private Sub ActiveReport_FetchData(EOF As Boolean)
'与记录集关联
'If rs.EOF = True Then Exit Sub
'EOF = False
Static i As Integer
i = i + 1
If rs.State = 1 Then
If i > rs.RecordCount Then 'RS.EOF
EOF = True
Exit Sub
Else
EOF = False
End IfFields("业务编号").Value = rs!业务编号
Fields("领货日期").Value = rs!领货日期
Fields("领货人").Value = rs!领货人
Fields("序号").Value = rs!序号
Fields("货品名称").Value = rs!货品名称
Fields("单位").Value = rs!单位
Fields("领货数量").Value = rs!领货数量
Fields("收货日期").Value = rs!收货日期
rs.MoveNext
End If
End Sub