【问题标题】:How to automate SSRS reports using python in VS Code?如何在 VS Code 中使用 python 自动化 SSRS 报告?
【发布时间】:2021-02-04 03:33:18
【问题描述】:

我正在开展一个项目,我需要每月从 SSRS 报告服务生成近 40 份报告。我一直在尝试使用 python 使其自动化,但我在传递的 URL 中遗漏了一些东西。任何见解将不胜感激!

【问题讨论】:

  • 您需要显示一些代码,否则每个人都会猜测您缺少什么。
  • session.auth = HttpNtlmAuth(username= '' , password= '') 文件名 = 'C:\SSRS Reports\\report.pdf' 用户名 = "" 密码 = "" url = "http:///reportserver?/report/&ReportMonth=08&ReportYear=2020" r = requests.get(url, auth=HttpNtlmAuth('','' ) ) print(r.status_code) if r.status_code == 200: with open(filename, 'wb') as out: for bits in r.iter_content(): out.write(bits)

标签: python visual-studio reporting-services


【解决方案1】:

您的网址应包含以下内容:

http:// <reportservername>/ ReportServer?/ <nameofreport> ?<param1>=<value1>&<param2>=<value2> &rs:Format=PDF

您必须将所有“<...>”占位符替换为您的服务器和报告信息。

这是一个例子:https://servername/reportserver?/SampleReports/Employee Sales Summary&amp;EmployeeID=38&amp;rs:Format=PDF

此示例 URL 只是告诉 SSRS 获取文件夹 /SampleReports 中的 Employee Sales Summary 报告并传递参数 EmployeeID=38 并将报告呈现为 PDF 文件。

【讨论】:

  • session.auth = HttpNtlmAuth(username= '' , password= '') 文件名 = 'C:\SSRS Reports\\report.pdf' 用户名 = "" 密码 = "" url = "http:///reportserver?/report/&ReportMonth=08&ReportYear=2020" r = requests.get(url, auth=HttpNtlmAuth('','' ) ) print(r.status_code) if r.status_code == 200: with open(filename, 'wb') as out: for bits in r.iter_content(): out.write(bits) --我能得到 200从服务器。能够写入文件,但是当我尝试打开 pdf 文件时,我得到了这个..
  • --我可以从服务器获取 200。能够写入文件,但是当我尝试打开 pdf 文件时,我得到了这个..“Adobe 无法打开 report.pdf,因为它不是受支持的文件类型或文件已损坏。”
  • @Sia 检查您的 pdf 文件大小。它可能是零字节。
  • 只有 1 kb。猜猜它没有写任何东西。我在这里错过了什么吗?
  • 复制 URL 并将其粘贴到浏览器中。您是否收到了 pdf 文件,如果是,pdf 文件是否可以正常打开?
猜你喜欢
  • 2010-09-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-17
相关资源
最近更新 更多