public static WfAppRunner ToAppRunner(this WfRunner WfRunner) { Mapper.CreateMap <WfRunner, WfAppRunner>() .ForMember(dest => dest.NextActivityPerformers, opt => opt.ResolveUsing <wfResolver>()); var result = Mapper.Map <WfRunner, WfAppRunner>(WfRunner); return(result); }
private void SetInstanceFinish(WfRunner runner, WfResult result) { var instance = result.Instance; instance.DUpdate = DateTime.Now; instance.UpdateUser_Id = runner.AC.User.Id; instance.Status = WfProcessStatus.Stopped; instanceService.Update(instance); }
public void Execute(WfRunner runner, WfResult result) { var iTask = result.InstanceTask; iTask.Status = WfTaskStatus.Dealing; iTask.User_Id = runner.AC.User.Id; iTask.User_Name = runner.AC.User.UserName ?? runner.AC.User.NickName; iTask.DFetch = DateTime.Now; iTaskService.Update(iTask); }
private static void TestMethod() { string process_guid = "40c4be7f-2c7d-4391-92a3-32e2dc24f58f"; string application_instance_id = "56"; // var serviceurl = "http://172.16.22.26:8000/odata/"; var serviceurl = "http://localhost:53433/odata/"; var data = new Container(new Uri(serviceurl)); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Window w = new Window(); w.Id = 1; w.Name = "2"; w.CurrentShape = new Circle() { Radius = 1, HasBorder = true }; w.OptionalShapes.Add(new Circle() { Radius = 1, HasBorder = true }); var ls = data.ListAc(w).GetValue(); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// var eventDataItems = data.Vedios.ToList(); data.AddObject("Vedios", new Vedio() { ID = 8, Title = "Inferno of Retribution", Year = 2005 }); data.SaveChanges(); var eventDataItemsw = data.Vedios.Where(p => p.Title == "2").ToList(); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// WfRunner appRunner = new WfRunner(); appRunner.ProcessGUID = process_guid; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr1"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "fc8c71c5-8786-450e-af27-9f6a9de8560f", UserID = "usr20", UserName = "******" }); var aa = data.StartProcess(appRunner).GetValue(); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// QueryEntity app = new QueryEntity(); app.ProcessGUID = process_guid; app.AppInstanceID = null; app.AppName = "ApiTest"; app.UserID = "usr2"; app.UserName = "******"; var bb = data.GetRunningTasks(app).Execute(); var cc = data.GetReadyTasks(app).Execute(); }
private void SetTaskFinish(WfRunner runner, WfResult result) { var iTask = result.InstanceTask; iTask.DUpdate = DateTime.Now; iTask.UpdateUser_Id = runner.AC.User.Id; iTask.Status = WfTaskStatus.Processed; iTask.Audit = WfAuditState.Back; iTask.Opinion = runner.Opinion; iTaskService.Update(iTask); }
private bool CanWithdraw(WfRunner runner, WfResult result) { if (result.InstanceTask.User_Id != runner.AC.User.Id) { result.Message = "你无权处理该件,操作人不符!"; return(false); } else if (result.Instance.Status == WfProcessStatus.Stopped) { result.Message = "流程已结束"; return(false); } return(iTaskService.CanWithdraw(result)); }
public async Task <IActionResult> Post([FromBody] JObject data) { CheckDataSourceParameter(); AppCtx.Session.BeginTransaction(); try { var param = data.ToDictionary(); var appInstanceId = param.GetValue("id", App.IdWorker.NextId()); param["id"] = appInstanceId; var ctx = new RequestContext(SqlScope, SqlId) .SetCmdType(CmdType.insert) .SetParam(param) .SetExtraParam(AppCtx.AC.Params); var result = await AppCtx.Session.ExecuteAsync(ctx); var taskId = App.GetQuery("taskid", ""); if (taskId.HasValue()) { // start workflow var runner = new WfRunner(AppCtx.AC) { TaskId = long.Parse(taskId), AppInstanceId = appInstanceId }; workflowService.Start(runner); } if (result > 0) { var value = SqlMap.Params.GetValue("savetoredis", ""); if (value.HasValue()) { var array = value.Split('='); var key = array[0].Replace(ctx.DapperParams); var val = array[1].Replace(ctx.DapperParams); App.Cache.SetString(key, val, null); } } AppCtx.Session.Commit(); return(Ok(appInstanceId)); } catch { AppCtx.Session.Rollback(); throw; } }
public IHttpActionResult DiscardProcess(ODataActionParameters parameters) { WfRunner WfRunner = parameters["WfRunner"] as WfRunner; var WfAppRunner = WfRunner.ToAppRunner(); IWorkflowService service = new WorkflowService(); try { var result = service.DiscardProcess(WfAppRunner); return(Ok()); } catch (Exception w) { return(BadRequest(w.Message)); } }
protected override IDictionary <string, PerformerList> ResolveCore(WfRunner source) { var data = source.NextActivityPerformers.GroupBy(p => p.PathID); IDictionary <string, PerformerList> result = new Dictionary <string, PerformerList>(); foreach (var item in data) { PerformerList pl = new PerformerList(); foreach (var per in item) { pl.Add(new Performer(per.UserID, per.UserName)); } result.Add(item.Key, pl); } return(result); }
public void Execute(WfRunner runner, WfResult result) { var task = result.Task; var iTask = result.InstanceTask; if (task.TaskType == WfTaskType.Default) { // 检查办理人是否一致 if (iTask.User_Id != runner.AC.User.Id) { throw new AceException("你无权处理该件,操作人不符!"); } // 本步结束 SetTaskFinish(runner, result); // 执行下一步 var nextTasks = result.NextTasks; Check.Require(nextTasks.Count > 0, $"未获取到流程后续节点!"); if (nextTasks.First().TaskType == WfTaskType.Stop) { // 后续无业务时结束流程 SetInstanceFinish(runner, result); } else { // 生成后续的实例任务 nextTasks.Each(nextTask => { CreateNextInstanceTask(runner, result, nextTask); }); } } else if (task.TaskType == WfTaskType.Looping) { // 选择下一人办理,重复当前节点 } else if (task.TaskType == WfTaskType.Multiple) { // 按给定顺序执行会签,串行和并行 } else if (task.TaskType == WfTaskType.SubProcess) { // 启动相应的子流程 } }
private void CreateNextInstanceTask(WfRunner runner, WfResult result, WF_Task nextTask) { var iTask = new WF_InstanceTask(); iTask.InitializeId(); iTask.DCreate = DateTime.Now; iTask.Prev_Id = result.InstanceTask.Id; iTask.AppInstanceId = runner.AppInstanceId; iTask.Process_Id = result.Process.Id; iTask.Process_Name = result.Process.Name; iTask.Task_Id = nextTask.Id; iTask.Task_Name = nextTask.Name; iTask.Status = WfTaskStatus.Pending; iTask.Audit = WfAuditState.Pending; iTask.Action = WfActionType.Forward; iTask.CreateUser_Id = runner.AC.User.Id; iTaskService.Insert(iTask); }
// D // / \ //O-D-R D-O // \ / // D private static void OrSplitEnd() { string process_guid = "40c4be7f-2c7d-4391-92a3-32e2dc24f58b"; string application_instance_id = Guid.NewGuid().ToString(); //var serviceurl = "http://172.16.22.26:8000/odata/"; var serviceurl = "http://localhost:53433/odata/"; var data = new Container(new Uri(serviceurl)); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// WfRunner appRunner = new WfRunner(); appRunner.ProcessGUID = process_guid; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr1"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "e60084e4-517a-4892-a290-517159f1b7f4", UserID = "usr21", UserName = "******" }); appRunner.NextActivityPerformers.Add(new Point { PathID = "76f7ef75-b538-40c8-b529-0849ca777b95", UserID = "", UserName = "" }); var aa = data.StartProcess(appRunner).GetValue(); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// QueryEntity app = new QueryEntity(); app.ProcessGUID = process_guid; app.AppInstanceID = null; app.AppName = "ApiTest"; app.UserID = "usr21"; app.UserName = "******"; var cc = data.GetReadyTasks(app).Execute(); //XXX appRunner = new WfRunner(); appRunner.ProcessGUID = process_guid; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr21"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "76f7ef75-b538-40c8-b529-0849ca777b94", UserID = "", UserName = "" }); string ss = data.RunProcess(appRunner).GetValue(); }
public void Execute(WfRunner runner, WfResult result) { var task = result.Task; var iTask = result.InstanceTask; // 检查办理人是否一致 if (iTask.User_Id != runner.AC.User.Id) { throw new AceException("你无权处理该件,操作人不符!"); } // 本步结束 SetTaskFinish(runner, result); // 返回上一步 var backTask = taskService.Get(result.BackInstanceTask.Task_Id); CreateNextInstanceTask(runner, result, backTask); }
public IHttpActionResult RunProcessApp(ODataActionParameters parameters) { WfRunner WfRunner = parameters["WfRunner"] as WfRunner; var WfAppRunner = WfRunner.ToAppRunner(); IWorkflowService wfService = new WorkflowService(); IDbConnection conn = new SqlConnection(DBConfig.ConnectionString); conn.Open(); IDbTransaction trans = null; try { trans = conn.BeginTransaction(); var result = wfService.RunProcessApp(conn, WfAppRunner, trans); if (result.Status == WfExecutedStatus.Success) { trans.Commit(); return(Ok("Sucess")); } else { trans.Rollback(); return(BadRequest(result.Message)); } } catch (WorkflowException w) { trans.Rollback(); return(BadRequest(w.Message)); } finally { trans.Dispose(); if (conn.State == ConnectionState.Open) { conn.Close(); } } }
public WfResult GetInstance(WfRunner runner) { return(Session.QueryMultiple <WfResult>( new RequestContext("wf", "get_instance_by_id") .SetParam(new { runner.AppInstanceId, runner.TaskId }), reader => { var result = new WfResult(); result.Process = reader.Read <WF_Process>(true).FirstOrDefault(); result.Task = reader.Read <WF_Task>(true).FirstOrDefault(); result.Instance = reader.Read <WF_Instance>(true).FirstOrDefault(); result.InstanceTask = reader.Read <WF_InstanceTask>(true).FirstOrDefault(); return result; } )); }
public void Execute(WfRunner runner, WfResult result) { if (result.CanWithdraw) { // 删除后续实例任务 iTaskService.Delete(result.InstanceTask.Id); // 修改本部为处理中 var iTask = result.InstanceTask; iTask.Status = WfTaskStatus.Dealing; iTask.Opinion = null; iTask.DUpdate = null; iTask.Audit = result.IsStartTask ? WfAuditState.UnSend : WfAuditState.Pending; iTaskService.Update(iTask); } else { throw new AceException("该件已回收或后置节点已处理!"); } }
private void CreateNextInstanceTask(WfRunner runner, WfResult result, WF_Task backTask) { var iTask = new WF_InstanceTask(); iTask.InitializeId(); iTask.DCreate = DateTime.Now; iTask.Prev_Id = result.InstanceTask.Id; iTask.AppInstanceId = runner.AppInstanceId; iTask.Process_Id = result.Process.Id; iTask.Process_Name = result.Process.Name; iTask.Task_Id = backTask.Id; iTask.Task_Name = backTask.Name; iTask.Status = WfTaskStatus.Dealing; iTask.DFetch = DateTime.Now; iTask.Audit = result.Instance.StartTask_Id == backTask.Id ? WfAuditState.UnSend : WfAuditState.Pending; iTask.Action = WfActionType.Backward; iTask.CreateUser_Id = runner.AC.User.Id; iTask.User_Id = result.BackInstanceTask.User_Id; iTask.User_Name = result.BackInstanceTask.User_Name; iTaskService.Insert(iTask); }
public IActionResult PostWf([FromBody] JObject data) { var action = (WfActionType)data.GetValue("action", 3); var runner = new WfRunner(AppCtx.AC) { AppInstanceId = App.GetQuery <long>("appinstanceid"), TaskId = App.GetQuery <long>("taskid"), Audit = (WfAuditState)data.GetValue("audit", 1), Opinion = data.GetValue("opinion", ""), LoadBackInstanceTask = action == WfActionType.Backward, LoadCanWithdraw = action == WfActionType.Withdraw, LoadNextTasks = action == WfActionType.Forward, LoadPrevInstanceTask = action == WfActionType.Withdraw }; if (action == WfActionType.Forward) { return(Ok(wfService.Forward(runner))); } else if (action == WfActionType.Backward) { return(Ok(wfService.Backward(runner))); } else if (action == WfActionType.Fetch) { return(Ok(wfService.Fetch(runner))); } else if (action == WfActionType.Withdraw) { return(Ok(wfService.Withdraw(runner))); } else { return(Ok(wfService.Start(runner))); } }
public IHttpActionResult StartProcess(ODataActionParameters parameters) { WfRunner WfRunner = parameters["WfRunner"] as WfRunner; var WfAppRunner = WfRunner.ToAppRunner(); IWorkflowService wfService = new WorkflowService(); IDbConnection conn = new SqlConnection(DBConfig.ConnectionString); conn.Open(); IDictionary <string, Slickflow.Engine.Common.PerformerList> NextActivityPerformers = WfAppRunner.NextActivityPerformers; int ProcInstID; IDbTransaction trans = null; try { trans = conn.BeginTransaction(); WfExecutedResult result = wfService.StartProcess(conn, WfAppRunner, trans); int newProcessInstanceID = result.ProcessInstanceIDStarted; if (result.Status == WfExecutedStatus.Success) { trans.Commit(); ProcInstID = newProcessInstanceID; //return Ok(ProcInstID); } else { trans.Rollback(); return(BadRequest(result.Message)); } } catch (WorkflowException w) { trans.Rollback(); return(BadRequest(w.Message)); } finally { trans.Dispose(); if (conn.State == ConnectionState.Open) { conn.Close(); } } conn.Open(); try { WfAppRunner.NextActivityPerformers = NextActivityPerformers; trans = conn.BeginTransaction(); WfExecutedResult result = wfService.RunProcessApp(conn, WfAppRunner, trans); if (result.Status == WfExecutedStatus.Success) { trans.Commit(); return(Ok(ProcInstID)); } else { trans.Rollback(); return(BadRequest(result.Message)); } } catch (WorkflowException w) { trans.Rollback(); return(BadRequest(w.Message)); } finally { trans.Dispose(); if (conn.State == ConnectionState.Open) { conn.Close(); } } }
private static void SubProcess() { string process_guid = "40c4be7f-2c7d-4391-92a3-32e2dc24f585"; string application_instance_id = Guid.NewGuid().ToString(); //var serviceurl = "http://172.16.22.26:8000/odata/"; var serviceurl = "http://localhost:53433/odata/"; var data = new Container(new Uri(serviceurl)); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// WfRunner appRunner = new WfRunner(); appRunner.ProcessGUID = process_guid; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr1"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "fc8c71c5-8786-450e-af27-9f6a9de8560f", UserID = "usr2", UserName = "******" }); // appRunner.NextActivityPerformers.Add(new Point { PathID = "fc8c71c5-8786-450e-af27-9f6a9de8560f", UserID = "usr22", UserName = "******" }); var aa = data.StartProcess(appRunner).GetValue(); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// appRunner = new WfRunner(); appRunner.ProcessGUID = process_guid; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr2"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "5fa796f6-2d5d-4ed6-84e2-a7c4e4e6aabc", UserID = "usr21", UserName = "******" }); // appRunner.NextActivityPerformers.Add(new Point { PathID = "fc8c71c5-8786-450e-af27-9f6a9de8560f", UserID = "usr22", UserName = "******" }); string aaa = data.RunProcess(appRunner).GetValue(); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// var app = new QueryEntity(); app.ProcessGUID = process_guid; app.AppInstanceID = null; app.AppName = "ApiTest"; app.UserID = "usr21"; app.UserName = "******"; var cc = data.GetReadyTasks(app).Execute(); appRunner = new WfRunner(); appRunner.ProcessGUID = "40c4be7f-2c7d-4391-92a3-32e2dc24f58c"; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr21"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "5fa796f6-2d5d-4ed6-84e2-a7c4e4e6aabc", UserID = "usr3", UserName = "******" }); string ss = data.RunProcess(appRunner).GetValue(); //appRunner = new WfRunner(); //appRunner.ProcessGUID = "40c4be7f-2c7d-4391-92a3-32e2dc24f58c"; //appRunner.AppInstanceID = application_instance_id; //appRunner.AppName = "ApiTest"; //appRunner.UserID = "usr22"; //appRunner.UserName = "******"; //appRunner.NextActivityPerformers.Add(new Point { PathID = "5fa796f6-2d5d-4ed6-84e2-a7c4e4e6aabc", UserID = "usr3", UserName = "******" }); //ss = data.RunProcess(appRunner).GetValue(); app = new QueryEntity(); app.ProcessGUID = process_guid; app.AppInstanceID = null; app.AppName = "ApiTest"; app.UserID = "usr3"; app.UserName = "******"; var dd = data.GetReadyTasks(app).Execute(); ///XXX //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// appRunner = new WfRunner(); appRunner.ProcessGUID = process_guid; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr3"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "39c71004-d822-4c15-9ff2-94ca1068d745", UserID = "usr4", UserName = "******" }); ss = data.RunProcess(appRunner).GetValue(); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// appRunner = new WfRunner(); appRunner.ProcessGUID = process_guid; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr4"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "b70e717a-08da-419f-b2eb-7a3d71f054de", UserID = "", UserName = "" }); ss = data.RunProcess(appRunner).GetValue(); }
public WfResult Execute(WfRunner runner) { var result = instanceService.GetInstance(runner); if (result.Instance == null) { // create instance var instance = new WF_Instance(); instance.InitializeId(); instance.DCreate = DateTime.Now; instance.AppInstanceId = runner.AppInstanceId; instance.CreateUser_Id = runner.AC.User.Id; instance.CreateUser_Name = runner.AC.User.UserName ?? runner.AC.User.NickName; instance.Process_Id = result.Process.Id; instance.Process_Name = result.Process.Name; instance.StartTask_Id = result.Task.Id; instance.Status = WfProcessStatus.Running; instanceService.Insert(instance); var iTask = new WF_InstanceTask(); iTask.InitializeId(); iTask.DCreate = DateTime.Now; iTask.AppInstanceId = runner.AppInstanceId; iTask.Process_Id = result.Process.Id; iTask.Process_Name = result.Process.Name; iTask.Task_Id = result.Task.Id; iTask.Task_Name = result.Task.Name; iTask.DFetch = DateTime.Now; iTask.Status = WfTaskStatus.Dealing; iTask.Audit = WfAuditState.UnSend; iTask.Action = WfActionType.Begin; iTask.CreateUser_Id = runner.AC.User.Id; iTask.User_Id = instance.CreateUser_Id; iTask.User_Name = instance.CreateUser_Name; iTaskService.Insert(iTask); result.Instance = instance; result.InstanceTask = iTask; } if (runner.LoadPrevInstanceTask && result.InstanceTask.Prev_Id.HasValue) { result.PrevInstanceTask = iTaskService.Get(result.InstanceTask.Prev_Id.Value); } if (runner.LoadBackInstanceTask) { result.BackInstanceTask = GetBackInstanceTask(result); } if (runner.LoadNextTasks) { result.NextTasks = GetNextTasks(result); } if (runner.LoadCanWithdraw) { if (result.InstanceTask.Status == WfTaskStatus.Processed) { result.CanWithdraw = CanWithdraw(runner, result); } else { result.CanWithdraw = false; } } return(result); }
//O-D-|DDD|-D-O private static void Multipleinstance() { string process_guid = "40c4be7f-2c7d-4391-92a3-32e2dc24f58e"; string application_instance_id = Guid.NewGuid().ToString(); //var serviceurl = "http://172.16.22.26:8000/odata/"; var serviceurl = "http://localhost:53433/odata/"; var data = new Container(new Uri(serviceurl)); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// WfRunner appRunner = new WfRunner(); appRunner.ProcessGUID = process_guid; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr1"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "fc8c71c5-8786-450e-af27-9f6a9de8560f", UserID = "usr21", UserName = "******" }); appRunner.NextActivityPerformers.Add(new Point { PathID = "fc8c71c5-8786-450e-af27-9f6a9de8560f", UserID = "usr22", UserName = "******" }); var aa = data.StartProcess(appRunner).GetValue(); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// var app = new QueryEntity(); app.ProcessGUID = process_guid; app.AppInstanceID = null; app.AppName = "ApiTest"; app.UserID = "usr21"; app.UserName = "******"; var cc = data.GetReadyTasks(app).Execute(); appRunner = new WfRunner(); appRunner.ProcessGUID = process_guid; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr21"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "39c71004-d822-4c15-9ff2-94ca1068d745", UserID = "usr3", UserName = "******" }); string ss = data.RunProcess(appRunner).GetValue(); appRunner = new WfRunner(); appRunner.ProcessGUID = process_guid; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr22"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "39c71004-d822-4c15-9ff2-94ca1068d745", UserID = "usr3", UserName = "******" }); ss = data.RunProcess(appRunner).GetValue(); app = new QueryEntity(); app.ProcessGUID = process_guid; app.AppInstanceID = null; app.AppName = "ApiTest"; app.UserID = "usr3"; app.UserName = "******"; var dd = data.GetReadyTasks(app).Execute(); ///XXX //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// appRunner = new WfRunner(); appRunner.ProcessGUID = process_guid; appRunner.AppInstanceID = application_instance_id; appRunner.AppName = "ApiTest"; appRunner.UserID = "usr3"; appRunner.UserName = "******"; appRunner.NextActivityPerformers.Add(new Point { PathID = "b70e717a-08da-419f-b2eb-7a3d71f054de", UserID = "", UserName = "" }); ss = data.RunProcess(appRunner).GetValue(); }