单据模板一些常用方法收集
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
虽然单据模板可以配置很多东西,但经常我们还是要修改代码来完成功能,因为单据模板是nc开发中最常用的,所以
下面收集下和单据模板相关的方法和类。大家可补充ffice ffice" />
单据模板如何自己加载表头,表体数据。表头变化时会调用
BillUIBuffer的方法checkAndGetBodyVO
getEventHandler().getBufferData().clear();
getBillListPanel().getBodyBillModel().clearBodyData();
getEventHandler().addDataToBuffer(vos);getEventHandler().updateBuffer2();
PredevaluateBodyVO[] bvos =
((PredevaluateBillUI)getBillManageUI()).queryBodyVOs(vo);
if(bvos != null){
vo.setChildrenVO(bvos);
}else{
vo.setChildrenVO(null);
}
((PredevaluateBillUI)getBillManageUI()).getBufferData() .setCurrentVO(vo);
((PredevaluateBillUI)getBillManageUI()).getBufferData() .updateView();
隐藏表体字段
getBillCardPanel().hideBodyTableCol("bodyi t em");
getBillListPanel().hideBodyTableCol("bodyitem");
给按钮加子按钮
getButtonManager().getButton(IBillButton.Action).addChildButton(ButtonVOFactory.getInstance().build( IBillButton.Audit).buildButton());
多表头
ColumnGroup group = new Col umnGroup(“表头ffice:smarttags" />1”);GroupableTableHeader gt = ((GroupableTableHeader) getBillCardPanel().getBillTable("表体名
").getTableHeader());
gt..addColumnGroup(group);
group.add(getBillCardPanel().getBodyPanel("表体名").getShowCol("列名");
ColumnGroup group1 = new ColumnGroup("祖名");
GroupableTableHeader gt1 = ((GroupableTableHeader)
getBillListPanel().getBodyTable().getTableHeader());
gt1.addColumnGroup(group1);
group1.add(getBillListPanel().getBodyTable().getColumnModel().getColumn(2));
group1.add(getBillListPanel().getBodyTable().getColumnModel().getColumn(3));
取消列表的自动排序
类BillScrollPane的方法removeTableSortListener
如何得到表体某一列合计值
getBillListPanel().getBodyScrollPane("subbillb").setTotalRowShow(true);
getBillListPanel().getParentListPanel().setTotalRowShow(true);
getBillCardPanel().setTatolRowShow(true);
然后获取获取合计行的值
getBillCardPanel().getTotalTableModel().getValueAt("行号","列字段");
执行表头公式
getBillCardPanel().execHeadEditFormulas()
getBillCardPanel().execLoadEditFormulas()
单据卡片表头区域比例如何设置?
((nc.ui.pub.bill.BillCardLayout)getBillCardPanel().getLayout()).setHeadScale(80);
Nc如何获得单据加载单据模板的配置数据
nc.vo.pub.bill.BillTempletBodyVO[] tbodyvos = (nc.vo.pub.bill.BillTempletBodyVO[]) billCardPanel.getTempletData().getChildrenVO();
for (int j = 0; j < tbodyvos.length; j++) {
String colName = tbodyvos[j].getUserdefine1();
}
用getUserdefine1()获取
隐藏表体
getBillCardPanel().hideBodyTableCol("profitamount");
getBillListPanel().hideBodyTableCol("profitamount");
得到表头某参照
BillItem b1 = getBillCardPanel().getHeadI tem("fk_psndoc");
((UIRefPane)b1.getComponent()).setAutoCheck(false);
//调用模板中的非空字段的必输验证
getBillCardPanelWrapper().getBillCardPanel().dataNotNullValidate();
查询条件的取值可以使用系统函数,带有#value#的为系统函数,列表如下:系统函数名称描述
Sys_Account 会计期间
Sys_Year 当前年份
Sys_Month 当前月份
Sys_Date 当前日期
Sys_Operator 当前操作员