【问题标题】:Showing HTML formated content in a SSRS report在 SSRS 报告中显示 HTML 格式的内容
【发布时间】:2015-08-13 10:45:24
【问题描述】:

我们需要使用 SSRS 为一组以前的开发人员开发的现有 Web 应用程序开发少量报告。因此,在不触及应用程序代码的情况下,我们将使用 SSRS 开发报告解决方案,因为应用程序的后端已经是 MS SQL Server。

在开发报告时,由于原始开发人员遵循的做法,我们遇到了一个问题。这基本上是一个在线考试门户,开发人员已将问题存储在数据库中,其中包含 HTML 格式,例如标签、样式表格式等。现在,当我们在 SSRS 网络报告(在表格中)中显示这些问题时,由于这些标签,它是不可读的。

所以我尝试使用单独的函数来摆脱这些标签并过滤掉实际问题。这并不成功,因为我们正在丢失问题的完整结构(项目符号、数字、换行符等)以及标签引用的所有图表。

在 SSRS 中,有没有办法开发像报告这样的网页,能够显示这种 html 格式的内容或显示表格单元格内的内容,根据各自的 html 格式格式化? 否则我们可能不得不花很大的力气手动开发 html 报告。

谁能提供您的反馈/解决方案。

谢谢。


以下是从数据库中提取的示例数据。您可以使用实时 html 查看器查看 HTML 中的实际问题 (http://htmledit.squarefree.com)

You will be given a grid (<i>n&nbsp;</i>x&nbsp;<i>n, n </i>&gt;<i> </i>0), which has been divided on each unit <Br>
length both horizontally and vertically (see the image), and you have to print out how many perfect squares <Br> 
(can be any size) are there in the given grid. <i>n</i> is the side length of the grid.<div><br></div><div> Your program must read an integer (<i>n, 0 &lt; n &lt;= 100,000</i>)
<table class="MsoTableGrid" style="border-collapse:collapse;border:none;mso-border-alt:solid windowtext .5pt;
 mso-yfti-tbllook:1184;mso-padding-alt:0in 5.4pt 0in 5.4pt" border="1" cellpadding="0" cellspacing="0">
 <tbody><tr>
  <td style="width:27.9pt;border:solid windowtext 1.0pt;
  mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt" valign="top" width="37">
  <p class="MsoNormal" style="margin-bottom: 0.0001pt;">1</p>
  </td>
  <td style="width:31.5pt;border:solid windowtext 1.0pt;
  border-left:none;mso-border-left-alt:solid windowtext .5pt;mso-border-alt:
  solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt" valign="top" width="42">
  <p class="MsoNormal" style="margin-bottom: 0.0001pt;">2</p>
  </td>
  <td style="width:27.0pt;border:solid windowtext 1.0pt;
  border-left:none;mso-border-left-alt:solid windowtext .5pt;mso-border-alt:
  solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt" valign="top" width="36">
  <p class="MsoNormal" style="margin-bottom: 0.0001pt;">3</p>
  </td>
 </tr>
 <tr>
  <td style="width:27.9pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0in 5.4pt 0in 5.4pt" valign="top" width="37">
  <p class="MsoNormal" style="margin-bottom: 0.0001pt;">4</p>
  </td>
  <td style="width:31.5pt;border-top:none;border-left:none;
  border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt" valign="top" width="42">
  <p class="MsoNormal" style="margin-bottom: 0.0001pt;">5</p>
  </td>
  <td style="width:27.0pt;border-top:none;border-left:none;
  border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt" valign="top" width="36">
  <p class="MsoNormal" style="margin-bottom: 0.0001pt;">6</p>
  </td>
 </tr>
 <tr>
  <td style="width:27.9pt;border:solid windowtext 1.0pt;
  border-top:none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
  padding:0in 5.4pt 0in 5.4pt" valign="top" width="37">
  <p class="MsoNormal" style="margin-bottom: 0.0001pt;">7</p>
  </td>
  <td style="width:31.5pt;border-top:none;border-left:none;
  border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt" valign="top" width="42">
  <p class="MsoNormal" style="margin-bottom: 0.0001pt;">8</p>
  </td>
  <td style="width:27.0pt;border-top:none;border-left:none;
  border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
  mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
  mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt" valign="top" width="36">
  <p class="MsoNormal" style="margin-bottom: 0.0001pt;">9</p>
  </td>
 </tr>
</tbody>
</table>

【问题讨论】:

    标签: html css sql-server reporting-services ssrs-2012


    【解决方案1】:

    我们可以通过在占位符属性中选择“HTML-将 html 标签解释为样式”来在 ssrs 中显示 html 内容。

    但是 SSRS 不支持您的 html 代码中存在的大多数样式。 SSRS 仅支持少数 html 标签和 CSS 样式。 您可以在此链接中找到它们。 https://msdn.microsoft.com/en-us/library/ff519562.aspx

    【讨论】:

    • 非常感谢您的快速回复。到目前为止,这有效。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多