KB2490555: la actualización de datos no se produce diariamente en SQL Server 2008 R2 PowerPivot para SharePoint si las horas laborales se establecen para finalizar el día siguiente

Se aplica a: SQL Server 2008 R2

Microsoft distribuye las soluciones de Microsoft SQL Server 2008 R2 como un archivo que se puede descargar. Debido a que las correcciones son acumulativas, cada versión nueva contiene todas las revisiones y todas las revisiones de seguridad incluidas en la versión anterior de SQL Server 2008 R2.

Síntomas


Imagine la siguiente situación:
  • Instale y configure Microsoft SQL Server 2008 R2 PowerPivot para SharePoint en un equipo.
  • Publique o cargue un libro de Excel PowerPivot en la galería de PowerPivot.
  • Configure las opciones de la aplicación de servicio de PowerPivot para definir las horas laborales que cruzan el límite de un día. Por ejemplo, puede especificar la hora de inicio de la hora de trabajo de 6:00 a.m. y la hora de finalización en 2:00 a.m. del día siguiente.
  • Habilite la actualización de datos para un libro. 
  • Puede programar la actualización de datos para que se ejecute diariamente y a la hora de inicio más temprana del horario laboral .
En este escenario, los datos se actualizan cada dos días, en lugar de todos los días.

Causa


Este problema se produce porque Microsoft SQL Server PowerPivot para SharePoint procesa incorrectamente la siguiente programación.

Resolución


Información sobre la actualización acumulativa

SQL Server 2008 R2

La corrección para este problema se publicó por primera vez en la actualización acumulativa 6. Para obtener más información sobre cómo obtener este paquete de actualización acumulativa para SQL Server 2008 R2, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2489376 Paquete de actualización acumulativa 6 para SQL Server 2008 R2
Nota Como las compilaciones son acumulativas, cada nueva versión de corrección contiene todas las revisiones y todas las revisiones de seguridad incluidas en la versión anterior de corrección de SQL Server 2008 R2. Le recomendamos que considere la posibilidad de aplicar la versión de corrección más reciente que contenga este Hotfix. Si desea obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
981356 Las compilaciones de SQL Server 2008 R2 que se lanzaron después de publicar SQL Server 2008 R2

Solución alternativa


Para resolver este problema, aplique la actualización acumulativa si cumple una de las condiciones siguientes:
  • No tiene una aplicación de servicio de PowerPivot.
  • Puede quitar la aplicación de servicio PowerPivot existente y, a continuación, puede crear una nueva. 
Si ya tiene una aplicación de servicio PowerPivot y no puede quitar y, a continuación, crear una nueva, ejecute la siguiente secuencia de comandos Transact-SQL para solucionar este problema. Este script actualiza la [unrefresh]. [ ProcessNextScheduledRun] procedimiento almacenado en la base de datos de la aplicación de servicio de 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

Estado


Microsoft ha confirmado que se trata de un problema de los productos de Microsoft recogidos en la sección "Se aplica a".

Referencias


Para obtener más información sobre cómo crear y configurar una aplicación de servicio PowerPivot, visite el siguiente sitio web de Microsoft Developer Network (MSDN): Para obtener más información sobre cómo programar una actualización de datos PowerPivot, visite el siguiente sitio web de Microsoft Developer Network (MSDN): Para obtener más información sobre el modelo de mantenimiento incremental para SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
935897 Un modelo de servicio incremental disponible en el equipo de SQL Server para ofrecer revisiones para problemas detectados
Para obtener más información sobre el esquema de nomenclatura de las actualizaciones de SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
822499 Nuevo esquema de nomenclatura para los paquetes de actualización de software de Microsoft SQL Server
Para obtener más información acerca de la terminología de actualizaciones de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684 Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft