EAS BOS 绑定QUERY的列表界面,代码添加合计脚

在executQuery()方法中调用。(可以参考com.kingdee.eas.scm.common.client. MaterialQueryListUI)  
@Override  
protected boolean isFootVisible() {  
    return true;  
}  
  
protected IRow appendFootRow() throws Exception  
{  
        if(!isFootVisible())  
            return null;  
        Object footVisible = getUIContext().get("SumVisible");  
        if(footVisible != null && !Boolean.valueOf(footVisible.toString()).booleanValue())  
            return null;  
        java.util.List fieldSumList;  
        IRowSet singleRowSet;  
        fieldSumList = getFieldSumList();  
        if(fieldSumList.size() <= 0)  
        abort();  
        QueryFieldInfo fieldInfo[] = new QueryFieldInfo[fieldSumList.size()];  
        System.arraycopy(((Object) (fieldSumList.toArray())), 0, fieldInfo, 0, fieldSumList.size());  
        IQueryExecutor iexec = getQueryExecutor(mainQueryPK, getEntityViewInfo());  
        singleRowSet = iexec.sum(fieldInfo);  
        if(singleRowSet == null)  
            return null;  
        try  
        {  
            singleRowSet.next();  
            IRow footRow = null;  
            KDTFootManager footRowManager = detailTable.getFootManager();  
            if(footRowManager == null)  
            {  
                String total = EASResource.getString("com.kingdee.eas.framework.FrameWorkResource.Msg_Total");  
                footRowManager = new KDTFootManager(detailTable);  
                footRowManager.addFootView();  
                detailTable.setFootManager(footRowManager);  
                footRow = footRowManager.addFootRow(0);  
                footRow.getStyleAttributes().setHorizontalAlign(com.kingdee.bos.ctrl.kdf.util.style.Styles.HorizontalAlignment.getAlignment("right"));  
                detailTable.getIndexColumn().setWidthAdjustMode((short)1);  
                detailTable.getIndexColumn().setWidth(30);  
                footRowManager.addIndexText(0, total);  
            } else  
            {  
                footRow = footRowManager.getFootRow(0);  
            }  
            String colFormat = "%{0.##########}f";  
            int columnCount = detailTable.getColumnCount();  
            for(int c = 0; c < columnCount; c++)  
            {  
                String fieldName = detailTable.getColumn(c).getFieldName();  
                for(int i = 0; i < fieldSumList.size(); i++)  
                {  
                    QueryFieldInfo info = (QueryFieldInfo)fieldSumList.get(i);  
                    String name = info.getName();  
                    if(name.equalsIgnoreCase(fieldName))  
                    {  
                        ICell cell = footRow.getCell(c);  
                        cell.getStyleAttributes().setNumberFormat(colFormat);  
                        cell.getStyleAttributes().setHorizontalAlign(com.kingdee.bos.ctrl.kdf.util.style.Styles.HorizontalAlignment.getAlignment("right"));  
                        cell.getStyleAttributes().setFontColor(Color.BLACK);  
                        cell.setValue(singleRowSet.getBigDecimal(name));  
                    }  
                }  
   
            }  
   
            footRow.getStyleAttributes().setBackground(new Color(246, 246, 191));  
            return footRow;  
        }  
        catch(Exception E)  
        {  
            E.printStackTrace();  
        }  
        return null;  
    }  

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值