NC开发流程一览表.doc

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
NC开发流程一览表

单表体的卡片型单据制作 单表体的单据:指装载界面数据的聚合VO表头为空,只存在一组表体VO。UI工厂设计了借口ISingleController,单表体单据界面控制类应实现此借口,并实现isSingleDetail方法。 前期准备:单据注册,模板初始化等等,在构造好类框架后要修改界面控制类。 注册单据类型 注册VO对象 如下: public String[] getBillVoName(){ Return new String[]{ SampleVo.class.getName(), SampleHeadVO.class.getName(), SampleHeadVo.class.getName(), }; } public String getPKField(){ Return “pk_sample”; } public String getChildPKField(){ Return “pk_sample”; } 注意此时的表头,表体的VO类一致。 3.是否走平台 public int getBusinessActionType(){ Return nc.ui.trade.businessaction.IBusinessActionType.BD; } 4.注册按钮 public int[] getCardButtonAry(){ Return new int[]{ IBillButton.Query, IBillButton.Add, IBillButton.Edit, IBillButton.Line, IBillButton.Save, IBillButton.Cancel, IBillButton.Refresh, }; } 最重要的一步,实现isSingleDetail方法。 public Boolean isSingleDetail(){ //单表体 Return true; } ISingleController用来支持但表头或单表体的单据,因此,当isSingleDetail方法返回true时,单据为单表体;当返回false时,单据为但表头。 单表头的卡片型单据制作 除了显示有很大差异外,单表头于单表体的唯一区别在于isSingleDetail方法的返回值。另外,在单表头界面增加浏览按钮和去掉行操作按钮。 虚拟主子表的卡片型单据制作 虚拟主子表单据:指的是那种数据来源于一张表,却根据(自定义的)特定规则虚拟主子表的结构,将一部分放到表头,剩下的字段放到表体的单据。它通常用于数据的分组,即把数据根据(自定义的)特定字段的值进行分组。字段值相等的数据自然的被归为一类,然后,把特定字段放到表头显示,属于它的一组数据在表体列表显示,形成了标准主子表的结构。 由于数据分组的特定规则取决于业务,因此UI工厂无法做缺省的实现。但加载数据库数据一般都在查询时完成,所以可以定制查询事件的行为,这需要为单据创建按钮事件处理器,并重载查询时基类调用的方法。加载数据的步骤如下: 第一步,与前面的步骤一样,并配置好界面控制器类。 在UI类重载按钮事件处理器类的方法,如下: Protected CardEventHandler createEventHandler(){ Return new SampleCardEventHandle(this.getUIControl()); } 构造按钮事件处理器类,重载onBoQuery方法。如下: Protected void onBoQuery() throws Exception{ UIDialog querydialog = getQueryUI(); If(querydialog.showModel())==(INormalQuery)querydialog; String strWhere=query.getWhereSql(); If(strWhere==null) strWhere=”1=1”; strWhere=”(”+strWhere+”) and (isnull(dr,0)=0)”; //将查询对话框条件加到整个查询条件后 If(getHeadCondition()!=null) strWhere=strWhere+”and”+getHeadCondition(); //查询数据表数据 SuperVO[] queryVos=getBusinessAction().queryHeadAllData( Class.forName(getUIController().getBillVoName()[1]), getUIController().getBillTy

您可能关注的文档

文档评论(0)

almm118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档