KB2490555-修复:如果 "工作时间" 设置为 "结束时间",则每天在 SQL Server 2008 R2 PowerPivot for SharePoint 中不会发生数据更新

Microsoft 以一个可下载文件的形式分发 Microsoft SQL Server 2008 R2 修补程序。 由于修补程序是累积的,因此每个新版本都包含了以前的 SQL Server 2008 R2 修补程序版本附带的所有修补程序和所有安全修补程序。

症状

请考虑以下情况:

  • 在计算机上安装和配置 Microsoft SQL Server 2008 R2 PowerPivot for SharePoint。

  • 将 Excel PowerPivot 工作簿发布或上载到 PowerPivot 库。

  • 你可以配置 PowerPivot 服务应用程序设置以定义跨一天边界的营业时间。 例如,你将工作时间的开始时间指定为 6:00 am ,而将结束时间指定为下一天的 2:00 am 。

  • 为工作簿启用数据更新。

  • 将数据更新安排为每天运行,并将时间安排到工作时间 最早的开始时间。

在这种情况下,数据会在每隔一天(而不是每天)更新。

原因

出现此问题的原因是 Microsoft SQL Server PowerPivot for SharePoint 处理下一个计划的运行不正确。

解决方案

累积更新信息

SQL Server 2008 R2

此问题的修补程序首次在累积更新6中发布。有关如何为 SQL Server 2008 R2 获取此累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2489376 SQL Server 2008 R2 的累积更新包6 注意 由于这些版本是累积的,因此每个新的修复版本都包含了以前的 SQL Server 2008 R2 修补程序版本附带的所有修补程序和所有安全修补程序。 我们建议你考虑应用包含此修补程序的最新修复版本。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

981356 发布 SQL Server 2008 R2 后发布的 SQL Server 2008 R2 版本

解决方法

若要解决此问题,请在满足以下条件之一时应用累积更新:

  • 您没有 PowerPivot 服务应用程序。

  • 你可以删除现有 PowerPivot 服务应用程序,然后可以创建一个新的。

如果你已有 PowerPivot 服务应用程序,并且不能除去然后创建新的应用,请运行以下 Transact-sql 脚本来解决此问题。 此脚本将更新 [DataRefresh]. [ProcessNextScheduledRun] 针对 PowerPivot 服务应用程序数据库的存储过程。

IF OBJECT_ID ( '[DataRefresh].[ProcessNextScheduledRun]', 'P' ) IS NOT NULL     DROP PROCEDURE [DataRefresh].[ProcessNextScheduledRun];GO-- The caller should update the [NextProcessDate] and set the status to 'P'.CREATE PROCEDURE [DataRefresh].[ProcessNextScheduledRun]@AllotedServerName [nvarchar] (256)ASDECLARE @CurrentTime datetime;DECLARE @CurrentDate datetime;SET @CurrentTime = GETDATE();SET @CurrentDate = [DataRefresh].[DateOnly](@CurrentTime);SET @CurrentTime = [DataRefresh].[TimeOnly](@CurrentTime);-- Caller will calculate virtual run window and cancel the run that missed it.UPDATE [DataRefresh].[Runs] SET [RunStartTime]=GETDATE(), ResultKey='Q', ServerName=@AllotedServerNameOUTPUT inserted.*WHERE [RunID] in (SELECT TOP 1 [RunID]FROM [DataRefresh].[Runs] WHERE ResultKey='W'AND ((-- AfterBusinessHour cases that haven't been loaded to verify IT overridden business hours.-- To handle IT overridden business hours, we will process after business hours schedules immediately -- and set [ProcessStartTime] and [ProcessEndTime] for the schedule and create other schedules if it is necessary.[ProcessStartTime] IS NULL ) OR(-- None AfterBusinessHour casesProcessEndTime IS NULL AND ( @CurrentTime>=[DataRefresh].[TimeOnly]([ProcessStartTime]) OR DATEDIFF(Day, ProcessDate, @CurrentDate)>=1))OR (-- BusinessHours setting crosses the day boundary.[DataRefresh].[TimeOnly]([ProcessStartTime])<[DataRefresh].[TimeOnly]([ProcessEndTime])AND (DATEDIFF(Day, ProcessDate, @CurrentDate)>1 OR(DATEDIFF(Day, ProcessDate, @CurrentDate)>=0 AND @CurrentTime>=[DataRefresh].[TimeOnly]([ProcessStartTime]))))OR(-- BusinessHours setting within the day boundary.[DataRefresh].[TimeOnly]([ProcessStartTime])>[DataRefresh].[TimeOnly]([ProcessEndTime])AND ( @CurrentTime>=[DataRefresh].[TimeOnly]([ProcessStartTime]) OR DATEDIFF(Day, ProcessDate, @CurrentDate)>=1))-- The following case has been coverred.--OR--(---- Very old runs that haven't been picked up.--DATEDIFF(Day, ProcessDate, @CurrentDate)>1--))ORDER BY [ProcessDate] ASC)GOGRANT EXECUTE ON [DataRefresh].[ProcessNextScheduledRun] TO [GeminiService_DataRefresh]GO

状态

Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。

参考

有关如何创建和配置 PowerPivot 服务应用程序的详细信息,请访问以下 Microsoft 开发人员网络(MSDN)网站:

如何创建和配置 PowerPivot 服务应用程序有关如何计划 PowerPivot 数据更新的详细信息,请访问以下 Microsoft 开发人员网络(MSDN)网站:

如何计划 PowerPivot 数据更新有关 SQL Server 的增量服务模型的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

935897 从 SQL Server 团队提供的增量服务模型可提供报告问题的修补程序有关 SQL Server 更新的命名架构的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

822499 Microsoft SQL Server 软件更新程序包的新命名架构有关软件更新术语的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

824684 用于描述 Microsoft 软件更新的标准术语的说明

需要更多帮助?

扩展你的技能
了解培训
抢先获得新功能
加入 Microsoft 内部人员

此信息是否有帮助?

谢谢您的反馈意见!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×