info@techdevops.com | 437-991-3573 | Data Engineering Services
TechDevOps.com
Resources Tools
Experts in Microsoft SQL Server on Windows, Linux, Containers | Clusters, Always On, FCI | Migrations, Cloud, Performance



Get SSIS Package Last Execution Status w/ SQL Job Name
by BF (Principal Consultant; Architecture; Engineering)
2025-02-10







Get SSIS Package Last Execution Status w/ SQL Job Name


;WITH cteRowNumber AS (
SELECT
e.EXECUTION_ID,
e.FOLDER_NAME,
e.PROJECT_NAME,
e.PACKAGE_NAME,
e.REFERENCE_ID,
e.REFERENCE_TYPE,
e.ENVIRONMENT_FOLDER_NAME,
e.ENVIRONMENT_NAME,
e.[OBJECT_ID],
e.[STATUS],
e.START_TIME,
e.END_TIME,
e.CALLER_SID,
e.CALLER_NAME,
e.SERVER_NAME,
e.MACHINE_NAME,
ROW_NUMBER() OVER(PARTITION BY e.PACKAGE_NAME ORDER BY e.START_TIME DESC) AS RowNum
FROM
SSISDB.CATALOG.EXECUTIONS e
)
SELECT
cte.SERVER_NAME,
cte.EXECUTION_ID [SSIS_EXECUTION_ID],
cte.FOLDER_NAME,
cte.PROJECT_NAME,
cte.PACKAGE_NAME,
j.name AS JOBNAME,
Case cte.[STATUS]
When 1 Then 'Created'
When 2 Then 'Running'
When 3 Then 'Canceled'
When 4 Then 'Failed'
When 5 Then 'Pending'
When 6 Then 'Ended Unexpectedly'
When 7 Then 'Succeeded'
When 8 Then 'Stopping'
When 9 Then 'Completed'
End as [STATUS],
cte.START_TIME,
cte.END_TIME,
DATEDIFF(ss,cte.START_TIME, cte.END_TIME) [DURATION_SEC],
cte.REFERENCE_ID,
cte.REFERENCE_TYPE,
cte.ENVIRONMENT_FOLDER_NAME,
cte.ENVIRONMENT_NAME,
cte.[OBJECT_ID],
cte.CALLER_SID,
cte.CALLER_NAME
FROM
cteRowNumber cte
LEFT JOIN
msdb.dbo.sysjobsteps js ON js.command LIKE '%' + cte.PACKAGE_NAME + '%'
LEFT JOIN
msdb.dbo.sysjobs j ON js.job_id = j.job_id
WHERE
cte.RowNum = 1
--AND cte.status = 4
ORDER BY
3,4,5;