我已经创建了SSRS报告,并想通过添加日期来更改文件名。非常感谢您的帮助。
已经尝试过https://reportsyouneed.com/ssrs-adding-date-to-exported-filenames/解决方案,它不起作用。
答案 0 :(得分:2)
一个简单的选择可能是
为每次交付创建唯一文件的另一种方法是在文件名中包含时间戳。为此,请将@timestamp 变量添加到文件名(例如,CompanySales@timestamp)。使用这种方法,文件名根据定义是唯一的,因此永远不会被覆盖。
答案 1 :(得分:0)
对于此问题,我有一个完美的解决方案。 This link仅在导出之前不需要参数的情况下(很好)有效。
此链接中的代码会在您单击文件时尝试获取文件名,这意味着当下载尚未准备好并报告寻找初始输入时。
但是我的文件的开头有日期参数。 因此,我修改了代码以等待下载可用,并将其添加到“ C:\ Program Files \ Microsoft SQL Server \ MSRS10_50.MSSQLSERVER \ Reporting Services \ ReportManager \ js \ ReportingServices.js”文件的末尾
function ModifyExportFileName(){
var rv=null;
var r= null;
var today =new Date();
var day= ("0" + today.getDate()).slice(-2);
var month = ("0"+ (today.getMonth() + 1)).slice(-2);
var year = ("0"+ today.getFullYear()).slice(-2);
var text= "DD";
try{
rv=this.$find("ctl31");
r=rv._getInternalViewer();
var url=r.ExportUrlBase;
var i = url.indexOf("FileName=");
}
catch(err)
{
//console.log(err);
setTimeout(ModifyExportFileName,2000);
return;
}
if(r==null)
{
setTimeout(ModifyExportFileName,2000);
return;
}
else
{
var url=r.ExportUrlBase;
var i = url.indexOf("FileName=");
var j = url.indexOf("&",i+1);
var oldFileName= url.substring(i+9,j);
var filename=text.concat(year,month,day)
r.ExportUrlBase= url.substring(0,i) + 'FileName=' + filename+ url.substring(j);
}
//console.log(filename);
setTimeout(ModifyExportFileName,2000);
}
ModifyExportFileName();
我需要使用日期作为文件名,因此将日期添加为“文件名”。您可以根据需要进行更改