编码:JUSTEP150109;提示: “/demo/test/ontology/f_itemno@Relation”不存在

运行功能时控制台报类似如下的错误 Caused by: com.justep.exception.BusinessException: 编码: JUSTEP150109; 提示: "/demo/test/ontology/f_itemno@Relation"不存在 at com.justep.exception.BusinessException.create(Unknown Source) at com.justep.util.Utils.checkNotExist(Unknown Source) at com.justep.model.impl.ConceptImpl.init(Unknown Source) 错误的原因是在在BIZ层该模块中没有找到@Relation前面的关系的定义,上面的错误就是没有找到f_itemno关系的定义,需要添加上关系的定义 即在ontology文件中没有类似于如下这样的定义关系定义 <relation name="fProvideStateName" data-type="String" single-valued="true"> <label language="zh_CN">发放状态</label> </relation> 其中的name值就是报错的关系名,上面的错误就是<relation name="f_itemno"没有定义

ios中隐藏scrollView的滚动条

scrollView组件默认在ios上在下拉上滑时会显示滚动条,如果需要隐藏滚动条,参考如下修改(推荐用控制空间的方式修改): 在/UI2/system/components/justep/common/css/forms.less中加上 ::-webkit-scrollbar { display: none; } 然后执行tools\dist\less.bat,tools\dist\dist.bat,注意两个文件的执行顺序 修改css需要注意缓存的问题,参考http://docs.wex5.com/bex5-deploy-question-list-4013/

PC端流程选择执行者对话框调用自己的弹出框

平台默认的流转确认中的选择执行者对话框如果要修改样式等可以通过扩展空间的方式自己修改平台的UI2/system/components/justep/org/dialog/orgDialogPC.w,但这个文件修改后所有使用的地方样式都会被修改 如果只需要流转选择执行者时起作用可以自己新建一个.w继承平台的UI2/system/components/justep/org/dialog/orgDialogPC.w,然后按照需求进行修改;当然也可以自己新建一个全新的.w。   如果所有的流程功能都需要用自己的.w可以用扩展空间的方式修改/UI2/system/service/process/dialog/processDialog.w中相关的方法具体如下: Model.prototype.createExecutorDialogParam = function(item){方法中如下加一个src参数 return { reload: true, rootFilter: filter, data : { selected : { kind : 'sName', value : [] } }, src:"$UI/system/components/justep/org/dialog/orgDialogPC.w" }; 自己创建全新的.w(不用平台的orgDialogPC.w是)除了在上面的地方设置src,还是需要注意Model.prototype.createExecutorDialog = function() {方法中的实现,平台默认的这个地方是创建了一个OrgDialogPC,需要自己修改为创建一个windowDialog,如下: [...]

人员、人员成员和主人员成员的区别

人员(person)--客观存在,在组织中从事具体工作的最小个体,可以理解为一个自然人。 将人员分配到组织机构中任何组X5 织(org)下,形成一个新的组织单元,即人员成员(psm)。 在组织模型中,只有成为人员成员才能使他(她)承担起相关的职责,实现他(她)的使命。人员登录业务运行平台后,只能以人员成员的身份运行系统,才能实现其特定的职责。如果登录人员承担了多个职责(对应多个人员成员),那么在处理工作上,不同的功能会根据功能的环境选择和本功能对应的人员成员。 一人一个岗位时当前人员成和主人员成员是一样的。 一人多岗时当前人员成员和主人员成员就不一定是一样的,主人员成员的信息就是主岗位下的人员的信息。

组织和机构的区别

组织(org)只是一个泛化的抽象概念,组织单元可以从组织中继承出各种具体的组织,并扩展各个具体的属性。目前系统的组织包括:机构、部门、岗位、人员成员。 机构是组织中的一种表现形式,是一个容器,可以包含多个子机构、部门、岗位、人员成员等。 平台提供的获取当前组织或者机构的值的区别如下: 当前组织:获取的当前人员成员的上级的名字,是岗位就取的岗位,是部门就取的部门 当前机构:获取的当前人员成员所在的机构,当前人员成员的SFID的值中为.ogn的值就是当前组织的id,当前组织相关的数据就是SA_OPOrg中sID为这个id的值,并且sorgkindid为ogn这条记录中的数据

biz获取登录的终端类型

在登录的时候,平台会在登录的信息中存终端类型,biz层可以在loginAction的执行后事件中获取options参数获取状态类型 loginAction平台默认是在/BIZ/SA/OPM/system/system.process.m中添加的 具体的实现参考如下: public static void systemProcessAfterLoginAction() { Map<Object, Object> options = (Map<Object, Object>) ContextHelper.getActionContext().getParameter("options"); System.out.println("操作系统:"+options.get("OperatingSystem")); System.out.println("设备类型:"+options.get("DeviceType")); }

justep.Shell.showPage打开功能设置title

BeX5中从功能树中打开功能时默认都是有标题的,如下: 当自己调用justep.Shell.showPage打开功能时默认是没有标题的,如果需要设置标题,参考如下添加title的值: var url ="$UI/appdemo/test/process/windowDialog/staticActivity1.a?process=/appdemo/test/process/windowDialog/windowDialogProcess&activity=mainActivity"; justep.Shell.showPage({url:url,title:"详细页"});

studio中添加多语言选项

在studio中添加关系设置多语言或者给概念名称设置多语言等时只有中文和英文两个选项,可以通过下面的操作添加语言选择项 1.找到studio\dropins\studio-app2\plugins\plugin\lib\studio.jar文件,用winrar打开studio.jar(注意是打开不是解压) 2.找到datasource.xml文件复制出来一份 3.用记事本或者Notepad++打开复制出来的datasource.xml,找到<dataSource name="language" type="list">的设置加上需要的语言,如下: 4.把修改后的datasource.xml拷贝到studio.jar中覆盖原始的文件,然后启动studio

excel导入时传参

在excel导入时,有时需要把页面中的值传过去,在V3.5版本以及后续版本中importExcel组件提供了onCreateImportParam,可以给action传参 这个action默认的就是uploadImportExcel,可以自己在这个action上加参数然后在事件中给参数赋值,在这个action的执行前事件中就可以获取到 这个action的定义在/BIZ/SA/excel/logic/action/excel.action.m中 如下默认给这个action加一个参数test 在onCreateImportParam事件中给test传参: Model.prototype.importExcel1ImportCreateParam = function(event) { //直接给默认的action:uploadImportExcel传参 event.param['test'] = "传参测试" }; 在自己的process文件中引用/SA/excel/logic/action和/SA/excel/logic/code 然后添加动作uploadImportExcel 给uploadImportExcel加执行前事件获取参数test的值 public static void importProcessBeforeUploadImportExcel() { System.out.println(ModelUtils.getRequestContext().getActionContext().getParameter("test")); }

流程附言设置默认值

简单的设置就是在BIZ层的process文件或者.w的process组件的流转查询后(AfterAdvanceQuery)事件中获取到processControl去设置 如下:process文件中的事件java代码 public static void flowProcessAfterAdvanceQuery() { ProcessControl control = ProcessUtils.getProcessContext().getProcessControl(); control.setPostscript("同意"); } process组件中的事件js代码 Model.prototype.processAfterAdvanceQuery = function(event) { //设置附言默认值 event.processControl.setPostscript("同意"); }; 如果要整个模块都设置的一样在每个流程中设置会比较麻烦,可以通过配置文件设置 在模块的根目录下创建一个config.m文件,如(my.config.m)内容如下: <?xml version="1.0" encoding="UTF-8"?> <model xmlns="http://www.justep.com/model"> <config name="system.task.sContent.expr" [...]