动态列表
以demo中“订单(动态列表)”为例说明:此列表显示的信息包括订单主表的信息和订单子表的信息,其中主表信息是编号为ES_ORDER对应列表的信息,子表的信息是从后台动态取得:
1.列表标签中需增加属性dynamicColumn=””;
<grid:jqGrid gridId="dynamicOrder" url="${ctx}/order/dynamic-order.htm" code="ES_ORDER" pageName="dynamicPage" dynamicColumn="${dynamicColumn}"></grid:jqGrid>
在action中定义变量与其对应:
private List<DynamicColumnDefinition> dynamicColumn=new ArrayList<DynamicColumnDefinition>();
2.进入列表页面时后台action调用方法packagingDynamicColumn(),将动态列表追加的表头信息添加进去,追加子表的表头信息是子表中的某个字段,如下方法:
private void packagingDynamicColumn() throws Exception {
//取得子表字段产品名称,以此字段作为表头
List<Object> productNames=orderManager.getOrderItem();
for(int i=0;i<productNames.size();i++){
// "productName"+i是动态列表中每一列的的id
DynamicColumnDefinition dynamicColumnDefinition=new DynamicColumnDefinition(productNames.get(i)
.toString(),"productName"+i);
//是否可编辑
dynamicColumnDefinition.setEditable(true);
//设置数据类型
dynamicColumnDefinition.setType(DataType.INTEGER);
//设置编辑规则
dynamicColumnDefinition.setEditRules("required:true");
//设置是否合计
dynamicColumnDefinition.setIsTotal(true);
//是否导出true表示导出,false表示不导出,默认为true
dynamicColumnDefinition.setExportable(false);
//是否显示true表示显示,false表示不显示,默认为true
dynamicColumnDefinition.setVisible(false);
//列宽
dynamicColumnDefinition.setColWidth("100");
//编辑时为下拉选
dynamicColumnDefinition.setEdittype(EditControlType.SELECT);
dynamicColumnDefinition.setEditoptions("1:'启用',2:'禁用'");
///编辑时为下拉选时的chang事件
dynamicColumnDefinition.setEventType(EventType.ONCHANGE);
//编辑时给input框增加点击事件
dynamicColumnDefinition.setEventType(EventType.ONCLICK);
//编辑时增加默认值CURRENT_USER_NAME表示当前用户名、CURRENT_LOGIN_NAME表示当前登录名、CURRENT_TIME表示当前时间(yyyy-MM-dd hh:mm:ss)、CURRENT_DATE表示日期(yyyy-MM-dd)dynamicColumnDefinition.setDefaultValue(DefaultValue.CURRENT_USER_NAME); dynamicColumnDefinition.setDefaultValue(DefaultValue.CURRENT_LOGIN_NAME); dynamicColumnDefinition.setDefaultValue(DefaultValue.CURRENT_TIME);
dynamicColumnDefinition.setDefaultValue(DefaultValue.CURRENT_DATE);
dynamicColumn.add(dynamicColumnDefinition);
}
}
上述方法中dynamicColumnDefinition的属性根据需求设定,很多是不需要设定的;
1. 标签中取列表数据在后台需调用下面方法:
@Action("dynamic-order")
public String getDynamicOrder() throws Exception {
dynamicPage=orderManager.search(dynamicPage);
this.renderText(PageUtils.dynamicPageToJson(dynamicPage,new DynamicColumnValues(){
public void addValuesTo(List<Map<String, Object>> result) {
Map<String,DynamicColumnDefinition> dynamicColumnName=mmsUtil.getDynamicColumnName();
//取动态列表的列的id
Set<String> productNames=dynamicColumnName.keySet();
for(Map<String, Object> map:result){
Long orderId=Long.valueOf(map.get("id").toString());
for(String productName:productNames){
DynamicColumnDefinition productValue=dynamicColumnName.get(productName);
//在子表的字段中设置值,这里取的是产品数量
map.put(productName.toString(), orderManager.getProductAmount(productValue.getColName(),orderId));
}
}
}
}));
return null;
}
说明:page转json需要调dynamicPageToJson;
result是主表取出来的每一条数据。
关于标签更详细的资料可以到官网下载:http://www.imatrix.net.cn
如有使用iMatrix平台问题请登录iMatrix平台论坛咨询:
http://bbs.imatrix.net.cn/forum.php?mod=forumdisplay&fid=37
相关推荐
iMatrix是一个企业级的JAVA快速开发平台,采用了先进的SOA体系架构和标准规范,并提供了层次分明的MVC多层结构,实现了平台内部以及同其他系统接口的松散耦合。用户可通过平台提供的“权限、流程、表单、报表、任务、...
iMatrix6.0.0Dev:iMatrix平台6.0.0.Dev源码
DataLogic Matrix300N 中文彩页,中文说明书,宣传彩页
label matrix是一款非常好用且功能强大的通用条码标签设计系统,安装使用这款label matrix中文版可以让您在使用过程中不受语言的影响,有需要的朋友们欢迎前来下载使用。 软件特色 独有的条码驱动打印技术,打印...
在Android中进行图像旋转需要使用Matrix,它包含了一个3*3的矩阵,专门用于进行图像变换匹配。Matrix ,中文里叫矩阵,高等数学里有介绍,在图像处理方面,主要是用于平面的缩放、平移、旋转等操作。Matrix没有机构...
提供SDK二次开发包,将标签中的文字、图片与条码设置为变量,可以被其它软件调用打印。 支持日期、时间文本,打印标签时按当前时间打印,并有延后功能,例如实现同时打印生产日期与保质日期; 支持条码导出为EMF...
5.2.1.RC iMatrix平台的5.2.1.RC源码
一个简单的demo。使用android中的matrix属性,实现图片的放大、缩小、以及左旋转、右旋转。
Matrix类,2008年刚学C#时写的,一直想重构,所以一直没重构
Matlab-matrix 介绍 2020年矩阵与数值分析上机实验,MATLAB实现。 2.1 GaussElimination.m实现了高斯消去法求解方程组 L_GaussElimination.m实现了带列主元的高斯消去法求解方程组 LU.m实现了LU分解 LUP.m实现了带...
通过C++实现了矩阵的加、减、乘、除基本运算、转置、求逆、求秩、求行列式、LU分解、QR分解、LUP分解、LDU分解、特征值及特征向量求解等矩阵运算方法。
SSRS:动态表头的Matrix实现,Blog原文:http://blog.csdn.net/hery2002/article/details/45743057
iMatrix-v6.5.RC1:平台v6.5.RC1版本对应的原始码,包含lib包
datalogic MATRIX 120N说明书
led matrix,16x16屏,实现上下左右,滚动,代码有说明,配有字模提取软件,方便大家学习使用。可在这个基础上扩展更大的屏幕。
该代码主要使用C++编译,可以直接新建空动态库,将源码放入工程即可编译,在程序中主要用于DataMatrix码的生成
Camera, Matrix 实现WheelView 3d效果
游戏中背景的滚动效果(如雷电)+Matrix实现图片拉伸(实现近大远小效果)
Label Matrix32简体中文,里面有:安装程序、注册程序、序列号、Label Matrix图文使用手册、汉化程序,一直成功使用
利用Matrix实现activity跳转的3d效果