示例#1
0
    protected override void Execute(CodeActivityContext Workflowcontext)
    {
        System.Threading.Thread.Sleep(1000);
        IWorkflowContext            context        = Workflowcontext.GetExtension <IWorkflowContext>();
        IOrganizationServiceFactory serviceFactory = Workflowcontext.GetExtension <IOrganizationServiceFactory>();
        ITracingService             tracingService = Workflowcontext.GetExtension <ITracingService>();
        IOrganizationServiceContext service        = Workflowcontext.GetExtension <IOrganizationServiceContext>();

        GetAllLeads getAllLeads = new GetAllLeads(service);
        var         leadRecords = getAllLeads.GetAllLeadsForCalculate();

        tracingService.Trace($"Count of contract records for calculation is: {leadRecords.Count}");

        foreach (var leadRecord in leadRecords)
        {
            try
            {
                tracingService.Trace($"Start calculating contract with lead id='{leadRecord.Id}'");


                CalculateOneLead.Calculate(Workflowcontext, leadRecord);
                tracingService.Trace($"Finish calculating contract with id='{leadRecord.Id}'");
            }
            catch (Exception ex)
            {
                tracingService.Trace($"Error occurred during AX Contract calculation with id='{leadRecord.Id}. Error: {ex.Message}, {ex.StackTrace}'");
            }
        }
    }
示例#2
0
 protected GenericDataAccess(IOrganizationServiceContext service)
 {
     this.service = service;
 }
示例#3
0
 public GetAllLeads(IOrganizationServiceContext service) : base(service)
 {
 }