public void Excute(new_incidentservice new_incidentservice) { SubjectEmailSender email = new SubjectEmailSender(_service, new_incidentservice); HelperEvent helper = new HelperEvent(_service, new_incidentservice); var parameters = helper.GetParamters(); var originalFlight = helper.GetOriginalFlight(); var israelWF = new IsraelWF(_service, new_incidentservice, parameters, originalFlight, _wfemailTemp); var callCenterWF = new CallCenterWF(_service, new_incidentservice, parameters, originalFlight, _wfemailTemp); var cashierWF = new CashierWF(_service, new_incidentservice, parameters, originalFlight, _wfemailTemp); var groupWF = new GroupWF(_service, new_incidentservice, parameters, originalFlight, _wfemailTemp); var foodWF = new FoodWF(_service, new_incidentservice, parameters, originalFlight, _wfemailTemp); var customerRelationWF = new CustomerRelationWF(_service, new_incidentservice, parameters, originalFlight, _wfemailTemp); var scheduleWF = new ScheduleWF(_service, new_incidentservice, parameters, originalFlight, _wfemailTemp); var cargoWF = new CargoWF(_service, new_incidentservice, parameters, originalFlight, _wfemailTemp); var crewsWF = new CrewsWF(_service, new_incidentservice, parameters, originalFlight, _wfemailTemp); var sundorWF = new SundorWF(_service, new_incidentservice, parameters, originalFlight, _wfemailTemp); email.Attach(israelWF); email.Attach(callCenterWF); email.Attach(cashierWF); email.Attach(groupWF); email.Attach(foodWF); email.Attach(customerRelationWF); email.Attach(scheduleWF); email.Attach(cargoWF); email.Attach(crewsWF); email.Attach(sundorWF); email.SendEmailsToTeams(_userid); }
/// <summary> /// Executes the workflow activity. /// </summary> /// <param name="executionContext">The execution context.</param> protected override void Execute(CodeActivityContext executionContext) { // Create the tracing service ITracingService tracingService = executionContext.GetExtension <ITracingService>(); if (tracingService == null) { throw new InvalidPluginExecutionException("Failed to retrieve tracing service."); } tracingService.Trace("Entered NewClaimCreateMailToLowsuit.Execute(), Activity Instance Id: {0}, Workflow Instance Id: {1}", executionContext.ActivityInstanceId, executionContext.WorkflowInstanceId); // Create the context IWorkflowContext context = executionContext.GetExtension <IWorkflowContext>(); if (context == null) { throw new InvalidPluginExecutionException("Failed to retrieve workflow context."); } tracingService.Trace("NewClaimCreateMailToLowsuit.Execute(), Correlation Id: {0}, Initiating User: {1}", context.CorrelationId, context.InitiatingUserId); IOrganizationServiceFactory serviceFactory = executionContext.GetExtension <IOrganizationServiceFactory>(); IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId); try { // TODO: Implement your custom Workflow business logic. Entity target = (Entity)context.InputParameters["Target"]; new_incidentservice new_incidentservice = target.ToEntity <new_incidentservice>(); SubjectEmailSender email = new SubjectEmailSender(service, new_incidentservice); HelperEvent helper = new HelperEvent(service, new_incidentservice); var parameters = helper.GetParamters(); var originalFlight = helper.GetOriginalFlight(); EntityReference emailTemplate = EmailTemplate.Get <EntityReference>(executionContext); EntityReference user = FromUser.Get <EntityReference>(executionContext); WFEmailTemplate wfemailTemp = new WFEmailTemplate(emailTemplate); var israelWF = new IsraelWF(service, new_incidentservice, parameters, originalFlight, wfemailTemp); var callCenterWF = new CallCenterWF(service, new_incidentservice, parameters, originalFlight, wfemailTemp); var cashierWF = new CashierWF(service, new_incidentservice, parameters, originalFlight, wfemailTemp); var groupWF = new GroupWF(service, new_incidentservice, parameters, originalFlight, wfemailTemp); var foodWF = new FoodWF(service, new_incidentservice, parameters, originalFlight, wfemailTemp); var customerRelationWF = new CustomerRelationWF(service, new_incidentservice, parameters, originalFlight, wfemailTemp); var scheduleWF = new ScheduleWF(service, new_incidentservice, parameters, originalFlight, wfemailTemp); var cargoWF = new CargoWF(service, new_incidentservice, parameters, originalFlight, wfemailTemp); var crewsWF = new CrewsWF(service, new_incidentservice, parameters, originalFlight, wfemailTemp); var sundorWF = new SundorWF(service, new_incidentservice, parameters, originalFlight, wfemailTemp); email.Attach(israelWF); email.Attach(callCenterWF); email.Attach(cashierWF); email.Attach(groupWF); email.Attach(foodWF); email.Attach(customerRelationWF); email.Attach(scheduleWF); email.Attach(cargoWF); email.Attach(crewsWF); email.Attach(sundorWF); email.SendEmailsToTeams(user.Id); } catch (FaultException <OrganizationServiceFault> e) { tracingService.Trace("Exception: {0}", e.ToString()); // Handle the exception. throw; } tracingService.Trace("Exiting NewClaimCreateMailToLowsuit.Execute(), Correlation Id: {0}", context.CorrelationId); }