通常,SSRS 中的大多数报表都是按需执行的。这意味着当用户请求报表时——首先,数据集中的查询会运行,然后会显示相应的报表。报表管理器中的整个过程称为处理选项。对于小型数据集,这可能是一种理想的方法。但对于大型数据集或长时间运行的查询呢?在这种情况下,您可以使用 SSRS 中的报表快照。
SSRS 中的快照是预先执行的报表,其中包含报表的布局信息和使用的数据集。您可以使用此快照选项根据计划存储报表数据。因此,您可以限制用户访问长时间运行的查询。
本文将通过示例向您展示在 SSRS 中创建快照的步骤。
在开始在 SSRS 中创建快照之前,我将打开我的报表管理器,以显示我们服务器上现有的报表。对于此 SSRS 快照演示,我们将使用先前创建的名为“在报表中插入分页符”的报表。因此,请参考该报表以了解 SSRS 报表数据。
在 SSRS 中创建报表快照
要创建分页符上的 SSRS 报表快照,请单击报表旁边的向下箭头以打开菜单项。请从菜单项中选择“管理”选项。

选择“管理”选项后,报表管理器会将您导航到一个新页面,其中包含以下选项卡。使用此页面管理此报表的高级设置。在“属性”选项卡下显示报表创建、用户、创建和修改日期以及报表大小。

SQL 报表服务中有两种快照类型:
- 报表执行快照:您可以使用“处理选项”选项卡创建此类型的 SSRS 快照。此类型的快照通过允许在指定时间(计划时间)执行查询来减少查询处理时间,从而非常有用。
- 报表历史快照:您可以使用“快照选项”选项卡创建此类型的快照。此类型的快照将在指定时间(计划时间)在“报表历史记录”选项卡中存储报表图表的副本。请参考“报表历史快照”文章以了解配置设置。
在本文中,我们将解释在 SSRS 中创建报表执行快照的过程。因此,让我通过选择“处理选项”选项卡向您展示处理选项的默认设置。
- 使用以下计划创建报表快照:此选项允许您配置计划选项——报表查询将在该计划时间处理。
- 在页面上单击“应用”按钮时创建报表快照:顾名思义,单击此页面底部的“应用”按钮后,它将创建快照。

让我向您展示 SSRS 快照选项页面的默认设置。我们将在下一篇文章中对其进行解释。

从上面的屏幕截图中,您可以看到它显示了一个错误消息:用于运行此报表的凭据未存储。让我解决该错误。
首先,导航到您为该报表使用的共享数据源,然后选择“管理”选项。
注意:以下步骤是创建快照、缓存报表或报表订阅的必选项。

选择“管理”选项后,将显示以下页面。默认情况下,从“属性”选项卡可以看出,此数据源使用 Windows 集成身份验证,这对于快照来说是不可以的。
- 安全地存储在报表服务器中的凭据:您必须指定登录数据源的用户名和密码。这些凭据将存储在报表中。
- Windows 集成身份验证:它会将当前用户的 Windows 凭据传递给外部服务器以连接数据源。
因此,请将选项更改为“安全地存储在报表服务器中的凭据”,并提供登录SQL Server 所需的凭据。

接下来,转到分页符报表的“处理选项”,然后选择“从报表快照呈现此报表”。这意味着当用户调用报表时,它将从快照加载。让我计划查询处理的时间。为此,请单击“配置”按钮。

单击“配置”按钮后,报表管理器会将您导航到一个新页面。您可以使用此页面来安排 SSRS 快照。
- 计划详细信息:使用此部分按小时、按天、按周、按月或一次性计划报表快照。别忘了注明开始时间。
- 开始日期:请指定您希望开始报表快照的日期。
- 停止此计划:您希望停止此快照的时间。

为了进行 SSRS 快照演示,我将计划在 2 分钟后执行。在实际使用中,它可能是每小时或每天一次。

单击“应用”关闭 SSRS 快照配置。

如您所见,这与报表历史记录无关。

让我运行分页符报表。无论您在两分钟内运行多少次,报表都将从快照呈现(而不是从实际数据集中呈现)。

每当您在报表管理器中安排某些内容时,服务器级别都会自动创建一个新作业。此作业会根据我们的计划自动执行。要查看计划选项,请右键单击作业并选择“属性”选项。
单击上下文菜单中的“属性”选项以打开以下窗口。请导航到“计划”选项卡以检查作业计划。

如您所见,它显示了我们在报表管理器中定义的计划属性。

让我向您展示作业的日志文件。如您所见,它每两分钟执行一次。
