Risposte:
Su ciascun server, è possibile eseguire una query sulla tabella sysjobs nel msdb. Per esempio:
SELECT job_id, [name] FROM msdb.dbo.sysjobs;
-- List of all the jobs currently running on server
SELECT
job.job_id,
notify_level_email,
name,
enabled,
description,
step_name,
command,
server,
database_name
FROM
msdb.dbo.sysjobs job
INNER JOIN
msdb.dbo.sysjobsteps steps
ON
job.job_id = steps.job_id
WHERE
job.enabled = 1 -- remove this if you wish to return all jobs
Ecco il mio contributo: ottiene anche il nome della categoria e filtra i lavori del server di report.
SELECT sysjobs.name 'Job Name',
syscategories.name 'Category',
CASE [description]
WHEN 'No Description available.' THEN ''
ELSE [description]
END AS 'Description'
FROM msdb.dbo.sysjobs
INNER JOIN msdb.dbo.syscategories ON msdb.dbo.sysjobs.category_id = msdb.dbo.syscategories.category_id
WHERE syscategories.name <> 'Report Server'
ORDER BY sysjobs.name