En Dynamics CRM, a menudo recibo requisitos de usuarios comerciales para crear informes. Los usuarios comerciales conocen y hablan de nombres de visualización de entidades y etiquetas de atributos. Para escribir una consulta, necesito asignarlos a nombres de entidades y nombres de atributo. Me gustaría utilizar una consulta para buscar esto.Cómo unir dbo.LocalizedLabelView para obtener etiquetas de formulario en Dynamics CRM?
¿A qué se une la vista dbo.LocalizedLabelView para obtener la columna AttributeLabel en la siguiente consulta? No puedo entender a qué se supone que ObjectId hace referencia. (Y si usted me puede decir cómo calculó la respuesta estaría especialmente agradecidos!)
select
[EntityName] = entityNames.Name,
[EntityDisplayName] = entityDisplayNames.Label,
[AttributeName] = attributeNames.PhysicalName,
[AttributeDisplayName] = attributeDisplayNames.Label
--[AttributeLabel] = attributeLabels.Label
from
dbo.EntityView entityNames
inner join dbo.LocalizedLabelView entityDisplayNames
on entityDisplayNames.ObjectId = entityNames.EntityId
and entityDisplayNames.ObjectColumnName = 'LocalizedName'
left outer join dbo.AttributeView attributeNames
on attributeNames.EntityID = entityNames.EntityID
inner join dbo.LocalizedLabelView attributeDisplayNames
on attributeDisplayNames.ObjectId = attributeNames.AttributeID
and attributeDisplayNames.ObjectColumnName = 'DisplayName'
and attributeDisplayNames.LanguageID = entityDisplayNames.LanguageID
--inner join dbo.LocalizedLabelView attributeLabels
-- on attributeLabels.ObjectId = ?????
-- and attributeLabels.LanguageID = entityDisplayNames.LanguageID
where
entityDisplayNames.LanguageID = 1033
order by
entityDisplayNames.Label,
attributeDisplayNames.Label