Вы можете добиться этого, используя SQL Task, чтобы получить последнюю дату выполнения из журнала заданий в базе данных msdb и сохранить ее в переменной.
Вы можете использовать этот запрос
USE msdb
GO
DECLARE @JobName AS varchar(50)
--Put the name of the job that runs package
SET @JobName = 'UpdateFactura'
SELECT
MAX(DBO.AGENT_DATETIME(RUN_DATE, RUN_TIME)) AS [Last Time Job Ran On]
FROM dbo.SYSJOBS SJ
LEFT OUTER JOIN dbo.SYSJOBHISTORY JH
ON SJ.job_id = JH.job_id
WHERE JH.step_id = 0
AND jh.run_status = 1
AND Sj.name = @JobName
GROUP BY SJ.name,
JH.run_status
ORDER BY [Last Time Job Ran On] DESC
GO
В SQL Task установлен один результат и отобразить результат переменной. Теперь вы можете использовать переменную для извлечения измененных данных из последнего выполнения пакета.
Дайте мне знать, если это было полезно.
Я вижу, что вы также задали этот вопрос на Expert-Exchange. Пожалуйста, работайте с предоставленными комментариями. http://www.experts-exchange.com/questions/28744363/How-to-extract-only-the-recent-data-from-a-source-table-in-SSIS.html –
Как вы определяете «недавние исполнение?» Имеет ли значение, если последнее исполнение закончилось неудачей? – billinkc