1:部署时提示版本不一致的解决办法
从服务器的目录:如: D:\Kingdee\eas\server\propertiesCopy文件eascomponents.xml 到部署机的目录: 如:E:\workspace\mmeas(具体名称根据你的项目名而定)
2:如何获取当前用户
在UI扩展类中,获取当前用户可通过工具类SysContext 如:SysContext.getSysContext().getCurrentUserInfo()
在ControlerBean的扩展类中,获取当前用户可通过工具类ContextUtil 如:ContextUtil.getCurrentUserInfo(ctx)
关于SysContext和ContextUtil这两个工具类中方法的介绍: 这两个类是EAS的全局工具类,用于获取当前用户信息,当前组织单元信息、客户端IP、客户端名字等信息。SysContext用于客户端,如UI扩展类中;而ContextUtil用于服务端,如ControllerBean扩展类中。
3:如何增加F7界面上的过滤条件
找到F7界面所对应的Query后,选择字段页签,找对应的属性?扩展属性:增加“是否在通用过滤中显示”的扩展属性,并将其值设置为true。重新发布。
4:访问应用服务器[server1,127.0.0.1:6888]时,用户名[admin]认证失败!
请检查部署应用时配置的的用户名及密码是否能正常登录应用服务器的管理页面。
如果不能登录,请首先应用服务器的管理控制台创建用户;
或者重新部署应用,修改部署向导配置的用户名/密码为合法值。 异常堆栈:
com.kingdee.eas.tools.admin.domain.exception.AppServerLoginFailedException: Authentication denied,the user name and/or password is not valid!
at com.kingdee.eas.tools.admin.domain.impl.EASServerServiceImpl.startApplicationServer(EASServerServiceImpl.java:913)
at com.kingdee.eas.tools.admin.domain.impl.EASServerServiceImpl.startApplicationServer(EASServerServiceImpl.java:719)
上述提示的方案好像有点问题,我另找了一个解决办法: 进入%Apusic_home%\domains\server1\store,将users.db文件删除,重启应用服务器,即可恢复admin密码为初始密码。
5:如何获得BOSType
打开*.entity实体视图。切换到“源代码”标签,找到<bosType>48DA3A71</bosType>。这就是该实体所对应的BOSType了 或者java代码:
BOSObjectType objectType = objectValue.getBOSType();
6:如何添加第3方jar包
1、在项目中切换到 java视图 选择项目工程右键 >构建路径>配置构建路径 2、将jar包分别Copy到以下路径
用于BOS使用 \workspacewm\wmnew\lib\client\trd \workspacewm\wmnew\lib\server\trd
部署路径 /kingdee/eas/server/deploy/fileserver.ear/easWebClient/lib/client/trd /kingdee/eas/server/deploy/fileserver.ear/easWebClient/deploy/client /kingdee/eas/server/lib/server/trd /kingdee/eas/server/lib/client/trd
7:bos登陆客户端显示没有许可
原因:bos工具自带eas license没有对应模块许可导致。 解决方法:将eas7.0安装包中自带eas 的license文件替换到bos工具如下路径即可, \bim\eclipse\plugins\com.kingdee.bos.bim_template_6.1.0\templates\licenses PS:license文件名必修改成“license”字样才可 就把licenses PS:license文件放到相同路径。文件名为license
8:手动添加合计行
1. 代码方式处理
//添加合计栏
KDTFootManager footmgr = new KDTFootManager(kdtE2);
footmgr.addFootView();
kdtE2.setFootManager(footmgr);
kdtE2.addFootRow(0);
IRow row = footmgr.getFootRow(0);
row.getCell(0).setValue("合计:");
//设置合计字段(重视父类方法)
protected void setTableToSumField() {
setTableToSumField(kdtE1, new String[] { "ContractAmount" });
super.setTableToSumField();
}
完整代码
IRow row = tblMain.addRow();
row.getStyleAttributes().setBackground(new Color(236, 255, 255));
row.getCell(0).setValue("合 计 栏 :");
row.getStyleAttributes().setBold(true);
row.getStyleAttributes().setFontColor(Color.RED);
BigDecimal sum1 = new BigDecimal("0.00"),sum2 = new BigDecimal("0.00");
BigDecimal sum3 =new BigDecimal("0.00"),sum4=new BigDecimal("0.00");
for (int i=0;i<tblMain.getRowCount();i++) {
//合计最后俩栏
if (tblMain.getCell(i, 1).getValue()!=null &&
!tblMain.getCell(i, 1).getValue().equals("")) {
tblMain.getCell(i, 1).setValue(((BigDecimal)tblMain.getCell(i, 1).getValue()).setScale(2));
sum1 = sum1.add((BigDecimal)tblMain.getCell(i, 1).getValue());
}
if (tblMain.getCell(i, 2).getValue()!=null &&
!tblMain.getCell(i, 2).getValue().equals("")) {
tblMain.getCell(i, 2).setValue(((BigDecimal)tblMain.getCell(i, 2).getValue()).setScale(2));
sum2 = sum2.add((BigDecimal)tblMain.getCell(i, 2).getValue());
}
}
row.getCell(1).setValue(sum1.setScale(2));
row.getCell(2).setValue(sum2.setScale(2));
2. bim设计处理
ListUI所绑定的Query字段页签设置两个扩展属性
是否统计字段:true 统计字段按主键进行统计:设置为主键字段名,比如(id,entrys.id),如果不设置的话,统计的时候会按分录行统计,对非分录行统计出来的结果会不正确。
在ListUI.java中重写isFootVisible方法,将返回值设置为true。
@Override
protected boolean isFootVisible() {
// TODO Auto-generated method stub
return true;
}
9:bos保存后自动退出
我猜到可能是JVM内存的问题,于是找到exlipse.ini,修改为: Eclipse.ini 路径:D:\kingdee\EASStudio\bos\BOSModular\platform\eclipse -vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M
10:屏蔽分录双击排序功能
this.kdtEntrys.removeKDTMouseListener(this.kdtEntrys.getSortMange());//所有列
tblMain.getColumn(i).setSortable(false); //单个