bizFilter相关的用法

bizFilter组件通过简单的属性设置就可以给数据增加综合过滤的能力 关键属性有: filterData: 过滤数据 filterCols: 过滤关系 BizFilter可以为数据设置任意复杂的查询条件,还可以存储为可重用的查询模板 BizFilter的查询模板存储在SA_FilterPattern中,每个组件以sProcess、sActivity、sInstance(xid)做数据过滤,获取自身的模板列表 1.动态控制bizFilter过滤的列 组件提供了filterCols属性可以直接设置要过滤的列,js也可以通过设置这个属性的值设置要过滤的列 如:this.comp("filter").set({'filterCols':'fName,fCode'}); filter是bizFilter的xid fName,fCode就是要设置的列 2.获取bizFilter生成的过滤条件 过滤条件是给data设置了,data上提供了getFilter可以传filter的名字获取对应的过滤条件 bizFilter生成的filter的名字规则如下: _BIZ_FILTER_bizFilter的xid 前面的_BIZ_FILTER_是固定的 如果bizFilter的xid是filter1,那么获取过滤条件就用this.comp("filterData").getFilter("_BIZ_FILTER_filter1")

gridSelect下拉控制哪些行才可以选择

gridSelect组件提供了selectFilter属性设置选中过滤表达式,此属性需要在创建时给出,组件创建后修改无效 表达式执行的this是行,即$row 当前表达式中可使用变量: "$model" : 当前的model, "$row" : {$UI/system/components/justep/data/data#Row} 当前过滤执行的行 如gridSelect下拉组织机构中的数据控制只有人员可以选择 可以在selectFilter上设置 val('sOrgKindID') == 'psm'

.w和.m.w的区别

UI2下的.w功能页面可以在PC和移动端访问 如果同一个功能需要PC和移动端访问不同的页面,可以把移动端的.w设置为.m.w,这样在pc端运行的时候平台默认就找.w,在移动端运行的时候平台默认就找.m.w 需要注意的是.w和.m.w前面的文件名一定要相同 另为如果要控制PC和移动端显示不同功能可以在功能树的菜单文件XXX.function.xml中设置设备类型进行控制: 设备类型为pc功能可以在pc上展现 设备类型为m功能可以在移动设备上展现

attachmentSimple控制上传的文件类型和大小

attachmentSimple组件默认没有提供设置上传类型和大小的属性和事件的控制,如果需要控制,可以获取到组件上的uploader,在uploader上绑定事件onFileSelected进行控制 获取uploader参考: var uploader = this.comp("attachmentSimple1").uploader; 给uploader绑定onFileSelected参考: uploader.on('onFileSelected',function(event){ }); 一、控制上传类型 在onFileSelected事件中可以通过event.file.type获取到上传的文件类型,这个类型是用ContentType 类型控制如: event.event.file.type = 'application/msword' 就是控制的.doc,其他相关类型的对应可以参考:http://www.3464.com/Data/HTTPContentType/ 如果要直接判断doc、txt这样的文件后缀类型可以通过获取的上传的文件名,截取后缀去判断,获取文件名用event.file.name 判断类型不符合条件的可以用event.cancel = true终止上传 如下: Model.prototype.modelLoad = function(event) { var uploader = this.comp("attachmentSimple1").uploader;//获取uploader var rootNode [...]

自定义的公共js文件如何设置每个.w都默认引用

新建.w是平台默认引用了var justep = require("$UI/system/lib/justep"); 如果自己定义的公共js文件也需要默认就引用可以添加到这个/UI2/system/lib/justep.js中 具体设置如下(在/UI2/demo/common下有一个common.js文件): 1.在justep.js的define中加入common.js的引用 var _Comm = require("$UI/demo/common/common"); 2.添加justep.Comm = _Comm;定义 3.执行model同级的tools\dist下的dist.bat批处理文件合并一下js文件 4.js中可以直接用justep.Comm去调用具体的公共js中的函数

报表中显示attachmentSimlpe组件上传的图片

在报表设计器中,选中要显示图片的单元格,设置属性display-type为image 只要字段中的内容是一个图片的url,就可以显示出这个图片了。 attachmentSimlpe组件对应的存图片的字段里面的内容是JSON格式的,需要将其改为图片的url,这个改变通过写java代码实现,因此reportData不能使用KSQLAction,要使用Action。Action对应的java代码完整案例如下: import java.util.Iterator; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.justep.system.data.KSQL; import com.justep.system.data.Row; import com.justep.system.data.Table; import com.justep.util.Utils; public class Test { public static Table reportAttSimple() { String ksql = "select attSim.* from AP_AttachmentSample attSim"; [...]

如何将自己需要的信息写到Context上下文中

$UI/system/lib/base/context 是页面上下文,通过this.getContext()调用相关的API可以获取到当前页面和当前人等信息 平台提供的context中的信息可能是有限的,如果自己要添加其他的信息如获取当前登录的邮编等,可以通过下面的方式扩展 1.重写平台提供的getSysParamsAction(/BIZ/system/logic/action/system.action.m),把自己需要的信息放到map中返回 public static Object getSysParams() { Map hashMap = (HashMap<String, String>) ContextHelper.getSysParams(); //平台默认的context中的信息 hashMap.put("currentTestLabel", "aaa");//把自己要的信息put到map中 return hashMap; } 2.js中获取返回的currentTestLabel的值 this.getContext().getSystemParameter("currentTestLabel");

报表中边框线的设置

报表读取边线的时候是读取单元格的 左边框和上边框,正常情况下excel中上个单元格的下边框 就是下个单元格的上边框,通过excel的对应的xml文件可以知道这个边框线在上面单元格的下面 和下面单元格的上面都有,但是某些特殊情况excel会在其中一个单元格中丢失边框可能会丢失,可以选中选中没有下边框的下面的单元格,重新设置这个单元格的上边框。 注意:不是缺少边框的单元格,是这个单元格的下边单元格的上边框;而且如果有单元格合并,最好在合并前设置边框,再合并