金蝶BOS开发中Edit编辑界面和List叙事薄界面需要写的代码
2012-05-01 21:02
274 查看
本人刚开始从事金蝶EAS开发,对于这个也是刚刚解除,下面是一些学习整理,
EditUI中的代码
ListUI中的代码
EditeUI 类是客户端编辑界面对应的类
ListUI 类是客户端叙事簿界面对应的类
EditUI中的代码
public class MyBillEditUI extends AbstractMyBillEditUI { public MyBillEditUI() throws Exception { super(); } //把数据对象加载到当前UI界面相应的控件 public void loadFields() { super.loadFields(); } //同步当前UI业务数据到数据对象 public void storeFields() { super.storeFields(); } //进行某些控件或数据设置 public void onLoad() throws Exception { IColumn column = this.kdtEntries.getColumn(1); column.getStyleAttributes().setLocked(true); super.onLoad(); this.actionSubmit.addService( new ForewarnService() ) ; this.actionSubmit.addService( new WorkFlowService() ) ; this.actionSubmit.setBindWorkFlow( true ) ; } //创建新的数据对象,并设置初始值 protected IObjectValue createNewData() { MyBillInfo result = new MyBillInfo(); result.set*(value); result.getEntries(); return result; } //创建分录数据对象,并设置初始值 protected IObjectValue createNewDetailData(KDTable table) { return new MyBillEntryInfo(); } //获取分录table protected KDTable getDetailTable() { return kdtEntries; } //获取业务接口 protected ICoreBase getBizInterface() throws Exception { return MyBillFactory.getRemoteInstance(); } //检验数据的合法性,并抛出异常 protected void verifyInput(ActionEvent e) throws Exception { if (this.getDataObject()==null){ throw new Exception();} } //设置某些字段==null protected void setFieldsNull(AbstractObjectValue newData) { newData.set**(null); } //保存数据 public IObjectPK runSave() throws Exception { //设置editData的某些值 super.runSave(); } //同runSave public IObjectPK runSubmit() throws Exception { … super.runSubmit(); } //修改后是提交或暂存 true为暂存 false为提交 protected boolean isModifySave() { return false; }
ListUI中的代码
public class MyBillListUI extends AbstractMyBillListUI { public MyBillListUI() throws Exception{ super(); this.setUITitle("单据测试"); } /** *把数据对象加载到当前UI界面相应的控件,针对序事薄没有用处 */ public void loadFields(){ super.loadFields(); } /** *同步当前UI业务数据到数据对象,针对序事薄没有用处 */ public void storeFields(){ super.storeFields(); } /** *提供序事薄需要打开的编辑界面UI的类名 */ protected String getEditUIName() { return MyBillEditUI.class.getName(); } /** *返回当前业务的远程或本地业务接口 */ protected ICoreBase getBizInterface() throws Exception { return MyBillFactory.getRemoteInstance(); } /** *由开发人员提供当前table的主键字 */ protected String getKeyFieldName() { return "id"; } /** *如果业务需要融合某些列,需要提供这些列的key(即融合单据头) */ public String[] getMergeColumnKeys(){ String[] mergeColumn = new String[2]; mergeColumn[0] = new String("id"); mergeColumn[1] = new String("number"); return mergeColumn; } /** *要在状态栏显示当前的单据条数,需要业务返回计算单据条数的字段 */ protected String[] getCountQueryFields(){ return new String[] {“id“}; } /** *可以指定当前窗口的打开模式,默认情况下不用指定 * UIFactoryName.MODEL,UIFactoryName.NEWWIN,UIFactoryName.NEWTAB */ protected String getEditUIModal(){ return UIFactoryName.MODEL; } /** *是否需要进行表格排序,业务可以覆盖返回false,屏蔽点击单据头排序动作 */ protected boolean isOrderForClickTableHead(){ return true; } /** *返回不需要排序的表列数组,默认返回null */ protected String[] getNotOrderColumns(){ return null; } /** *可以在父类的onload后做一些自己的事情 */ public void onLoad() throws Exception { super.onLoad(); //如设置滚动条隐藏 //this.getMainTable().setScrollStateVertical(KDTStyleConstants.SCROLL_STATE_HIDE); } /** *允许构造传递给EditUI的UIContext,继承类实现 */ protected void prepareUIContext(UIContext uiContext, ActionEvent e){ super.prepareUIContext(uiContext,e); //传递自己的上下文参数或其他值 uiContext.put(key,value); } /** *关闭窗口 */ public boolean destroyWindow() { super.destoryWindow(); //做自己的一下销毁动作 } }
EditeUI 类是客户端编辑界面对应的类
ListUI 类是客户端叙事簿界面对应的类
相关文章推荐
- 金蝶BOS开发中Edit编辑界面和List叙事薄界面需要写的代码
- 金蝶BOS开发中Edit编辑界面和List叙事薄界面需要写的代码
- 金蝶BOS开发中Edit编辑界面和List叙事薄界面需要写的代码
- 金蝶BOS开发中Edit编辑界面和List叙事薄界面需要写的代码
- 金蝶BOS开发中Edit编辑界面和List叙事薄界面需要写的代码
- 金蝶BOS中Edit编辑界面和List叙事薄界面的常用方法简介。
- iOS 9应用开发教程之编辑界面与编写代码
- iOS 9应用开发教程之编辑界面与编写代码
- iOS 9应用开发教程之编辑界面与编写代码
- Android开发之使一打开activity等界面Edittext获取焦点,弹出软键盘java代码实现
- [置顶] Android开发之使一打开activity等界面Edittext获取焦点,弹出软键盘java代码实现
- iOS 9应用开发教程之编辑界面与编写代码
- ASP.NET简化编辑界面解决思路及实现代码
- Web前端开发最佳实践(9):CSS代码太太乱,重复代码太多?你需要精简CSS代码
- iOS开发UI篇—以微博界面为例使用纯代码自定义cell程序编码全过程
- .NET快速信息化系统开发框架 V3.2->Web版本“产品管理”事例编辑界面新增KindEditor复文本编辑控件
- [Android开发] 从后台恢复前台界面需要输入密码的demo|监听Home短按长按锁屏
- solr4.7.2开发实践 ——拼音检索【需要用到的包pinyin4j-2.5.0.jar和pinyinAnalyzer.jar;只需要配置schema.xml文件、solrj的java代码测试】
- 【Android】用户登录注册界面开发及用户信息管理案例代码详解
- 使用强大的工具来解决前后台的协调配合,做到互不干扰对方的开发工作,只需要前后台都完工的情况合并代码就好了