金蝶BOS开发中Edit编辑界面和List叙事薄界面需要写的代码

本人刚开始从事金蝶EAS开发,对于这个也是刚刚解除,下面是一些学习整理,

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 类是客户端叙事簿界面对应的类




EAS BOS 序时簿动态列的实现 1、示例代码: /** * output package name */ package com.kingdee.eas.custom.rpt.client; import java.awt.Color; import java.sql.Timestamp; import java.text.SimpleDateFormat; import java.util.ArrayList; im... 阅读详情

相关推荐

EAS BOS 刷新编辑界面EditUI方法

protected void refreshCurPage() throws Exception { if (this.editData.getId() != null) { IObjectPK iObjectPk = new ObjectUuidPK(this.editData.getId()); IObjectValue iObjectValue = ...

jonny_deng 3997

金蝶EAS编辑界面EditUI必录校验,业务校验,单据头及分录必输校验

业务单据、基础资料,在编辑界面EditUI中进行必录校验时,可以直接从界面绑定的数据对象editData中获取值,无需通过界面控件取值。 对于单据头中的属性值,通过editData可以直接通过get方法获取到属性值。对于分录中的数据,可以先获取分录集合,然后遍历分录集合,进行非空校验。 在暂存、保存、提交时,框架会自动调用verifyInput必录校验方法。此时,界面控件中的值已经封装到界面

金蝶EAS开发专栏 4417

金蝶EAS BOS,WEB基本使用

金蝶EAS_BOS开发帮助文档 前言:此文档是我在使用BOS开发时记录的一些可使用的方法及属性,以便自己以后不会使用时就不用去请教他人。也许可以拿给后来的同事使用。 前端 前台调用后台方法时使用的对象及方法 需要重某个按钮的点击事件时 当某个点击事件有其他的逻辑时,我们需要去重这个方法 我一开始都不知道怎么去重 后来才知道 需要将 按钮的action名字加上actionPerformed 就行了 例如 actionSave_actionPerformed(Ac...

qq_37976489的博客 2193

金蝶EAS开发笔记

项目中遇到的EAS小知识

有空就记录一下 6110

金蝶 BOS_UI数据加载流程--笔记整理

创建流程 1. 所有的UI创建都由UIFactory来完成 2. UIFactoryHelper完成UI中的对象初始化工作 ListUI 的onLoad() 加载流程 EditUI 的onLoad() 加载 流程 Action

老洪的博客 658

金蝶EAS/BOS开发小知识一

1 、EAS F7 多选属性控制 prmtPortlet.setEnabledMultiSelection(true); 2 、EAS 菜单表记录 系统化菜单表:t_bas_sysmenuitem 客户化菜单表:t_pm_mainmenuitem 3 、EditUI 分录自动增加合计行 setTableToSumField(kdtEntrys, new String[]{"au_money","sk_money","rpt_monay"}); 4

weixin_41037336的博客 1096

金蝶EAS页面加载给Query添加过滤排序

// 添加过滤 EntityViewInfo evi = new EntityViewInfo(); FilterInfo filterInfo = new FilterInfo(); filterInfo.getFilterItems().add(new FilterItemInfo("number", "00000000000000000000"+number+"%", CompareTyp...

码艺丫嘿的博客! 1916

金蝶EAS,GUI客户端,编辑界面常用方法,框架方法示例

接触金蝶EAS·BOS开发,需了解框架已有方法编辑界面常用方法如下: package com.kingdee.eas.custom.study.client; import java.awt.event.ActionEvent; import org.apache.log4j.Logger; import com.kingdee.bos.ui.face.CoreUIObject; impor

金蝶EAS开发专栏 5696

EditUI函数调用顺序

1.UIFactory.createUIFactory(UIFactoryName.MODEL).create(getEditUIName(), uiContext, null, OprtState.VIEW);   A.传递UIContext()   B设置 setOprtState(). 2..EditUI() a.Super。构造函数 b.jbInit()调用registerBi

giianhui的专栏 1331
上一篇: oracle物化视图
下一篇: UI方法调用顺序和UI常用操作
wapysun
博客等级 码龄19年 14粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值