Показать сообщение отдельно
Старый 12.02.2009, 16:39   #2  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Lightbulb
Цитата:
Сообщение от Bondonello Посмотреть сообщение
Добрый день!
Второй день разбираюсь с 4-й, немного запутался с обновлением Задачи. Вешаю на Update (Post) Вот пример кода.
При update ошибка - "В экземпляре объекта не задана ссылка на объект", но я вроде и с вязываю с ActivityId.
Спасибо
Попробуйте так

Код:
 public void Execute(IPluginExecutionContext context)
        {
            DynamicEntity entity = null;
            DynamicEntity inpEntity = null;
            // Check if the InputParameters property bag contains a target
            // of the current operation and that target is of type DynamicEntity.
            if (context.InputParameters.Properties.Contains(ParameterName.Target) &&
               context.InputParameters.Properties[ParameterName.Target] is DynamicEntity)
            {
                // Obtain the target business entity from the input parmameters.
                entity = (DynamicEntity)context.InputParameters.Properties[ParameterName.Target];

                // TODO Test for an entity type and message supported by your plug-in.
                // if (entity.Name != EntityName.account.ToString()) { return; }
                // if (context.MessageName != MessageName.Create.ToString()) { return; }
            }
            else
            {
                return;
            }

            try
            {
               
                   Key inputEntityId = new Key();

               /* if (inpEntity.Name == EntityName.task.ToString() ||
                    inpEntity.Name == EntityName.letter.ToString() ||
                    inpEntity.Name == EntityName.appointment.ToString() ||
                    inpEntity.Name == EntityName.email.ToString() ||
                    inpEntity.Name == EntityName.fax.ToString() ||
                    inpEntity.Name == EntityName.phonecall.ToString() ||
                    inpEntity.Name == EntityName.orderclose.ToString() ||
                    inpEntity.Name == EntityName.quoteclose.ToString() ||
                    inpEntity.Name == EntityName.incidentresolution.ToString())
                {*/

                if (inpEntity.Name == EntityName.task.ToString())
                {
                    if (inpEntity.Properties.Contains("activityid"))
                    {
                       

                        inputEntityId = ((Key)inpEntity["activityid"]);//.Value;//.ToString();
                        inpEntity = (DynamicEntity)context.InputParameters[ParameterName.Target];

                        DynamicEntity task = new DynamicEntity();
                        task.Name = EntityName.task.ToString();

                        task.Properties = new PropertyCollection();

                     
                        task.Properties.Add(new StringProperty("subject", "test"));
                        task.Properties.Add(new KeyProperty("activityid", inputEntityId));
                     
                        ICrmService service = context.CreateCrmService(true);
                        service.Update(task);

                    }
                }
            }
            catch (System.Web.Services.Protocols.SoapException ex)
            {
                throw new InvalidPluginExecutionException(
                    String.Format("An error occurred in the {0} plug-in.",
                       this.GetType().ToString()),
                    ex);
            }
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit

Последний раз редактировалось a33ik; 12.02.2009 в 16:44.
За это сообщение автора поблагодарили: Bondonello (1).