Flowportal.Net BPM升级小计2
时间:2022-06-18
本文章向大家介绍Flowportal.Net BPM升级小计2,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
上次BPM升级后,经过几天的使用,只发现了一个升级造成的问题,是在一个新员工招聘入职流程里写了一个C#的步骤来触发其他流程,下图是出错信息:
经过和厂商确认,把原来的写法:“process.CreateTask(owner,datasetPost).Step.Approve();”改写成如下格式后问题解决:BPMTask task = process.CreateTask(owner, datasetPost); task.Step.Approve();
附上完整的触发流程的C#代码,供大家参考
//把当前的流程保存到数据库
Context.Current.Task.SaveToDB();
if ((String)Context.Current.FormDataSet["FormEmployeeOnBoard.NeedTelephone"]=="Yes")
{
String CurrentUser = (String)Context.Current.FormDataSet["FormEmployeeOnBoard.Requester"];
Member owner = Member.FromAccount(CurrentUser);
//Member owner = Member.FromAccount("troy.cui");
BPMProcess process = BPMProcess.GetProcess("座机电话申请 - Request for Telephone");
FlowDataSet datasetPost = DataSourceManager.LoadDataSetSchema(process.GlobalTableIdentitys);
FlowDataTable table = datasetPost.Tables["FormTelephone"];
FlowDataRow row = table.NewRow();
table.Rows.Add(row);
row["EmployeeID"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.EmployeeID"];
row["DepartmentName"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.DepartmentName"];
row["ChineseName"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.ChineseName"];
row["EnglishName"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.EnglishName"];
row["PositionName"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.PositionName"];
row["Office"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.Office"];
row["LineManager"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.LineManager"];
row["OnBoardDate"] =Context.Current.FormDataSet["FormEmployeeOnBoard.OnBoardDate"];
row["Requester"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.Requester"];
row["RequestDate"] =(DateTime)Context.Current.FormDataSet["FormEmployeeOnBoard.RequestDate"];
row["Remark"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.Remark"];
row["Status"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.Status"];
//使用数据库默认时间
//row["TransDate"] =(DateTime)Context.Current.FormDataSet["FormEmployeeOnBoard.TransDate"];
row["TransIP"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.TransIP"];
row["CreationUser"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.CreationUser"];
row["LastUpdateIP"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.LastUpdateIP"];
//使用数据库默认时间
//row["LastUpdateDate"] =(DateTime)Context.Current.FormDataSet["FormEmployeeOnBoard.LastUpdateDate"];
row["LastUpdateUser"] =(String)Context.Current.FormDataSet["FormEmployeeOnBoard.LastUpdateUser"];
//process.CreateTask(owner,datasetPost);
//自动审批通过第一步 3.5n
//process.CreateTask(owner,datasetPost).Step.Approve();
//自动审批通过第一步 3.5t
BPMTask task = process.CreateTask(owner, datasetPost);
task.Step.Approve();
}
- Python机器学习的练习七:K-Means聚类和主成分分析
- [译]Laravel 5.0 之方法注入
- [译]Laravel 5.0 之 Middleware (Filter-Style)
- [译]Laravel 5.0 之目录结构与命名空间
- Python机器学习的练习六:支持向量机
- [译]Laravel 5.0 之路由缓存
- [译]Laravel 5.0 之 表单验证类 (Form Requests)
- 如何在Python中保存ARIMA时间序列预测模型
- Laravel 5.0 发布, 海量新特性!!
- Python中的白噪声时间训练
- Python机器学习的练习五:神经网络
- 在Python中如何差分时间序列数据集
- 将Keras权值保存为动画视频,更好地了解模型是如何学习的
- TensorFlow:如何通过声音识别追踪蝙蝠
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Saltstack_使用指南17_salt-ssh
- Saltstack_使用指南18_API
- Centos7安装单机版Redis
- Vue3 Composition-Api + TypeScript + 新型状态管理模式探索。
- Saltstack_实战指南01_系统规划
- Saltstack_实战指南02_各主机Pillar信息指定
- TypeScript基础看腻了?进阶实现智能类型推导的简化版Vuex,手把手带你实现。
- Linux下使用 github+hexo 搭建个人博客01-hexo搭建
- Linux下使用 github+hexo 搭建个人博客02-hexo部署到Github Pages
- Linux下使用 github+hexo 搭建个人博客03-hexo配置优化
- 接口测试框架实战(五) | 测试数据的数据驱动
- Linux下使用 github+hexo 搭建个人博客04-next主题优化
- Linux下使用 github+hexo 搭建个人博客05-next主题接入评论系统 来必力畅言Valine获取 livere_uid在Next主题配置浏览器访问数据
- Linux下使用 github+hexo 搭建个人博客06-next主题接入数据统计
- egg.js 动态转发代理