Добрый день!
мне нужно получить названия всех полей определенной сущности. сделала вот такой запрос
select
(case when [key] like 'columns%' then replace(replace([key],'Columns.',''),'.Caption','') else '' end),
Value
from SysLocalizableValue
where SysSchemaId in (select id from SysSchema where Name='ContactAddress')
and ([key] Like 'Columns%')
and SysCultureId='1A778E3F-0A8E-E111-84A3-00155D054C03'
order by (case when [key] like 'columns%' then replace(replace([key],'Columns.',''),'.Caption','') else '' end)
но столкнулась с проблемой наследования. данный запрос мне возвращает только 1 строку - Contact, так как остальные поля наследуются из Address.
как можно получить итоговый список полей сущности с учетом всех изменений из разных пакетов?
Нравится
Можно посмотреть поля в таблице базы через системные таблицы:
SELECT t.name AS [Table Name], c.name AS [Column Name], value AS [Extended Property] FROM sys.extended_properties AS ep INNER JOIN sys.tables AS t ON ep.major_id = t.object_id INNER JOIN sys.columns AS c ON ep.major_id = c.object_id AND ep.minor_id = c.column_id WHERE class = 1 and t.name = 'ContactAddress' AND CAST(value AS VARCHAR) LIKE 'ru-RU|%'