带有多个字符串的JavaScript数组,用于将查询字符串传递给SSRS报告

带有多个字符串的JavaScript数组,用于将查询字符串传递给SSRS报告,javascript,reporting-services,Javascript,Reporting Services,我有一个应用程序,试图将URL查询字符串传递到SSRS报告 如果我只列出一个字符串,querystring接受该字符串,但是,当列出多个字符串时,querystring不接受JavaScript中的字符串并将其放入报表的参数中。我在下面展示我的JavaScript代码 我希望得到帮助来构建这个JavaScript,这样我就可以列出多个字符串,并让字符串填充查询字符串,从而填充SSRS报告 函数启动ssrsreport() { var AssignedTo=$('#linkAssignedTo'

我有一个应用程序,试图将URL查询字符串传递到SSRS报告

如果我只列出一个字符串,querystring接受该字符串,但是,当列出多个字符串时,querystring不接受JavaScript中的字符串并将其放入报表的参数中。我在下面展示我的JavaScript代码

我希望得到帮助来构建这个JavaScript,这样我就可以列出多个字符串,并让字符串填充查询字符串,从而填充SSRS报告

函数启动ssrsreport()
{
var AssignedTo=$('#linkAssignedTo').text();
AssignedTo=AssignedTo.trim();
var StartDateString=$('#pcDateImported').text();
StartDateString=StartDateString.trim();
var StartDate=新日期(StartDateString);
var startDateUrl=StartDate.getMonth()+1+“/”+StartDate.getDate()+“/”+StartDate.getFullYear();
var EndDate=新日期();
var endDateUrl=EndDate.getMonth()+1+“/”+EndDate.getDate()+“/”+EndDate.getFullYear();
//需要从应用程序传递状态
var Status=“Pending”;//仅用于测试
//风险值状态=[“待定,正在处理”];
var qs=getJsonFromUrl();
变量url=”https://urlofwebserver/ReportServer_SQL?/ParentFolder/Subfolder/ReportFolder/Report&StartDate=“+startDateUrl+”&EndDate=“+endDateUrl+”&AssignedTo=“+AssignedTo+”&Status=“+Status+”&SubmissionIds=“+qs[“id]”);
window.location.href=url;
}
函数getJsonFromUrl(){
var query=location.search.substr(1);
var result={};
query.split(“&”).forEach(函数(部分){
变量项=部分拆分(“”);
结果[项目[0]]=decodeURIComponent(项目[1]);
});
返回结果;

}
报告“不接受”值是什么意思?您收到的是错误报告还是空白报告?一旦连接的值到达报表,您将如何分离它们?参数将传递到querystring,但参数不会填充组合框。这一切都是在javascript中完成的。这个变量的不同之处在于,总共有23个字符串,在许多情况下,它们是多个单词字符串。使用这种方法会有很多问题,因为URL字符串必须编码(没有空格或其他特殊字符)。还有一个相对较低的字符限制。此外,您不能仅通过URL设置默认参数值。URL将包含一个分隔字符串,您必须使用报表中的表达式将其拆分为一个值数组。考虑传递一个IDS列表,然后在可能的情况下翻译报告中的IDS。