H3 BPM 笔记

先通过流程设计器设计流程

注意 

审批:1个人

会签: 多人用

同意时: 若为有一个同意就通过 则 审批选项卡 的同意出口 设为1

如果需要所有人同意才通过 则  审批选项卡 的同意出口 设为100%

H3 BPM 笔记

开始或者结束时可能有业务操作调用webservice

后台取组织机构人员

Organization.Unit cwb = OThinker.H3.Server.Engine.Organization.GetUnit("组织机构ID");
this.Enviroment.InstanceData["审批的名字"].Value = new object[] { cwb.ManagerID };

获取当前用户

OThinker.H3.Acl.UserValidator us = (OThinker.H3.Acl.UserValidator)this.Session[OThinker.H3.WorkSheet.Sessions.GetUserValidator()];

获取当前用户所有的父组织
Organization.Unit[] units = OThinker.H3.Server.Engine.Organization.GetParentUnits(us.UserID, Organization.UnitType.OrganizationUnit, true, Organization.State.Active);

得到岗位名称

if (units != null)
{
for (int i = 0; i < units.Length; i++)
{
Organization.Unit unit = units[i];

string cname = OThinker.H3.Server.Engine.Organization.GetUnitCategoryName(unit.ObjectID);

得到岗位下所有人

string[] 岗位数组 = OThinker.H3.Server.Engine.Organization.FindPostMembers(new string[] { unit.ObjectID }, "岗位ID");
if (岗位数组.Length > 0)
{

得到第一个人
//OThinker.Organization.User u = (OThinker.Organization.User)OThinker.H3.Server.Engine.Organization.GetUnit(岗位数组[0]);
List<string> 泛型数组 = new List<string>();
foreach (string 岗位数组元素 in 岗位数组)
{
OThinker.Organization.User u = (OThinker.Organization.User)OThinker.H3.Server.Engine.Organization.GetUnit(岗位数组元素);
if (u != null)
{
泛型数组.Add(u.ObjectID);
}
}

this.Enviroment.InstanceData["会签ID"].Value = listhtglys.ToArray();
}

前台提交时验证:

function pageValidate(eventType) {//固定的
if (eventType != 2) return true;//固定的
var moneyval = $("#ctl00_masterContent_Control4").val();
{
var parenta = /^[1-9]\d*$/;
var parntb = /^[1-9]\d*\.\d*$/;
if (parenta.exec(moneyval)) {
return true;
}
else if (parntb.exec(moneyval)) {
return true;
}
else {
alert("合同金额必须大于0!");
$("#ctl00_masterContent_Control4").focus();
return false;
}
}
return true;//固定的
}

上一篇:大数据量场景下storm自定义分组与Hbase预分区完美结合大幅度节省内存空间


下一篇:Android 贝塞尔曲线 折线图