eas源码示例1
EditUI:
this.kdtEntrys.getRow(0).getCell(1).setValue("这个是第一行的第1个单元格的值");
public void loadFields()
{
/**
* 设置默认值
*/
editData.setBizDate(new Date());
editData.setUsage("这个是用途..");
editData.setDescription("这个是参考信息..");
editData.setState(stateEnum.Add);//因为空间在业务提交之后,该控件值为空了,所以设置默认值
refreshData();
super.loadFields();
}
/**
* 手动刷新EditUI
* 重新装载editData
*/
public void refreshData(){
if(editData.getId()!=null){
PurRegOrderInfo instance=PurRegOrderFactory.getRemoteInstance().getPurRegOrderInfo(new ObjectUuidPK(editData.getId()));
editData=instance;
setDataObject(editData);
loadFields();
loadData();
}
}
ListUI界面审核和反审核
PurRegOrderListUI
/**
* 控件生效
*/
@Override
public void onLoad() throws Exception {
// TODO Auto-generated method stub
super.onLoad();
btnAudit.setEnabled(true);
btnUnAudit.setEnabled(true);
}
/**
*列表界面的判定:
*提交之后才能审核,也就是控件值未提交,审核才可以使用
*列表界面是没有editData对象的,通过id转为对象
*/
public void actionAudit_actionPerformed(ActionEvent e) throws Exception
{
super.actionAudit_actionPerformed(e);
checkSelected();
stateEnum state=stateEnum.Submit;
ArrayList arrayList=getSelectedIdValues();
PurRegOrderInfo info=null;
for (int i = 0; i < arrayList.size(); i++) {
info=PurRegOrderFactory.getRemoteInstance().getPurRegOrderInfo(new ObjectUuidPK(arrayList.get(i).toString()));
if(!info.getState().equals(stateEnum.Submit)){//单据数据控件不为提交,则不能审核
MsgBox.showWarning("存在单据状态为"+state.getAlias()+"的单据,不能审核.");
return ;
}
}
//单据进行审核
/**
* 是这个接口的
* boolean com.kingdee.eas.luojiabao.test.IPurRegOrder.audit(String id) throws BOSException, EASBizException
*/
for (int i = 0; i < arrayList.size(); i++) {
PurRegOrderFactory.getRemoteInstance().audit(arrayList.get(i).toString().trim());
}
this.refreshList();
}
/**
* 反审核,单据如果为非审核状态,则不能反审核。只有为审核状态才能反审核
*/
public void actionUnAudit_actionPerformed(ActionEvent e) throws Exception
{
super.actionUnAudit_actionPerformed(e);
checkSelected();
stateEnum state=stateEnum.Submit;
//ArrayList com.kingdee.eas.framework.client.CoreBillListUI.getSelectedIdValues() 这个是ListUI界面也就是我选中的info
ArrayList arrayList=getSelectedIdValues();
PurRegOrderInfo info=null;
for (int i = 0; i < arrayList.size(); i++) {
info=PurRegOrderFactory.getRemoteInstance().getPurRegOrderInfo(new ObjectUuidPK(arrayList.get(i).toString()));
if(info.getState().equals(stateEnum.Audit)){//单据数据控件不为审核,不能反审核
/*MsgBox.showWarning("存在单据状态不为审核的单据,不能反审核.");*/
PurRegOrderFactory.getRemoteInstance().unAudit(arrayList.get(i).toString().trim());
}
}
this.refreshList();
}
PurRegOrderControllerBean
/**
* 工具栏点击保存状态控件客户端的控件相应变成保存,并且客户端需要刷新
* 如果已经点了保存,不能提交
*/
@Override
protected IObjectPK _save(Context ctx, IObjectValue model)
throws BOSException, EASBizException {
PurRegOrderInfo info=(PurRegOrderInfo) model;
info.setState(stateEnum.Save);
return super._save(ctx, model);
}
/**
* 工具栏点击状态控件客户端的控件相应变成提交,并且客户端需要刷新
*/
@Override
protected IObjectPK _submit(Context ctx, IObjectValue model)
throws BOSException, EASBizException {
PurRegOrderInfo info=(PurRegOrderInfo) model;
info.setState(stateEnum.Submit);
return super._submit(ctx, model);
}
/**
* 工具栏点击审核状态控件客户端的控件相应变成审核,传id变成实体,并且客户端需要刷新
*/
@Override
protected boolean _audit(Context ctx, String id) throws BOSException,
EASBizException {
//如果id为空的话,抛出异常
if(id==null){
throw new IllegalArgumentException();
}
IPurRegOrder instance=PurRegOrderFactory.getLocalInstance(ctx);
PurRegOrderInfo info=instance.getPurRegOrderInfo(new ObjectUuidPK(id));
info.setState(stateEnum.Audit);
instance.update(new ObjectUuidPK(id),info);//客户端刷新
return super._audit(ctx, id);
}
/**
* 工具栏点击反审核状态的控件,则状态相应变成提交,传id变成shiti, 并且客户端需要刷新
*/
@Override
protected boolean _unAudit(Context ctx, String id) throws BOSException,
EASBizException {
if(id==null){
throw new IllegalArgumentException();
}
IPurRegOrder instance=PurRegOrderFactory.getLocalInstance(ctx);
PurRegOrderInfo info=instance.getPurRegOrderInfo(new ObjectUuidPK(id));
info.setState(stateEnum.Submit);
instance.update(new ObjectUuidPK(id),info);
return super._unAudit(ctx, id);
}
}
eas源码示例1的更多相关文章
- 安卓图表引擎AChartEngine(四) - 源码示例 嵌入Acitivity中的折线图
前面几篇博客中都是调用ChartFactory.get***Intent()方法,本节讲的内容调用ChartFactory.get***View()方法,这个方法调用的结果可以嵌入到任何一个Activ ...
- 手机端页面自适应解决方案—rem布局(进阶版,附源码示例)
转自:https://segmentfault.com/a/1190000007350680 一年前笔者写了一篇 <手机端页面自适应解决方案—rem布局>,意外受到很多朋友的关注和喜欢.但 ...
- jwt揭秘(含源码示例和视频)
JSON Web Tokens,是一种开发的行业标准 RFC 7519 ,用于安全的表示双方之间的声明.目前,jwt广泛应用在系统的用户认证方面,特别是现在前后端分离项目. 1. jwt认证流程 在项 ...
- jwt揭秘(含源码示例)
JSON Web Tokens,是一种开发的行业标准 RFC 7519 ,用于安全的表示双方之间的声明.目前,jwt广泛应用在系统的用户认证方面,特别是现在前后端分离项目. 1. jwt认证流程 ...
- Extjs各版本的下载链接,包含ext3.4源码示例
最近在维护一个老平台,用的是ext3.4,老东西在网上找示例发现既然还有人收钱,谷歌了一下总算找到了一位免费的发布的,感谢 yipanbo 分享 Extjs的版本繁多,本文收集了Extjs各个版本的下 ...
- CNI插件源码示例,对于github.com/rajatchopra/ocicni库的分析
CNI插件初始化 // ocicni.go 1.func InitCNI(pluginDir string) (CNIPlugin, error) (1).先调用plugin := probeNetw ...
- PHP合成图片、生成文字、居中对齐、画线、矩形、三角形、多边形、图片抗锯齿、不失真 高性能源码示例
function generateImg($source, $text1, $text2, $text3, $font = './msyhbd.ttf') { $date = '' . date ( ...
- structs 源码示例
http://blog.csdn.net/wwwihpccn/article/details/5725518
- 一个js变量以及其作用域的源码示例
今天遇到了一个问题,抽象出来的代码如下: var zoom=13; function setZoom(){ zoom=14; } function displayZoom(){ this.setZoo ...
随机推荐
- HTML-class与id的区别及应用
在样式表定义一个样式的时候,可以定义id也可以定义class. 1.在CSS文件里书写时,ID加前缀"#":CLASS用"." 如只能用id #nav { wi ...
- Spring MVC-视图解析器(View Resolverr)-多重解析器(Multiple Resolver)示例(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_multiple_resolver_mapping.htm 说明:示例基于Spri ...
- MVC.Net:添加第三方类库的bundles引用
以jQuery Mobile为例.当我们用nuget添加jQuery Mobile的package后,需要在项目中引用jQuery Mobile.传统的做法是在html页面上添加 <link h ...
- 快速傅立叶变换&HDU 1402
参考http://www.cnblogs.com/v-July-v/archive/2011/08/13/2214132.html <算导> 那么,更快速的多项式乘法就依赖于能否把一个系数 ...
- HDU 4542
T_T终于让我过了,坑啊,竟然时限是200ms... 我是预处理出不整除了个数的,因为这个较容易一点.利用算术基本定理,f=p1^a1*p2^a2...... 所以,整除它的个数就是(a1+1)*(a ...
- C++成员函数实现在类定义中与在类定义外的区别(Windows下直接使用g++)
c++ 类的成员函数放在类的外面来实现的写法,探究一下. 原文: http://www.cnblogs.com/findumars/p/6143375.html ------------------- ...
- COCOS2D 学习笔记
cc.Node.scheduleUpdate:function () * schedules the "update" method. ...
- word2vec和word embedding有什么区别?
word2vec和word embedding有什么区别? 我知道这两个都能将词向量化,但有什么区别?这两个术语的中文是什么? from: https://www.zhihu.com/question ...
- RMAN异机恢复实验---转载
一.RMAN异机恢复实验 2011年3月23日00:44 1.环境介绍: 主机1: 操作系统 REDHAT5.5 IP地址 172.16.1.120 主机名 sigle 数据库版本 10.2.0.4 ...
- 完美解决 linux sublime 中文无法输入
感谢oschina 中几位前辈的分享 下面是我结合自己的情况所配置的具体步骤: 系统环境: ubuntu 12.10 输入法:fcitx fcitx 安装 apt-get install fcitx ...