protected override void Execute(NativeActivityContext context) { #region . Fill Header . var eventHeader = new EventHeader { EventKindCode = EventKindCode.Get(context), OperationCode = BillOperationCode.Get(context), ProcessCode = BPProcessCode.Get(context) }; var startDate = StartDate.Get(context); eventHeader.StartTime = startDate.HasValue ? startDate.Value : DateTime.Now; eventHeader.EndTime = EndDate.Get(context); eventHeader.MandantID = MandantId.Get <decimal?>(context); // авто-заполняемые поля eventHeader.Instance = context.WorkflowInstanceId.ToString(); #endregion . Fill Header . #region . Fill Params for Details . var evDetail = new EventDetail(); foreach (var parameter in Parameters) { var value = parameter.Value.Get(context); // пустые значение незачем передавать if (value == null) { continue; } if (evDetail.ContainsProperty(parameter.Key)) { evDetail.SetProperty(parameter.Key, value); } } #endregion . Fill Params for Details . var eventHeaderMgr = IoC.Instance.Resolve <IEventHeaderManager>(); var uw = BeginTransactionActivity.GetUnitOfWork(context); if (uw != null) { eventHeaderMgr.SetUnitOfWork(uw); } eventHeaderMgr.RegEvent(ref eventHeader, evDetail); context.SetValue(Result, eventHeader); }