No caso de MS SQL 2005, é possível incluir a data de Alteração (usando os novos Objetos de Catalogo):
SELECT o.object_id AS PK,
o.name AS Nome, o.type AS Tipo, o.create_date AS Criado, o.modify_date AS Alterado, m.definition AS Corpo
FROM sys.objects AS o INNER JOIN
sys.sql_modules AS m ON o.object_id = m.object_id
WHERE (1 = (CASE WHEN (Type <> 'P') THEN 1 ELSE (CASE WHEN (Name LIKE 'sp[_]%') THEN 0 ELSE 1 END) END)) AND (o.type IN ('V', 'FN', 'P')) AND (o.is_ms_shipped = 0)