1

我有一个技术问题需要专家来帮助。 : - )如何在一个RDP类中应用两个查询

我在一个RDP类中使用了两个查询。因此,我宣布类似如下:

SRSReportQueryAttribute (querystr(QueryOne)), 
SRSReportQueryAttribute (querystr(QueryTwo)), 
SRSReportParameterAttribute(classstr(ContractClass)) 

从上面你会看到有两个疑问,一个类。

但是在RDP类的方法'processReport'中,我不能引用特定的查询。

一般的说法是:

query = this.parmQuery(); 

我想这样做是为了申报两个查询对象,第一个为QueryOney,第二个为QueryTwo。

谢谢。

回答

1

对不起,但你不能有多于一个SRSReportQueryAttributedata provider class由于你发现自己的原因。

我相信你可以要做的,就是让查询返回多个数据源,然后用SRSReportDataSetAttribute指定一个以上的getter方法。

我没有测试过,虽然:)

+0

你好1月你的建议是非常有用的。我还用我的高级技术问了这个问题,答案是相似的。我们在一个RDP类中不能有多个查询。 我想有两个查询,因为我需要两组'动态参数',它们在查询中自动设置'范围'。现在,我正在改变使用静态参数的方式(通过合同类) 感谢您的建议。 – axbaby

0

您可以在DP类中使用多个查询。 您的问题有一个简单的解决方案。 你不需要SRSReportQueryAttribute()在你的课堂上。 在您的DP类中尝试此代码。适用于我。

query = new Query(); 
    if (parameter) 
    {   
     query.addBaseQuery('query1');   
    } 
    else 
    {   
     query.addBaseQuery('query2'); 
    }