NC客户化开发手册(中级篇)[1]

2019-06-11 10:39

NC客户化开发手册

前言

目录

前言 ........................................................................................................................................................................... 1 第一章

1.1 1.2 1.3 1.4 第二章

2.1

规范篇 ................................................................................................................... 错误!未定义书签。 代码规范 .......................................................................................................... 错误!未定义书签。 注释规范 .......................................................................................................... 错误!未定义书签。 异常规范 .......................................................................................................... 错误!未定义书签。 其他规范 .......................................................................................................... 错误!未定义书签。 基础篇 ................................................................................................................... 错误!未定义书签。 单据信息 .......................................................................................................... 错误!未定义书签。 2.1.1获取卡片和列表容器(Panel) ......................................................................... 错误!未定义书签。 2.1.2当前界面卡片/列表状态 ................................................................................ 错误!未定义书签。 2.1.3获取/设置当前单据的操作状态: ................................................................ 错误!未定义书签。 2.1.4获取选择的树节点 ......................................................................................... 错误!未定义书签。 2.1.5是否单表体 ..................................................................................................... 错误!未定义书签。 2.1.6设置单据卡片表头区域比例 ......................................................................... 错误!未定义书签。 2.1.7设置表体页签状态 ......................................................................................... 错误!未定义书签。 2.1.8获取单据模板上定义的所有字段 ................................................................. 错误!未定义书签。 2.2

VO的获取和赋值及更新.................................................................................. 错误!未定义书签。 2.2.1 VO的获取 ...................................................................................................... 错误!未定义书签。 2.2.2 VO的操作 ...................................................................................................... 错误!未定义书签。 2.3

字段处理 .......................................................................................................... 错误!未定义书签。 2.3.1表头字段值 ..................................................................................................... 错误!未定义书签。 2.3.2表体字段值 ..................................................................................................... 错误!未定义书签。 2.3.3字段设置可编辑: ......................................................................................... 错误!未定义书签。 2.3.4隐藏字段 ......................................................................................................... 错误!未定义书签。 2.3.5设置数度 ......................................................................................................... 错误!未定义书签。 2.3.6设置字段焦点 ................................................................................................. 错误!未定义书签。 2.4

公式 .................................................................................................................. 错误!未定义书签。 2.4.1执行、设置公式: ......................................................................................... 错误!未定义书签。 2.4.2公式解析器: ................................................................................................. 错误!未定义书签。 2.5

单据行操作 ...................................................................................................... 错误!未定义书签。 2.5.1获取表体选择行 ............................................................................................. 错误!未定义书签。 2.5.2删除表体的自动排序 ..................................................................................... 错误!未定义书签。 2.5.3行编辑状态: ................................................................................................. 错误!未定义书签。 2.5.4选中表体所有行 ............................................................................................. 错误!未定义书签。 2.5.5列表下,表头行可多选的实现 ..................................................................... 错误!未定义书签。 2.5.6行操作(删除,增行等) .................................................................................. 错误!未定义书签。

第 1 页 / 共 19 页

2.6

获取系统相关 .................................................................................................. 错误!未定义书签。 2.6.1常量的获取(公司,操作员,时间) ......................................................... 错误!未定义书签。 2.6.2单据号的获取 ................................................................................................. 错误!未定义书签。 2.7

程序健壮性及易用性 ...................................................................................... 错误!未定义书签。 2.7.1单据保存时强制调用非空验证方法: ......................................................... 错误!未定义书签。 2.7.2弹出消息框代码: ......................................................................................... 错误!未定义书签。 2.7.3在编辑事件中常用的判断 ............................................................................. 错误!未定义书签。 2.7.4设置表体没有右键菜单方法 ......................................................................... 错误!未定义书签。

第三章

3.1 3.2 3.3 3.4 3.5

高级篇 ................................................................................................................... 错误!未定义书签。 审批流 .............................................................................................................. 错误!未定义书签。 后台预警 .......................................................................................................... 错误!未定义书签。 后台任务 .......................................................................................................... 错误!未定义书签。 消息 .................................................................................................................. 错误!未定义书签。 错误定位(日志分析)................................................................................... 错误!未定义书签。

第一章 个性化应用

1.1 单据常用设置 1.1.1 校验是否允许表体为空

修改校验类里的

public boolean isAllowEmptyBody(String tablecode) { }

return true;

1.1.2 显示单据中的行号

在client端的xxxxxxCtrl.java中的

public boolean isShowListRowNo() { // 显示列表的行号

} }

return true; return true;

public boolean isShowCardRowNo() { // 显示卡片的行号

1.1.3 对某个表里的某个字段进行汇总

? ?

public boolean isShowCardTotal() { }

return true;

在模板中给要汇总的字段的是否合计属性打上勾 然后再对应的Controller类中修改下面几个方法: }

return true;

public boolean isShowCardRowNo() {

第 2 页 / 共 19 页

public boolean isShowListRowNo() { ?

public boolean isShowListTotal() { }

再在对应的UI类中相应的方法中添加如下代码:

return true; }

return true;

//自动汇总 表体申请拨款金额 并给 表头的申请拨款金额 赋值

getBillCardPanel().setHeadItem(\napplytotal:指的是赋值的字段名;

0:指的是汇总表中的行;1:指的是汇总表中的列。

1.2 单据界面个性化

1.2.1 表体为零的,不显示为空,金额以千分位格式显示

列表下千分位显示

getBillListPanel().getParentListPanel().setShowThMark(true);

getBillCardPanel().getBodyPanel().getRendererVO().setShowZeroLikeNull(

false);

// resolved 金额以会计格式显示,如:123,456,789,12

getBillCardPanel().getBodyPanel().getRendererVO().setShowThMark(true);

nc.vo.pub.bill.BillTempletBodyVO[] tbodyvos = (nc.vo.pub.bill.BillTempletBodyVO[]) for (int j = 0; j < tbodyvos.length; j++) { }

if (tbodyvos[j].getPos() == 0 && tbodyvos[j].getShowflag() == true) { }

if (tbodyvos[j].getDatatype().toString().equals(\ }

((UIRefPane) getBillCardPanel().getHeadItem(

tbodyvos[j].getItemkey()).getComponent()) .getUITextField() .setNumShowType(

getBillCardPanel().getTempletData().getChildrenVO();

nc.ui.pub.beans.textfield.IUITextFieldNUMShowType.THOUSANDS_SEPARATORS);

1.2.2 设置字体颜色

getBillListPanel().getParentListPanel().setCellBackGround(i, key,new Color(252, 169, 175));

1.2.3 单据组合表头

/**

*设置组合表体表头 *@parambill */

publicstaticvoid groupableTableHeader(BillCardPanel bill) {

BillData billData = bill.getBillData();

第 3 页 / 共 19 页

/* wjh追加 组合表头 利用单据模板上的自定义1 开始 */

if (billData.getBodyItems() != null) {

nc.vo.pub.bill.BillTempletBodyVO[] tbodyvos =

.getTempletData().getChildrenVO();

(nc.vo.pub.bill.BillTempletBodyVO[]) bill

for (int j = 0; j < tbodyvos.length; j++) {// 根据模板上属性“自

定义项1”来组合表体的组合表头 if (tbodyvos[j].getUserdefine1() != null

&&

tbodyvos[j].getUserdefine1().trim().length() != 0) {

// 由于可能存在多叶签情况,所以要对叶签进行判断

String tablecode = tbodyvos[j].getTable_code();

BillScrollPane scrollpane = bill

{

.getBodyPanel(tablecode);

GroupableTableHeader tableheaer =

.getTable().getTableHeader();

(GroupableTableHeader) scrollpane

String colName = tbodyvos[j].getUserdefine1(); ColumnGroup cg1 = new ColumnGroup(colName); addColItem(scrollpane, cg1, int njs = 1;

for (int n = j + 1; n < tbodyvos.length; n++, j++) {

tbodyvos[j].getItemkey());

if (tbodyvos[n].getUserdefine1() != null

if }

&&

.trim().length() != 0 && n == j + 1)

tbodyvos[n].getUserdefine1().toString()

(tbodyvos[n].getUserdefine1().equals(colName)

&& tbodyvos[n].getTable_code().equals(

tablecode)) {

addColItem(scrollpane, cg1,

tbodyvos[n].getItemkey());

njs++; continue; if (njs > 1) { } break;

tableheaer.addColumnGroup(cg1);

} else {

} else {

if (njs > 1) {

第 4 页 / 共 19 页

}

}

}

}

}

}

}

tableheaer.addColumnGroup(cg1);

break;

/** *

*添加组合表头子项王韶勇追加 *

*

*@paramscrollpane *@paramcolGroup *@paramsColItem */

privatestaticvoid addColItem(BillScrollPane scrollpane, ColumnGroup

String sColItem) {

colGroup,

}

if (scrollpane.hasHideCol(sColItem))

return;

TableColumn col = scrollpane.getShowCol(sColItem); if (col != null)

colGroup.add(col);

1.2.4 多表头

ColumnGroup group = new ColumnGroup(“表头1”);

GroupableTableHeader gt = ((GroupableTableHeader) getBillCardPanel().getBillTable(\表体名\gt.addColumnGroup(group);

group.add(getBillCardPanel().getBodyPanel(\表体名\列名\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));

1.2.5 报表列分组

注释:详细解释请参看nc.vo.pub.cquery.FldgroupVO

第 5 页 / 共 19 页


NC客户化开发手册(中级篇)[1].doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:湖南华菱湘潭钢铁有限公司高线厂安全标准化自评报告 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: