26.10.2009, 09:10 | #1 |
Участник
|
Бизнес-процесс: применение определенного алгоритма к каждой записи CRMGrid
Доброе утро! Нужно создать бизнес-процесс, который бы пробегал по всем записям данной сущности и если у записи определенный атрибут установлен в Активен, то получить из этой записи определенные атрибуты, как параметры и выполнить заданный алгоритм. Начал писать правило для бизнес-процесса, для этого воспользовался примером из книги Майка Снайдера:
Код: using System; using System.Workflow.ComponentModel; using System.Workflow.Activities; using Microsoft.Crm.Workflow; namespace BP_CRMScaner { [CrmWorkflowActivity("Выполнить сканирование", "Сканирование WEB-ресурсов")] public partial class Activity1 : SequenceActivity { protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext) { //получение контекста IContextService contextService = (IContextService)executionContext.GetService(typeof(IContextService)); IWorkflowContext ctx = contextService.Context; //Здесь выполняется пользовательская логика //Доступ к свойствам ввода и вывода осуществляется следующим образом this.InputExample = "foo"; this.OutputExample = this.InputExample + "bar"; return base.Execute(executionContext); } //Задание свойств ввода public static DependencyProperty InputExampleProperty = DependencyProperty.Register("InputExample", typeof(string), typeof(Activity1)); [CrmInput("InputExample")] public string InputExample { get { return (string)base.GetValue(InputExampleProperty); } set { base.SetValue(InputExampleProperty, value); } } //Задание свойства вывода public static DependencyProperty OutputExampleProperty = DependencyProperty.Register("OutputExample", typeof(string), typeof(Activity1)); [CrmOutput("OutputExample")] public string OutputExample { get { return (string)base.GetValue(OutputExampleProperty); } set { base.SetValue(OutputExampleProperty, value); } } } } Последний раз редактировалось Tarasov E; 26.10.2009 в 09:31. |
|