FIX: Data update does not occur daily in SQL Server 2008 R2 PowerPivot for SharePoint if business hours are set to end the next day

Article translations Article translations
Article ID: 2490555 - View products that this article applies to.
Microsoft distributes Microsoft SQL Server 2008 R2 fixes as one downloadable file. Because the fixes are cumulative, each new release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 R2 fix release.
Expand all | Collapse all

On This Page

SYMPTOMS

Consider the following scenario:
  • You install and configure Microsoft SQL Server 2008 R2 PowerPivot for SharePoint on a computer.
  • You publish or upload an Excel PowerPivot workbook to the PowerPivot gallery.
  • You configure the PowerPivot service application settings to define business hours that cross the boundary of a day. For example, you specify the start time of the business hour to 6:00 AM and the end time to 2:00 AM of the next day.
  • You enable data update for a workbook. 
  • You schedule data update to run daily and to the After business hours earliest start time.
In this scenario, data updates every other day instead of every day.

CAUSE

This issue occurs because Microsoft SQL Server PowerPivot for SharePoint handles the next schedule run incorrectly.

RESOLUTION

Cumulative update information

SQL Server 2008 R2

The fix for this issue was first released in Cumulative Update 6. For more information about how to obtain this cumulative update package for SQL Server 2008 R2, click the following article number to view the article in the Microsoft Knowledge Base:
2489376 Cumulative Update package 6 for SQL Server 2008 R2
Note Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 R2 fix release. We recommend that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
981356 The SQL Server 2008 R2 builds that were released after SQL Server 2008 R2 was released

WORKAROUND

To resolve this issue, apply the cumulative update if you meet one of the following conditions:

  • You do not have a PowerPivot Service application.
  • You can drop the existing PowerPivot Service application, and then you can create a new one. 

If you already have a PowerPivot Service application, and if you cannot drop and then create a new one, run the following Transact-SQL script to work around this issue. This script updates the [DataRefresh].[ProcessNextScheduledRun] stored procedure against the PowerPivot service application database.
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)
AS
	DECLARE @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=@AllotedServerName
		OUTPUT 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 cases
								ProcessEndTime 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
				)
GO

GRANT EXECUTE ON [DataRefresh].[ProcessNextScheduledRun] TO [GeminiService_DataRefresh]
GO

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

REFERENCES

For more information about how to create and configure a PowerPivot Service application, visit the following Microsoft Developer Network (MSDN) website:
How to create and configure a PowerPivot Service application

For more information about how to schedule a PowerPivot data update, visit the following Microsoft Developer Network (MSDN) website: 
How to schedule a PowerPivot data update

For more information about the Incremental Servicing Model for SQL Server, click the following article number to view the article in the Microsoft Knowledge Base:
935897 An Incremental Servicing Model is available from the SQL Server team to deliver hotfixes for reported problems
For more information about the naming schema for SQL Server updates, click the following article number to view the article in the Microsoft Knowledge Base:
822499 New naming schema for Microsoft SQL Server software update packages
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates

Properties

Article ID: 2490555 - Last Review: August 26, 2011 - Revision: 1.2
APPLIES TO
  • Microsoft SQL Server 2008 R2 PowerPivot for Microsoft Excel 2010
  • Excel Services in Microsoft SharePoint Server 2010
Keywords: 
kbqfe kbfix kbsurveynew kbexpertiseadvanced KB2490555

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com