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 ...
随机推荐
- AngularJS:添加检查密码输入是否一致的功能
感谢作者(http://blog.brunoscopelliti.com/angularjs-directive-to-check-that-passwords-match) 利用AngularJS的 ...
- footer在最低显示
footer在最低显示 http://stackoverflow.com/questions/585945/how-to-align-content-of-a-div-to-the-bottom
- 前台JSON字符串,spring mvc controller也接收字符串
前台JSON字符串,spring mvc controller也接收字符串 前台: $.post(url, { data : JSON.stringify(obj) }, function(data) ...
- Codeforces Round #388 (Div. 2) C. Voting
题意:有n个人,每个人要么是属于D派要么就是R派的.从编号1开始按顺序,每个人都有一次机会可以剔除其他任何一个人(被剔除的人就不在序列中也就失去了剔除其他人的机会了):当轮完一遍后就再次从头从仅存的人 ...
- git fetch批处理,遍历一个文件夹下的所有子目录,执行git fetch --all
echo off for /d %%i in (*) do ( echo %%i cd %%i git fetch --all cd .. ) 判断子目录是否有.git文件夹 echo off for ...
- 使用Android Studio build tensorflow/examples/android——直接用android studio即可
使用Android Studio 可以在Android Studio中直接打开tensorflow/examples/android,但是需要配置好你的gradle.sdk.ndk gradle必须要 ...
- 【辨异】—— 可见 vs. 不可见
1. 常见对比 物理可见,逻辑不可见: 效果可见: 对于一个文档,字符.图形可见,行.列.页呀等结构化的元素,不可见,它们各是一种逻辑组织与安排: 观念(思维方式,看待事情的方式)是不可见的,但行为是 ...
- CPPCMS库在Windows下的使用
标题:CPPCMS库在Windows下的使用时间:2012-7作者:Kagula 环境:[1]WinXP SP3[2]VisualStudio2008 SP1[3]ZLib 1.2.7[4]PCRE ...
- C++_homework_EraseComment
顾名思义就是删除程序中的注释,不清楚fsm的机制,完全是自己的思路做. 开头先读取一个字符确定是否到文件结尾,如果读取成功,是换行的话就换行,并继续读取,不是的话,用putback放回缓冲区,并整行读 ...
- (Go)10.流程控制示例
package main import ( "math/rand" "fmt" ) func main() { //var n int n := rand.In ...