代码之家  ›  专栏  ›  技术社区  ›  Crezzer7

是否重命名文件以保存并下载为Sql Server报表的pdf格式?

  •  0
  • Crezzer7  · 技术社区  · 11 年前

    我有以下代码:

        var OrdID = screen.OrderRequest.OrderID;
        window.open("http://tempserver/ReportServer/Pages/ReportViewer.aspx?%2fCustomerOrder&rs:Command=Render&OrderID=" + OrdID + "&rs:Format=PDF");
    

    此代码位于从 临时雇员 服务器 并将其保存为 PDF格式 。它当前将其保存为名称“CustomerOrder”。。我的问题是,是否可以使用javascript将文件重命名为200(即订单号)

    谢谢各位

    2 回复  |  直到 11 年前
        1
  •  2
  •   Spitfire2k6    11 年前

    JavaScript不可能。在Stack Overflow上还有很多其他问题都在问同样的问题!

        2
  •  0
  •   Crezzer7    9 年前

    但是,可以使用C#参数,例如:

    var theURL=“ http://ReportServer/ReportServer_MYSERVER/Pages/ReportViewer.aspx?%2fPurchaseOrder&rs:Command=Render&OrderID=100&rs:ClearSession=true&rs:Format=PDF ";

    WebClient Client = new WebClient();
    Client.UseDefaultCredentials = true;
    
    byte[] myDataBuffer = Client.DownloadData(theURL);
    

    上面的代码允许将任何SSRS报告下载为字节数组。这意味着可以使用您选择的名称将其保存在指定位置:

    var filename = "Test.PDF";
    var fileStructureLocal = "C:\\Test";
    var fileStructureNetwork = "\\\\NetworkDrive\TestFolder";
    
    var fileLocation = fileStructureNetwork + "\\" + filename;
    
     if (System.IO.File.Exists(url) == true)
            {
                //DO NOTHING
            }
     else
            {
                System.IO.File.WriteAllBytes(url, myDataBuffer);
                //SAVE FILE HERE
            }
    

    下一个模块是如何重命名文件并指定位置。我还添加了一个检查,看看它是否已经存在,如果它存在,它就什么都不做了。

    我希望这能有所帮助,因为这是我长期以来一直在努力的事情!