Доброго всем времени суток.
Подскажите пожалуйста, можно ли получить объекты с помощью веб-сервиса по заданному лукап полю. Поле кастомное.
Есть кастомный объект домен, привязанный к интересу. Поле new_lead_domains является внешним ключом, ссылающимся на первичный ключ таблицы интересов LeadId.
Т.о. выполняю следующий код (GUID взят для теста, точно имеющийся в базе):
Код на C#
X++:
var crm = GetCrmService();
var query = new QueryByAttribute
{
EntityName = EntityName.new_domain.ToString(),
ColumnSet = new ColumnSet { Attributes = new[] { "new_domainid", "new_url" } },
Attributes = new[] { "new_lead_domains" },
Values = new object[] { new Lookup { Value = new Guid("662DBDAC-E737-DF11-8E3E-000C296EAD7C") } }
};
var domains = crm.RetrieveMultiple(query);
Запрос падает с ошибкой:
"<error>\n <code>0x80040216</code>\n <description>An unexpected error occurred.</description>\n <type>Platform</type>\n</error>"
В то время, как другой аналогичный запрос
не по лукап-полю проходит успешно, но ничего не возвращает:
X++:
var query = new QueryByAttribute
{
EntityName = EntityName.new_domain.ToString(),
ColumnSet = new ColumnSet { Attributes = new[] { "new_domainid" } },
Attributes = new[] { "new_url" },
Values = new object[] { "ya.ru" }
};
Но ели производить выборку по интересам, а не кастомному объекту, аналогичным способом, то все работает прекрасно:
X++:
var query = new QueryByAttribute
{
EntityName = EntityName.lead.ToString(),
ColumnSet = new ColumnSet { Attributes = new[] { "leadid" } },
Attributes = new[] { "lastname" },
Values = new object[] { "private person" }
};
Подскажите, пожалуйста, в чем может быть проблема или что я делаю не так?