AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.11.2007, 18:48   #1  
Lida is offline
Lida
Участник
 
21 / 12 (1) ++
Регистрация: 26.06.2007
Закрыть задачи
Доброго времени суток!
Задача состоит в следующем: есть несколько задач (объектов CRM) с одинаковым признаком - групповым ключом. При завершении одной из задач должны автоматически завершиться все задачи с тем же групповым ключом.
Делаю так: callout на смену статуса Задачи
Код:
if (newSateCode==1)
{
 
task currTask = (task)service.Retrieve(EntityName.task.ToString(),entityContext.InstanceId,new AllColumns());
     if (currTask.af_groupkey!=null&&currTask.af_groupkey!="0")//есть групповой ключ
     {
      //найти все задачи с таким же групповым ключом
      ConditionExpression exp = new ConditionExpression();
      exp.AttributeName = "af_groupkey";
      exp.Operator = ConditionOperator.Equal;
      exp.Values = new string[]{currTask.af_groupkey};
      ConditionExpression exp2 = new ConditionExpression();
      exp2.AttributeName = "state";
      exp2.Operator = ConditionOperator.Equal;
      exp2.Values = new string[]{TaskState.Open.ToString()};
      FilterExpression filter = new FilterExpression();
      filter.Conditions = new ConditionExpression[]{exp,exp2};
      filter.FilterOperator = LogicalOperator.And;
      QueryExpression qu = new QueryExpression();
      qu.EntityName = EntityName.task.ToString();
      qu.ColumnSet = new AllColumns();
      qu.Criteria = filter;
      BusinessEntityCollection tasks = service.RetrieveMultiple(qu);
      foreach (BusinessEntity entity in tasks.BusinessEntities)
      {
       task oTask = entity as task;
       SetStateTaskRequest setState = new SetStateTaskRequest();
       setState.EntityId = oTask.activityid.Value;
       setState.TaskState = TaskState.Canceled;
       setState.TaskStatus = 6;
       SetStateInvoiceResponse setedState = (SetStateInvoiceResponse)service.Execute(setState);
      }
     }
}
Но, увы, не работает - статус не изменяется. Кто-нибудь знает в чем ошибка?
Спасибо.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Plugin на для обновления задачи (Task) Bondonello Dynamics CRM: Разработка 14 25.02.2009 12:13
Как можно автоматически копировать тему обращения в тему задачи при создании "Дальнейшего действия"? Bakai Madybaev Dynamics CRM: Разработка 5 28.08.2008 14:48
Как программно закрыть Opportunity? Alir Dynamics CRM: Разработка 7 20.08.2008 16:38
назначение задачи valk Dynamics CRM: Функционал 3 12.01.2008 02:06
Письма в "Списки ожидания" - "Мои задачи" ДмитрийCол Dynamics CRM: Функционал 0 10.01.2007 09:46

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 17:43.