注册 登录
编程论坛 C# 论坛

水晶报表 公式中使用 in 批量查询,采用参数传值,在预览中特别慢,如果我在公式中写死的两个值(和传两个值的数组比较),这是怎么回事呢?求告诉指点?

wanglei7958 发布于 2014-06-10 11:12, 554 次点击
水晶报表

选择专家——》显示公式-->记录选择区域

{TR_FREIGHT_BILL.FREIGHT_ID} in {@freight_id}

采用参数传值,在预览中输入两个值特别慢。
{TR_FREIGHT_BILL.FREIGHT_ID} in  ["YSZY-140601","YSZY-140602"]

如果我在公式中写死的两个值(和传两个值的数组比较)很快,这是怎么回事呢?
如何进行优化呢?我用的Oracle数据库。

预览特别慢,在我们的正式系统上,根本就打不开,一直是在加载中,没法实现分页和批量预览和打印功能。

[ 本帖最后由 wanglei7958 于 2014-6-10 11:20 编辑 ]
3 回复
#2
wangnannan2014-06-10 15:37
我认为跟报表无关 应该是跟你的SQL查询有关 你应该适当的优化一下 另外你能在详细的说一下 程序中是怎样调用报表传值的 我觉得应该跟那里的代码有关系
#3
wanglei79582014-06-10 19:08
亲,我没有使用sql查询,我用的公式。我还没有到程序中调用呢,我在制作报表的时候,就发现这个问题,而且不能解决。亲,先抛开程序调用报表,就是在制作报表的时候,点打印预览就非常慢的,请问这是什么原因,您知道吗?您可以试一下。
以下是是传参数方式,传进来@freight_id这个变量的定义:使用的crystal语法
numberVar i:=0;stringVar s:="";
for i:=1 to ubound({?freight_id})
do
   s:=s+{?freight_id}[i] + ",";
s

[ 本帖最后由 wanglei7958 于 2014-6-10 19:14 编辑 ]
#4
wangnannan2014-06-11 08:42
她这种情况和你类似 应该是绑定的问题
http://bbs.
别老说亲 亲的 别扭 这里不是淘宝你也不是卖家
1