Office中国论坛/Access中国论坛

标题: [求助]如何打印子窗体中的多条件查询结果 [打印本页]

作者: szcsm    时间: 2006-2-23 20:13
标题: [求助]如何打印子窗体中的多条件查询结果
请问:

      利用LIKE模糊条件建立了查询表1,表1中的条件指向窗体1,窗体1中包含利用查询表1创建子窗体和条件,如何打印子窗体中符合条件记录,是直接写代码还是建立一个符合所有条件的通用报表。请版主及各位高手帮忙指点,我都快晕过去了!
作者: sgrshh29    时间: 2006-2-23 21:31
要简单的话,建一个与子窗体一样的通用报表。然后docmd.openreport "reportname",acviewpreview,,,me.subformname.form.filter

[此贴子已经被作者于2006-2-23 13:33:31编辑过]


作者: szcsm    时间: 2006-2-23 22:31
Private Sub 打印筛选_Click()
On Error GoTo Err_打印筛选_Click

    Dim strDocName As String

    strDocName = "入库查询分类报表"
    DoCmd.OpenReport strDocName, acViewNormal, "入库查询分类筛选"

Exit_打印筛选_Click:
    Exit Sub

Err_打印筛选_Click:
    MsgBox Err.Description
    Resume Exit_打印筛选_Click
   
End Sub

我用的这种方式,在入库查询分类筛选中用OR指定了各个查询条件(条件挺多的有7、8个),但打印的时候提示错误:‘该表达式输入错误,或太复杂以致不能估值。例如,一个数值表达式中可能含有太多复杂元素。实着将表达式的一部分赋值到变量将表答式简化’

是不是以下两个表的条件冲突了,请各位指点!!感谢!!

以下是入库查询分类筛选

SELECT 入库查询分类.*
FROM 入库查询分类
WHERE (((入库查询分类.来纱日期)=Forms!入库分类查询!来纱日期2))

Or (((入库查询分类.供应商名称)=Forms!入库分类查询!供应商2))

Or (((入库查询分类.原料名称)=Forms!入库分类查询!原料名称2))

Or (((入库查询分类.成份ID)=Forms!入库分类查询!成份2))

Or (((入库查询分类.支数ID)=Forms!入库分类查询!支数2))

Or (((入库查询分类.类别ID)=Forms!入库分类查询!类别2))

Or (((入库查询分类.色系ID)=Forms!入库分类查询!色系2))

Or (((入库查询分类.颜色ID)=Forms!入库分类查询!颜色2))

Or (((入库查询分类.色号)=Forms!入库分类查询!色号2))

Or (((入库查询分类.缸号)=Forms!入库分类查询!缸号2))

Or (((入库查询分类.入库月份)=Forms!入库分类查询!入库月份2));

以下是入库查询分类筛选的来源表

SELECT 原料入库.入库批号, 原料入库.来纱日期, 供应商.供应商名称, 原料.原料名称, 原料.成份ID, 原料.支数ID, 原料.类别ID, 原料.色系ID, 原料.颜色ID, 原料.色号, 原料.缸号, 原料.单位, 原料入库明细.来纱重, 原料入库明细.实收重, 原料入库.备注, Year([来纱日期]) & "年" & Month([来纱日期]) & "月" AS 入库月份
FROM (供应商 INNER JOIN 原料入库 ON 供应商.[供应商 ID] = 原料入库.供应商ID) INNER JOIN (原料 INNER JOIN 原料入库明细 ON 原料.原料ID = 原料入库明细.原料ID) ON 原料入库.入库批号 = 原料入库明细.入库批号
WHERE (((原料入库.入库批号) Like "*" & [Forms]![入库分类查询]![入库批号2] & "*")

AND ((原料入库.来纱日期) Like "*" & [Forms]![入库分类查询]![来纱日期2] & "*")

AND ((供应商.供应商名称) Like "*" & [Forms]![入库分类查询]![供应商2] & "*")

AND ((原料.原料名称) Like "*" & [Forms]![入库分类查询]![原料名称2] & "*")

AND ((原料.成份ID) Like "*" & [Forms]![入库分类查询]![成份2] & "*")

AND ((原料.支数ID) Like "*" & [Forms]![入库分类查询]![支数2] & "*")

AND ((原料.类别ID) Like "*" & [Forms]![入库分类查询]![类别2] & "*")

AND ((原料.色系ID) Like "*" & [Forms]![入库分类查询]![色系2] & "*")

AND ((原料.颜色ID) Like "*" & [Forms]![入库分类查询]![颜色2] & "*")

AND ((原料.色号) Like "*" & [Forms]![入库分类查询]![色号2] & "*")

AND ((原料.缸号) Like "*" & [Forms]![入库分类查询]![缸号2] & "*")

AND ((Year([来纱日期]) & "年" & Month([来纱日期]) & "月") Like "*" & [Forms]![入库分类查询]![入库月份2] & "*"))
ORDER BY 原料入库.入库批号;


作者: szcsm    时间: 2006-2-23 22:40
快点来帮帮忙吧!我这就给大家打酒买烟去[em04]
作者: 一点通    时间: 2006-2-23 23:15
看下刘小军的例子吧

http://www.office-cn.net/forum.php?mod=viewthread&tid=9226
作者: sgrshh29    时间: 2006-2-23 23:42
你的子窗体按条件查询时正常吗?好像筛选条件写的不是很那个,不然把你的文件上传看一看。

[此贴子已经被作者于2006-2-23 15:43:44编辑过]


作者: szcsm    时间: 2006-2-24 00:23
谢谢两位的指点!!

刘小军的例子正在看,十分感激!

子窗体按条件查询时正常都是正常的没有问题


作者: szcsm    时间: 2006-2-24 00:44
[attach]15982[/attach]

作者: szcsm    时间: 2006-2-24 00:46
Office蝙蝠侠及各位高手,楼上是我传的文件,请帮忙看一下。
作者: szcsm    时间: 2006-2-24 00:51
一点通:多谢给这么好的例子。

我已经看了,不过我的查询窗体是通过在查询中设置的条件,不是在查询按纽中写的代码,而且已经作了几个界面了,所以还是想用目前的方式看能不能找到解决的方法,其实看了刘小军的例子要比我现在做的好多了,受益非浅,再次感谢!
作者: 一点通    时间: 2006-2-24 01:23
其中有一个例子是符合你的要求的,认真看下吧
作者: szcsm    时间: 2006-2-24 01:26
快点来帮帮忙吧!酒也打了,烟也买了,我自己都快喝醉了[em05]
作者: szcsm    时间: 2006-2-24 01:27
好的,我在仔细看!
作者: 一点通    时间: 2006-2-24 01:32
就是这个例子,看一下查询的代码及预览报表的代码就行了

[attach]15983[/attach]

作者: szcsm    时间: 2006-2-24 02:03
感谢一点通、蝙蝠侠等各位高手的帮忙!我的问题解决了!

我现在的心情是:同大家畅饮300杯!!!

我的数据库还在制作中,如果我在有解决不了的难题,请大家能够再次帮忙!
作者: szcsm    时间: 2006-2-24 02:11
补充一下,我是用事例2解决的问题,只是原来我做的查询分类筛选是多余的,笨那[em13],

删除以后,用示例2的预览代码就可以了,事例3是更好的解决办法(我个人认为),如果大家以后遇到同样的问题直接用示例3的解决方法就可以了。我指的示例均为刘小军老师的示例。
作者: szcsm    时间: 2006-2-25 23:49
各位现在又遇到问题了,解决了按条件打印和导出的问题,并且可以在窗体中对符合条件的记录求和,可是如何在报表中对符合条件的记录求和呢?我是基于有条件求和的查询创建的子窗体,并基于该查询创建了报表,在这个报表中如何对符合条件的记录求和呢?[em06]
作者: skylark    时间: 2006-2-26 03:49
To szcsm:

http://www.office-cn.net/forum.php?mod=viewthread&tid=36719
作者: lxn709394    时间: 2007-8-31 21:16
标题: 看看
试看一下
............
作者: lisj    时间: 2007-12-2 17:38
看看谢谢了
作者: potato318    时间: 2007-12-2 19:57
看看看看看看看看看看
作者: citizzj    时间: 2009-3-7 18:54
学习下
作者: sherryhi    时间: 2009-4-24 21:54
学习了 10# szcsm x
作者: primist    时间: 2009-5-13 10:26
顶一个!这个问题我琢磨的好长时间!
作者: echo975    时间: 2009-5-14 16:14
学习认真学习
作者: playonthesun    时间: 2009-5-18 21:01
学习。。。 学习
作者: a59795923    时间: 2009-6-8 15:23
很好的课题




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3