ar10, HTML5Viewer 多值参数问题1
数据库是sqlserver1. 参数中定义了一个多值参数FormStatusID,integer类型,然后在sql查询中使用这个参数,发现预览始终没有查询结果,去掉这个参数查询就正常了
下面的用法不对吗,如何判断FormStatusID这个参数没有传入值或者是空值
。。。
(@FormStatusID is null or summ.StatusID in (@FormStatusID))
。。。
2. 页面上用HTML5Viewer,多值的情况下页面上应该怎么传参数,另外如果参数为空是传NULL还是就不传了?
var reportOption = {
id: 'Reports/TravelFormRdlReport.rdlx',
parameters: [
{
//单值的
name: 'FormID',
value: 14002
},
{
//多值的?
name: 'FormStatusID',
value: 1,2,3
}
]
};
谢谢! 问题收到了,制作Demo需要时间,制作完成立即为您回复。 您的第一个问题:SQL 语句与SQL Server的语法相同,为了测试是否为@FormStatusID传值,您可以尝试为它设置默认值。
第二个问题: 多值参数,见附件MultiValueParameter.html页面,报表数据库采用我们的测试数据库“NWind_CHS.mdb
多值参数是用数组表示的,因此Parameter的其他写法不变,只是在Value 传值时,换成数组;
parameters: [ {name:'ProductID',
value:
},
] },
特别注意:为参数传值时一定要注意参数数据类型,与所传值的类型需要一致。
如果参数为空或Null,您需要在创建报表参数时设置为“Null”,需要传空值。 如何传值明白了,谢谢
第一个问题还没解决,在没有传值的情况下,AR里的数据集的查询语句中,@FormStatusID不是null,用@FormStatusID is null 判断是false,它也不是字符串
如何判断没有传值呢 首先 #1 中的SQL 语句没有问题:(@FormStatusID is null or summ.StatusID in (@FormStatusID))
检测:拖拽参数 FormStatusID 到报表中,生成TextBox,预览或运行报表时,TextBox会输出FormStatusID值。可以用这个方法检测FormStatusID是否获取到值 已经解决了,谢谢 好的~~:hjyzw:
页:
[1]