欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    NC客户化开发手册中级篇1.docx

    • 资源ID:14008518       资源大小:40.29KB        全文页数:31页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    NC客户化开发手册中级篇1.docx

    1、NC客户化开发手册中级篇1NC客户化开发手册前言目录前言 1第一章 规范篇 21.1 代码规范 21.2 注释规范 21.3 异常规范 21.4 其他规范 2第二章 基础篇 32.1 单据信息 32.1.1获取卡片和列表容器(Panel) 32.1.2当前界面卡片/列表状态 32.1.3获取/设置当前单据的操作状态: 32.1.4获取选择的树节点 32.1.5是否单表体 32.1.6设置单据卡片表头区域比例 32.1.7设置表体页签状态 32.1.8获取单据模板上定义的所有字段 32.2 VO的获取和赋值及更新 32.2.1 VO的获取 32.2.2 VO的操作 42.3 字段处理 52.3.

    2、1表头字段值 52.3.2表体字段值 52.3.3字段设置可编辑: 52.3.4隐藏字段 52.3.5设置数度 52.3.6设置字段焦点 62.4 公式 62.4.1执行、设置公式: 62.4.2公式解析器: 62.5 单据行操作 62.5.1获取表体选择行 62.5.2删除表体的自动排序 62.5.3行编辑状态: 62.5.4选中表体所有行 62.5.5列表下,表头行可多选的实现 72.5.6行操作(删除,增行等) 72.6 获取系统相关 72.6.1常量的获取(公司,操作员,时间) 72.6.2单据号的获取 72.7 程序健壮性及易用性 82.7.1单据保存时强制调用非空验证方法: 82.

    3、7.2弹出消息框代码: 82.7.3在编辑事件中常用的判断 82.7.4设置表体没有右键菜单方法 8第三章 高级篇 83.1 审批流 83.2 后台预警 83.3 后台任务 83.4 消息 83.5 错误定位(日志分析) 8第一章 个性化应用1 1.1 单据常用设置1.1.1 校验是否允许表体为空修改校验类里的 public boolean isAllowEmptyBody(String tablecode) return true; 1.1.2 显示单据中的行号在client端的xxxxxxCtrl.java中的public boolean isShowListRowNo() 显示列表的行号

    4、 return true; public boolean isShowCardRowNo() 显示卡片的行号 return true; 1.1.3 对某个表里的某个字段进行汇总 在模板中给要汇总的字段的是否合计属性打上勾 然后再对应的Controller类中修改下面几个方法:public boolean isShowCardRowNo() return true; public boolean isShowCardTotal() return true; public boolean isShowListRowNo() return true; public boolean isShowLis

    5、tTotal() return true; 再在对应的UI类中相应的方法中添加如下代码:/自动汇总 表体申请拨款金额 并给 表头的申请拨款金额 赋值getBillCardPanel().setHeadItem(napplytotal, getBillCardPanel().getTotalTableModel().getValueAt(0, 1);napplytotal:指的是赋值的字段名;0:指的是汇总表中的行;1:指的是汇总表中的列。1.2 单据界面个性化1.2.1 表体为零的,不显示为空,金额以千分位格式显示列表下千分位显示getBillListPanel().getParentList

    6、Panel().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) getBi

    7、llCardPanel().getTempletData().getChildrenVO(); for (int j = 0; j tbodyvos.length; j+) if (tbodyvosj.getPos() = 0 & tbodyvosj.getShowflag() = true) if (tbodyvosj.getDatatype().toString().equals(2) (UIRefPane) getBillCardPanel().getHeadItem( tbodyvosj.getItemkey().getComponent() .getUITextField() .se

    8、tNumShowType( nc.ui.pub.beans.textfield.IUITextFieldNUMShowType.THOUSANDS_SEPARATORS); 1.2.2 设置字体颜色getBillListPanel().getParentListPanel().setCellBackGround(i, key,new Color(252, 169, 175);1.2.3 单据组合表头/* * 设置组合表体表头 * param bill */ public static void groupableTableHeader(BillCardPanel bill) BillData

    9、billData = bill.getBillData(); /* wjh追加 组合表头 利用单据模板上的自定义1 开始 */ if (billData.getBodyItems() != null) nc.vo.pub.bill.BillTempletBodyVO tbodyvos = (nc.vo.pub.bill.BillTempletBodyVO) bill .getTempletData().getChildrenVO(); for (int j = 0; j tbodyvos.length; j+) / 根据模板上属性“自定义项1”来组合表体的组合表头 if (tbodyvosj.

    10、getUserdefine1() != null & tbodyvosj.getUserdefine1().trim().length() != 0) / 由于可能存在多叶签情况,所以要对叶签进行判断 String tablecode = tbodyvosj.getTable_code(); BillScrollPane scrollpane = bill .getBodyPanel(tablecode); GroupableTableHeader tableheaer = (GroupableTableHeader) scrollpane .getTable().getTableHeader

    11、(); String colName = tbodyvosj.getUserdefine1(); ColumnGroup cg1 = new ColumnGroup(colName); addColItem(scrollpane, cg1, tbodyvosj.getItemkey(); int njs = 1; for (int n = j + 1; n 1) tableheaer.addColumnGroup(cg1); break; else if (njs 1) tableheaer.addColumnGroup(cg1); break; /* * * 添加组合表头子项 王韶勇追加 *

    12、 * * param scrollpane * param colGroup * param sColItem */ private static void addColItem(BillScrollPane scrollpane, ColumnGroup colGroup, String sColItem) if (scrollpane.hasHideCol(sColItem) return; TableColumn col = scrollpane.getShowCol(sColItem); if (col != null) colGroup.add(col); 1.2.4 多表头Colu

    13、mnGroup group = new ColumnGroup(“表头1”);GroupableTableHeader gt = (GroupableTableHeader) getBillCardPanel().getBillTable(表体名).getTableHeader();gt.addColumnGroup(group);group.add(getBillCardPanel().getBodyPanel(表体名).getShowCol(列名);ColumnGroup group1 = new ColumnGroup(祖名); GroupableTableHeader gt1 = (G

    14、roupableTableHeader) 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

    15、FldgroupVO vos = new FldgroupVO3;FldgroupVO vo1 = new FldgroupVO();/ vo1.setPrimaryKey(0001);vo1.setGroupname(#1机组);vo1.setGroupid(new Integer(0);vo1.setGrouptype(0);vo1.setItem1(3);vo1.setItem2(2);vo1.setToplevelflag(Y);FldgroupVO vo2 = new FldgroupVO();/ vo2.setPrimaryKey(0002);vo2.setGroupname(#2

    16、机组);vo2.setGroupid(new Integer(0);vo2.setGrouptype(0);vo2.setItem1(5);vo2.setItem2(4);vo2.setToplevelflag(Y);FldgroupVO vo3 = new FldgroupVO();/ vo3.setPrimaryKey(0003);vo3.setGroupname(#3机组);vo3.setGroupid(new Integer(0);vo3.setGrouptype(0);vo3.setItem1(7);vo3.setItem2(6);vo3.setToplevelflag(Y);vos

    17、0 = vo1;vos1 = vo2;vos2 = vo3;/ 设置字段分组,在此不起作用,使用其下代码alterFieldGroup(vos)/ getReportBaseClass().setFieldGroup(vos);/ 修改表头列分组getReportBaseClass().alterFieldGroup(vos);1.2.6 单据联查PfLinkData linkQuery = new PfLinkData(); linkQuery.setBillID(单据主键的值); / SFClientUtil.openLinkedQueryDialog(H80103, this.getBi

    18、llUI(), linkQuery);1.3 系统信息获取1.3.1 当前操作员的人员信息 /* * 根据当前操作员查询出人员信息 * * param sOperator * return */ public static PsndocVO getPsndocByOpreator(String sOperator) PsndocVO psnmanvo = null; try / 当前操作人关联业务员 UserAndClerkVO clerkVO = (IUserAndClerkQueryService) NCLocator .getInstance().lookup( IUserAndCler

    19、kQueryService.class.getName() .findByUserID(sOperator); if (clerkVO = null | clerkVO.getPk_psndoc() = null | clerkVO.getPk_psndoc().length() = 0) return null; PsnBasManUnionVO psnBasManUnionVOs = (IPsnDocQueryService) NCLocator .getInstance().lookup(IPsnDocQueryService.class.getName() .queryPsnUnion

    20、VosByUnionCondition( bd_psnbasdoc.pk_psnbasdoc = + clerkVO.getPk_psndoc() + ); / 人员管理档案VO psnmanvo = psnBasManUnionVOs0.getPsnmanvo(); return psnmanvo; catch (Exception ex) ex.printStackTrace(); return psnmanvo; public static UserAndClerkVO getOpreatorsByClerkId(String ClerkId) / 当前操作人关联业务员 UserAndC

    21、lerkVO OpreatorVOs = null; try /根据人员档案主键查询出人员管理档案主键 IJHPubBill Qrypk = (IJHPubBill)NCLocator.getInstance().lookup(IJHPubBill.class); String psndocpk = Qrypk.QryManPKByBasPK(ClerkId); OpreatorVOs = (IUserAndClerkQueryService) NCLocator .getInstance().lookup( IUserAndClerkQueryService.class.getName()

    22、.queryByClerkId(psndocpk); catch (ComponentException e) e.printStackTrace(); catch (BusinessException e) e.printStackTrace(); return OpreatorVOs; 通过查找业务关联的操作员public static UserAndClerkVO getOpreatorsByClerkId(String ClerkId) / 当前操作人关联业务员 UserAndClerkVO OpreatorVOs = null; try /根据人员档案主键查询出人员管理档案主键 IJ

    23、HPubBill Qrypk = (IJHPubBill)NCLocator.getInstance().lookup(IJHPubBill.class); String psndocpk = Qrypk.QryManPKByBasPK(ClerkId); OpreatorVOs = (IUserAndClerkQueryService) NCLocator .getInstance().lookup( IUserAndClerkQueryService.class.getName() .queryByClerkId(psndocpk); catch (ComponentException e

    24、) e.printStackTrace(); catch (BusinessException e) e.printStackTrace(); return OpreatorVOs; Qrypk.QryManPKByBasPK(ClerkId)实现方法为:public String QryManPKByBasPK(String psnbasdocPK) throws BusinessException String sql = select pk_psnbasdoc from bd_psndoc where pk_psndoc=?; String pk_psndoc = null; SQLPa

    25、rameter para = new SQLParameter(); para.addParam(psnbasdocPK); List psndocPK = (List)this.executeQuery(sql, para, new ColumnListProcessor( 1); for (Iterator iter = psndocPK.iterator(); iter.hasNext();) pk_psndoc = (String) iter.next(); return pk_psndoc; 1.3.2 总帐的最小未结帐月份ICreateCorpQueryService cc= (I

    26、CreateCorpQueryService)getLocator().lookup(ICreateCorpQueryService.class.getName(); /查询总帐的最小未结帐月份 String sYearMonth = cc.querySettledPeriod(dwbm, GL);1.3.3 IP地址public static String getDefaultLoginIP() if (isRunningServer() return InvocationInfoProxy.getInstance().getRemoteHost(); else String ip = null; try ip = InetAddress.getLocalHost().getHostAddress(); catch (UnknownHostException e) Logger.error(e.getMessage(), e); throw new BusinessRuntimeException(e.getMessage(); return ip; private static boolean isRunningServer() return RuntimeEnv.getInstance().isRunningInServer(); 1.3.


    注意事项

    本文(NC客户化开发手册中级篇1.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开