问题

问题1:nc63单据新增保存出现object is not an instance of declaring class
解决:查看报错日记,该问题主要是因为invoke方法找不到要执行的类,由于是在新增保存的时候出现的,所以查询了对应的接口,发现问题出现在新增的单据没有部署生成ejb,有时候部署ejb没法解决,那可能就需要勾选二开阶段复选框生成ejb。

问题2:单据导入数据生成单据出现违反唯一字段

解决:问题出现在元数据主体设置表体字段时候字段名称写成表体主键字段,要用表头主键字段。

ES curl searh 语句 es include type name_字段

问题3:单据模板设置的公式不生效

解决:勾选卡/列表片是否显示时候钩错成是否卡片/列表

ES curl searh 语句 es include type name_java_02


问题4:eclipse无法编译生成class文件

解决:添加以下配置

ES curl searh 语句 es include type name_数据_03


问题5:自由报表导出超过300多行的excel时报空指针异常

ES curl searh 语句 es include type name_字段_04

解决:在功能注册设置export_alldata参数等于Y,重进节点,将全部数据复选框勾选上

ES curl searh 语句 es include type name_字段_05


问题6:自由报表查询报缺失表达式

ES curl searh 语句 es include type name_java_06


解决:自由报表的有些参数没填写,将该填写的参数都设置必填,问题就解决了

问题7:查询出多条数据后点击非第一条数据时,点击的数据自动替换查询出的第一条数据

解决:

第一次是因为元数据中未勾选动态属性,所以懒加载时使用getAttributeValue方法时查询不到对应的值,导致方法findBusinessData获取的当前行值为0

ES curl searh 语句 es include type name_数据_07

ES curl searh 语句 es include type name_ES curl searh 语句_08


第二次是因为主键采用了子表主键的访问策略,导致findBusinessData获取的值为0

ES curl searh 语句 es include type name_主键_09

技巧

技巧1:单据的导出数据,如果超过1万行,需要在功能注册中添加一个参数

ES curl searh 语句 es include type name_字段_10

技巧2:通过接口的update方法新增表体行时,需要添加vo.setStatus(VOStatus.NEW);,不然没法插入表体数据。

技巧3:报错方法有如下两种
①MessageDialog.showErrorDlg(null, “提示”, “报错信息”);
②ExceptionUtils.wrappBusinessException(“报错信息”);

技巧4:NC6X的各单据状态对应枚举值一般如下:

  • 审批通过 --> 0
  • 审批通过 --> 1
  • 审批进行中 --> 2
  • 提交 --> 3
  • 自由 --> -1

技巧5:NC6X去掉界面的菜单栏

ES curl searh 语句 es include type name_主键_11


单据对应xml文件中去掉红框中的配置

ES curl searh 语句 es include type name_java_12

技巧6:NC6X系统项目架构

ES curl searh 语句 es include type name_字段_13

技巧7:nchome中的class类与工程类中的类重复,导致工程类中的类没办法生效,可以把nchome中对应的class类删掉,然后再更新类路径就可以了

ES curl searh 语句 es include type name_字段_14


技巧8:信息集管理可以动态的增删改查NC自带功能表信息字段

ES curl searh 语句 es include type name_java_15