Показать сообщение отдельно
Старый 22.02.2012, 14:22   #4  
g.Naukovych is offline
g.Naukovych
Участник
MCBMSS
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
405 / 130 (5) +++++
Регистрация: 23.03.2011
А почему нельзя написать кастомный веб-сервис, который получит из БД MSCRM данные о том, какие значение могут храниться в пиклисте сущности.
Вызов этого веб-сервиса будет работать на онлоад и после этого на основе результата можете заполнять какое угодно поле. Данные для этого хранятся в таблице dbo.StringMap.
Единственное что Вам нужно знать ObjectTypeCode Вашей сущности. Если это кастомная сущность, то при переносе он изменится, это следует учитывать и не хардкодить его в запросе.

Вот пример хранимой процедуры
X++:
create procedure [dbo].[GetAttributeInfo]( 
   @entityname nvarchar (100)
  ,@attributename nvarchar (100)
  ,@langid int
)
as
  set nocount on

declare @objecttypecode int
select @objecttypecode = e.ObjectTypeCode
	from 
		Metadataschema.entity e
	where
		e.Name = @entityname

select sm.value as value
	  ,sm.attributeValue as attributeValue
	from
		dbo.StringMap sm
	where
		sm.ObjectTypeCode = @objecttypecode
	and sm.langid = @langid
	and sm.AttributeName = @attributename

Последний раз редактировалось g.Naukovych; 22.02.2012 в 14:40.