Я запускаю следующий код для довольно стандартной установки CRM 4.0.
List<ConditionExpression> cons = new List<ConditionExpression>();
QueryExpression query = new QueryExpression();
query.EntityName = "systemuser";
cons.Add(new ConditionExpression());
cons[cons.Count - 1].AttributeName = "isdisabled";
cons[cons.Count - 1].Operator = ConditionOperator.Equal;
cons[cons.Count - 1].Values = new object[] { false };
FilterExpression filter = new FilterExpression();
// Set the properties of the filter.
filter.FilterOperator = LogicalOperator.And;
filter.Conditions.AddRange(cons.ToArray());
//query.ColumnSet = new AllColumns();
query.ColumnSet = new ColumnSet(new string[]{"systemuserid","fullname","firstname","lastname"});
query.Criteria = filter;
query.Orders.Add(new OrderExpression("fullname", OrderType.Ascending));
RetrieveMultipleRequest RMR = new RetrieveMultipleRequest();
RMR.Query = query;
RMR.ReturnDynamicEntities = true;
RetrieveMultipleResponse resp = (RetrieveMultipleResponse)CRM.Execute(RMR);
По некоторым причинам возвращаемый список динамических сущностей содержит только атрибут systemuserid.Если я использую AllColumns (), я получаю выборку столбцов (ни в коем случае не всех), которые по-прежнему не включают столбцы с полным именем, именем и фамилией.
У рассматриваемых записей определенно есть значения для запрошенных полей.
Есть мысли ...?