Проблема:
старые dict процедуры не сохраняются корректно.
Дело в том, что поддерживаются оба типа, для новых процедур используется только новый тип автоматического именования. Ранее можно было указать любое имя хранимой процедуры.
Так просто процедура не удаляется по старому имени (т.к. в sys.procedures она хранится под новым именем, но object_definition в ней используется со старым именованием).
Решение:
удаляем процедуру по новому имени в sql
drop proc [fm_notificationType_alertTypeName_dict]
Проверяем, что она удалилась (по новому имени):
declare @sp nvarchar(218) = 'fm_notificationType_alertTypeName_dict'
select object_definition(object_id) from sys.procedures
where name = @sp;
select name, type_name(user_type_id) [typename], max_length [maxLength]
from sys.parameters where object_id = object_id(@sp)
order by parameter_id
Очищаем кеш сервера в панели управления (проверка на существование процедуры кешируется).
Заново автоматически создаем процедуру как обычно через интерфейс редактирования колонок или формы.