EAS BOS 根据F7控件动态生成表单

EAS BOS 根据F7控件动态生成表单

要实现从一个bos的F7控件中导入方案,取其中的分录信息来动态生成一个bos的KDTable,大概流程如下

需要导入的包

import com.kingdee.bos.ctrl.kdf.table.ICell;
import com.kingdee.bos.ctrl.kdf.table.IColumn;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

代码

 //动态删除列,删除前面已有的列,清空分录
 //kdEntrys为所要创建的分录的name
 List <Integer> removeCol = new ArrayList<Integer>();
 for(int i=0;i<kdEntrys.getColumnCount();i++)
 {
     if (i >= 0) 
     {    	                
         removeCol.add(i);
     }
 }
 Collections.reverse(removeCol);
 for (int index : removeCol) {
     kdEntrys.removeColumn(index);
 }
 
 //判断是否存在表头,没有的话创建一行表头,有的话就忽略,直接进行下面的操作
 if(kdEntrys.getHeadRow(0)==null||kdEntrys.getHeadRow(0).equals(""))
 {
     kdEntrys.addHeadRow(0);//创建一行表头
 }
 for(int i=0;i<info.getEntrys().size();i++)
 {
     //获取F7控件导入的分录的每一行数据
     entryInfo = info.getEntrys().get(i);//F7控件的分录的实例化,在前面用F7EntryInfo entryInfo定义;
     //遍历配置文件导入方案的分录,根据里面的数据动态添加列
     //新增一列并设置列名
     IColumn column= kdEntrys.addColumn();
     column.setKey("换成自己要设置的这一列的列名,即name属性");
     //设置首行标题
     ICell scell11 = kdEntrys.getHeadRow(0).getCell(i);
     scell11.setValue("换成自己要设置的表头");	    	
 }

效果展示

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值