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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.04.2009, 20:14   #30  
Yarilo is offline
Yarilo
Участник
 
19 / 10 (1) +
Регистрация: 08.08.2008
Адрес: Харьков, Украина
Цитата:
Сообщение от a33ik Посмотреть сообщение
Зависит конечно от задачи, но как по мне - самое надёжное это плагин в такого рода задачах.
Да мне тоже ближе как-то через плагин сделать, но пока не получается создать бизнес-процесс с его участием. После добавления шага вызова сборки при попытке добавить следующий шаг выдается ошибка

Цитата:
Error: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Error Message: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Source File: Not available
Line Number: Not available
Request URL: http://10.160.105.2:5555/zat611/AppW.../Workflow.asmx
Stack Trace Info: [ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index]
Плагин пока простейший, чисто убедиться, что будет работать:
Код:
using System;
using System.Collections;
using System.Workflow.ComponentModel.Compiler;
using System.Workflow.ComponentModel.Serialization;
using System.Workflow.ComponentModel;
using System.Workflow.ComponentModel.Design;
using System.Workflow.Runtime;
using System.Workflow.Activities;
using System.Workflow.Activities.Rules;
using System.Reflection;

using Microsoft.Crm.Workflow;
using Microsoft.Crm.Sdk;
using Microsoft.Crm.SdkTypeProxy;
using Microsoft.Crm.Sdk.Query;

namespace Miratech.Miro.CrmPlugin
{
  [CrmWorkflowActivity("PayDirection.AktInsurance.OnChange")]
  public class PayDirectionAktInsuranceChange : Activity
  {
    protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
    {
       InsContract = new Lookup("new_ins_contract", new Guid("BEB08AF1-5723-DE11-A1E5-0016E68BF392"));
       return base.Execute(executionContext);
    }

    public static DependencyProperty InsAktProperty = 
      DependencyProperty.Register("InsAkt", typeof(Lookup), typeof(PayDirectionAktInsuranceChange));

    [CrmInput("InsAkt")]
    [CrmReferenceTarget("new_ins_akt")]    
    public Lookup InsAkt
    {
       get
       {
          return (Lookup)base.GetValue(InsAktProperty);
       }
       set
       {
          base.SetValue(InsAktProperty, value);
       }

    }

    public static DependencyProperty InsContractProperty = 
       DependencyProperty.Register("InsContract", typeof(Lookup), typeof(PayDirectionAktInsuranceChange));

    [CrmOutput("InsContract")]
    [CrmReferenceTarget("new_ins_contract")]    
    public Lookup InsContract
    {
       get
       {
          return (Lookup)base.GetValue(InsContractProperty);
       }
       set
       {
          base.SetValue(InsContractProperty, value);
       }

    }
  }
}
Взял пример с СДК, немного видеоизменил под свои нужды.

Теперь сижу, думаю, что такая ошибка может значить.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как получить значение поля одной сущности при обработке формы другой сущности zhenek Dynamics CRM: Разработка 25 05.07.2011 16:19
Создание Lookup формы. Xelaan Dynamics CRM: Разработка 0 03.09.2008 12:17
Как взять текстовое значение из поля LookUp tatra Dynamics CRM: Разработка 2 21.11.2007 08:20
Как сделать в поле типа "Lookup" осуществить множественный выбор значений? Alexey-IT Dynamics CRM: Функционал 5 01.11.2007 11:48
Динамическое заполнение из выбранного атрибута lookup Sibcons Dynamics CRM: Разработка 4 15.06.2007 17:49

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

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

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