UI工厂学习一

1、单据模型:任何可以抽象为主子表模型的业务数据。入库单 、出库单…….目前UAP还只支持到这种常见的数据模型.

2、BillUIBuffer:客户端对数据的缓存.内部是通过ArrayList来实现的.通过setCurrentRow()可以设置选择的行号.通过getBufferData().addVOToBuffer()可以将vo设置进缓存.编辑的时候并非操作的缓存数据,只有保存后,缓存数据才得到更新.

String where = "isnull(dr,0)=0";
        nc.ui.trade.bsdelegate.BDBusinessDelegator delegator 
= new nc.ui.trade.bsdelegate.BDBusinessDelegator();
        nc.vo.pub.SuperVO[] vos 
= null;
        
try {
            vos 
= delegator.queryByCondition(
                    nc.vo.syys.all.ClassifypropVO.
class, where);
        } 
catch (Exception e) {
            
this.showErrorMessage("加载单据数据发生错误");
            e.printStackTrace();
        }
        
if (vos != null && vos.length != 0) {
            
for (int i = 0; i < vos.length; i++) {
                nc.vo.trade.pub.HYBillVO bill 
= new nc.vo.trade.pub.HYBillVO();
                bill.setParentVO(vos[i]);
                getBufferData().addVOToBuffer(bill);
            }
        }
        
try {
            setListHeadData(vos);
            setBillOperate(nc.ui.trade.base.IBillOperate.OP_NOTEDIT);
        } 
catch (Exception e) {
            e.printStackTrace();
        }

        
if (getBufferData().isVOBufferEmpty())
            getBufferData().setCurrentRow(
-1);
        
else
            getBufferData().setCurrentRow(
0);

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章