77范文网 - 专业文章范例文档资料分享平台

NC-总结

来源:网络收集 时间:2018-12-10 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

上一封 下一封 开发

1.1关于参照

1.1.1系统参照

当要传入带条件的SQL语句时就必须修改系统的参照,如:参照“存货管理档案”,

只参照参数“产品对应的顶级存货分类”所定义的存货分类及其下属分类的存货档案。如该参数为空,则参照所有存货档案。

在UI中的setDefaultData类中添加对参照传入条件的修改,如: // 参照查询条件重写

// 获得要修改的表格项目,此处为要修改表头的产品编码

UIRefPane pane = (UIRefPane) getBillCardPanel().getHeadItem(

HpCostcardVO.PK_INVMANDOC).getComponent();

// 获得该参照的父类,以便修改getClassWherePart方法

AbstractRefGridTreeModel model = (AbstractRefGridTreeModel) pane.getRefModel();

// 获得该项目的PK值

if (SysInitBO_Client.getPkValue(this._getCorp().getPk_corp(), \) != null) {

// 通过

P值查询需要的内容K

String sPkValue = SysInitBO_Client.getPkValue(this._getCorp().getPk_corp(), \); String sWhere = model.getClassWherePart(); if (!sPkValue.equals(\)) { // 查询出大类的编码

SuperVO vo = HYPubBO_Client.queryByPrimaryKey(InvclVO.class,sPkValue);

}

}

sWhere = sWhere + \

+ vo.getAttributeValue(\).toString()+ \;

// 将新的WHERE条件传入setClassWherePart方法

model.setClassWherePart(sWhere);

1.1.2自定义参照

当系统提供的参照不能满足需求的时候就需要进行自定义参照. 自定义参照一般分为详情见自定义参照文件夹下。

2. 查询问题

2.1 查询模版中的自定义项

如果在查询模版中添加了一些自定义项,但是该单据的主表或者子表中都没有该项对应的字段时,就需要修改查询模版的查询方法.

在MyDelegator.java中修改queryByCondition()方法,涉及到多表,所以要加条

件“dr”改为“表名+dr”如下:

public SuperVO[] queryByCondition(Class voClass, String strWhere)

throws Exception {

strWhere = strWhere.replace(\, \); strWhere = strWhere + \ +ClientEnvironment.getInstance().getCorporation().getPk_corp()

+ \;SuperVO[] queryVos = nc.ui.hp.pub.ServiceFactory.getIHPPubService()

.queryCostgather(strWhere);

// return super.queryByCondition(voClass, strWhere);

return queryVos; }

如果在条件中需要加入其他的条件,比如加入本公司,需要在MyEventHandler.java中重载onBoQuery()方法

protected void onBoQuery() throws Exception { }

StringBuffer strWhere = new StringBuffer(); if (askForQueryCondition(strWhere) == false)

return;// 用户放弃了查询

// SuperVO[] queryVos = queryHeadVOs(strWhere.toString()); getBufferData().clear(); // 增加数据到Buffer // addDataToBuffer(queryVos);

strWhere.append(\ + strWhere + \

+ getUI()._getCorp().getPk_corp() + \);

doBodyQuery(strWhere.toString()); updateBuffer();

getUI().getBillCardPanel().setEnabled(true);

同时将查询模版中的所有项目都改为:表名+项目名。 如:将pk_costcard修改为hp_costcard. pk_costcard。

2.2 保存后刷新自定义项

如果添加页面上有自定义的项目,保存时不保存到数据库,那么保存完成后默认是不加载这些项的,想要加载就必须重载AbstractMyDelegator()方法

/**

* 根据条件进行数据查询(重写) 张建辉

*/

public SuperVO[] queryHeadAllData(Class headClass, String strBillType,

String strWhere) throws Exception {

BilltypeVO billVo = PfUIDataCache.getBillType(strBillType); if (billVo.getWherestring() != null }

&& billVo.getWherestring().length() != 0) {

if (strWhere != null)

strWhere = strWhere + \ + billVo.getWherestring() + \;

else

strWhere = billVo.getWherestring();

SuperVO[] vo = HYPubBO_Client.queryByCondition(headClass, strWhere); // 此处的vo对象是系统按照表查询出来的vo, 需要将此vo进行处理, // Getcostcardother是处理此vo的方法

vo = nc.ui.hp.pub.ServiceFactory.getIHPPubService()

.Getcostcardother(vo);

return vo; }

并在MyEventHandler.java中重载onBoSave()方法,在里面的最后加上下面一句话

super.onBoRefresh();

Getcostcardother(vo)代码参考CostCardDAO.java。

注:UI中不允许直接引用BS段的类,需要建立接口从而进行引用。

3. 保存问题

3.1 保存时报单据类型错误

方法说明:

错误描述 保存时报单据类型错误 错误原因 没有单据类型 错误解决 将CostCardUICtrl中的isExistBillStatus方法的返回值该为false

4. 获得页面值的一些操作

4.1 在UI里获取值

其他地方可以通过:

protected CostCardUI getUI() {

}

return (CostCardUI) getBillUI();

方法来获得该UI;

值 获得页面的参照 UIRefPane pane = (UIRefPane) getBillCardPanel().getHeadItem(HpCostcardVO.PK_INVMANDOC).getComponent(); AbstractRefGridTreeModel model = (AbstractRefGridTreeModel) pane.getRefModel(); 列表下获取值 getUI().getBillListPanel().getHeadBillModel().getValueAt(getUI().getBufferData().getCurrentRow(),\取得项目名称\ 卡片下获取值 将页面上的按钮设置为可用状态 当前时间 当前日期 当前操作员 _getServerTime() _getDate() _getOperator() getUI().getBillCardPanel().getHeadItem(\取得项目名称\ getButtonManager().getButton(IHPCostButton.QueryInputbaseButton).setEnabled(true); 方法 5. 联查单据

5.1联查费用

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库NC-总结在线全文阅读。

NC-总结.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/357539.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: