列表流程

由流程向导生成的功能是一打开功能,就显示一个流程的信息,有时候需要一打开功能,就显示多个流程的信息,例如下面的界面 在这个功能中,可以新加一条业务数据、新建一个流程、启动流程、流转等 并且定义了事件,在启动和流转之后,将该流程的处理环节和处理人回写到业务数据中并修改单据状态 1.新建 可以直接在grid列表中新建一条数据,这里设置了单据状态默认值为“未审批”,用来做流程的业务数据,当然需要自己执行“启动流转”,或者双击列表数据操作后面会介绍 2.新建流程 在listActivity.w文件中,通过按钮调用,调用justep.Shell.showPage方法,打开流程的启动界面,代码如下 Model.prototype.button1Click = function(event) { var url = "$UI/demo/listProcess/process/listProcess/mainActivity.a"; justep.Shell.showPage({ url : url, title : "订单" }); }; 这样就实现了在列表流程中新建一个流程,跟直接从功能树列表中打开流程功能一样的 3.启动流程 在listActivity.w文件中放一个process组件,调用这个组件的start方法,启动流程 不需要设置process组件的data属性,autoClose、autoStart、autoSave、autoFilter都设置为false 代码如下,第3个参数传列表data的行ID var dList = [...]

如何获取拥有指定功能权限的人员成员

平台默认在BIZ层的组织机构函数中提供了获取拥有指定功能权限的所有角色和根据角色ID获取相关组织的函数如下: findRolesHasActivity(String process, Set<String> activity) 获取拥有指定功能权限的所有角色 参数: String process Set<String> activity 返回: List<String> findOrgUnitsHasRole(String roldID, Object inOrg, Boolean isPersonMember) 获取拥有某个角色的组织单元 findOrgUnitsHasRole('角色ID', '', true) findOrgUnitsHasRole('角色ID', currentOgnID(), false) 参数:String roldID 角色ID Object inOrg 组织单元所在的组织, [...]

修改PC端日期弹出选择框中时分秒的显示

日期弹出框的控制是对整个页面中用到日期弹出框统一控制,如果所有的都需要控制,可以参考如下的方法,平台默认是单页模式所以,后打开的功能中如果也有日期弹出框的同样会受控制 可以在model的onload中,通过样式查找控制 Model.prototype.modelLoad = function(event) { $(".datetime.form-control").click(function() { setTimeout(function() { // 设置值 $("input[name='_calendar_hour_']").val("17"); $("input[name='_calendar_min_']").val("00"); $("input[name='_calendar_sec_']").val("00"); // 控制不可编辑 $("input[name='_calendar_sec_']").attr("disabled", "true"); }, 50); }); };

修改grid列鼠标悬停时显示内容

grid的onCellRender事件的event中有html : 输出显示的html,通过修改html影响展现 因此可以通过设置html的内容控制显示悬停时的显示内容 如下设置的title属性就是控制的显示内容 Model.prototype.treeGridCellRender = function(event) { if (event.colName == "fName") { var title = event.colVal + 'bbbb'; event.html = " <div title='" + title + "'>" + event.colVal + "</div> " [...]

js中自定义的函数添加到表达式编辑器中

js中可以自己定义一个公共的js函数,这些函数也可以设置为用justep.XXX去调用并且在每个页面中默认引用,可以参考http://docs.wex5.com/bex5-ui-question-list-10044/ 添加的函数如果要添加的默认的属性编辑器如下列表中,需要到在/UI2/system/components/designerCommon/propEdtorPages/jsExpressionEditor/expressionFuns.xml中添加,添加后重启studio

修改设计器中组件的默认属性值

平台的组件分设计时和运行时,在设计器中拖拽组件后组件上属性的默认值设置是在设计时控制的 组件的设计时文件基本上都是在/UI2/system/components/justep/具体的组件目录/designer下 bootstrap相关的是在/UI2/system/components/bootstrap/具体的组件目录/designer下 如果要修改属性默认值一般修改designer下相关的xml和js文件即可 如下修改windowDialog的默认高、框和初始化状态的值: 修改/UI2/system/components/justep/windowDialog/designer/windowDialog.xml中下面设置的 default-value属性值 <property name="status" text="初始化状态" editor-ref="dialog-status" readonly="true" default-value="maximize"/> <property name="width" text="宽,支持%相对于当前窗口" editor-ref="width-height" default-value="80%"/> <property name="height" text="高,支持%相对于当前窗口" editor-ref="width-height" default-value="80%"/> <span style="color:blue">注意:修改了xml文件后需要重启studio 如果在studio的“窗口——首选项——studio配置”中勾选了下面的选项,可以不用重启studio,但是在使用设计器时要启动tomcat </span>  

反向生成本体时主键关系不是fID

如果数据库中的主键关系不是fID,在反向生成本地的时候选择关系时把主键字段也选择上,这样概念映射中的主键就会映射为数据库对应的字段的名字 概念的主键必须要设置默认值,平台默认的是guid(),如果不需要是guid可以自己在概念定义中修改 如果需要在页面中操作主键关系的值,需要自己在反向生成本体后自己手动到概念中新增一个关系,关系标识跟数据库中的主键名一致,然后在概念定义的主键关系上选择这个关系,需要注意的是此时的主键默认值需要在关系定义上设置

分页加载数据刷新数据后定位到当前页

分页加载的时候在非第一页操作数据后刷新数据,默认的会定位到第一页,如果需要定义到刷新数据的当前页可以参考如下: 下面的方案都用的用pagerBar组件分页 自己写一个按钮执行刷新具体的代码如下: Model.prototype.button42Click = function(event){ var data = this.comp("bizData1"); var currentpageIndex = this.comp("pagination1").currentIndex;//通过pageBar里面的pagination获取到当前页的索引 data.loadPageData(currentpageIndex + 1);//用data组件的loadPageData (integer pageIndex, Object options)分页模式下加载第N页数据 };