// // // // //
获取总计行的模板(总计行的分组级别为-1)
row0 = (IRow)tblMain.getGroupManager().getStatRowTemplate(-1); 修改总计行的背景色
row0.getStyleAttributes().setBackground(new Color(255,255,204)); 设置总计行第1个单元的值
row0.getCell(1).setValue(\合计\ 设置总计行第3个单元的值
row0.getCell(3).setValue(totalPerson+\人\ 设置总计行第9个单元\应缴纳税额\的统计公式:
row0.getCell(9). setExpressions(KDTGroupManager.STAT_SUM); tblMain.getGroupManager().setTotalize(true);
如何将自定义条件传到后台进行SQL的合并?
解决:
IQueryExecutor exec = QueryExecutorFactory .getLocalInstance(ctx,new
MetaDataPK(\对应的Query。
exec.setObjectView(customEntity);//customEntity是一个EntityViewInfo。 String sqlstr = exec.getSQL();//sqlstr等于是Query元数据的sql语句加上where条件,是标准的KSQL语句,与customEntity.toString()不同,后者是对象的查询语句,根据Query字段显示。
如何获取默认方案?
解决:
要调用到的两个方法。
protected String getQuerySolutionUIName() { return this.getClass().getName();
}
public static QueryInfo getQueryInfo(IMetaDataPK queryPK) { IMetaDataLoader loader = MetaDataLoaderFactory .getRemoteMetaDataLoader(); return loader.getQuery(queryPK); }
IQuerySolutionFacade iQuery = QuerySolutionFacadeFactory.getRemoteInstance(); String queryName = (getQueryInfo(this.mainQueryPK)).getFullName();
QuerySolutionInfo solution = iQuery.getDefaultSolution(getQuerySolutionUIName(), queryName);
Solution就是要获取的默认方案。
2009-2-24
问题:translate sql exception ,message is format sql error.
分析:经发现是sql语句在不同的数据库中不兼容导致的。语句中有Convert的函数,这个函数在SQlServer中可以运行,但是在Oracle中是to_Number的格式。
BudgetQuery.query1.6.2.18版本中“SUMSCOREPRIVALUE”字段加上了函数Convert。 解决:找到在KSQL中可以替换的函数为To_Integer。一般要给字段添加某种函数的时候最好先看看在KSQL中是以何种形式来转换,用KSQL的标准格式,不能用某种单一的只能够在某种数据库才能够运行的函数。
2009-2-26
问题:translate sql exception,message is parse error。
分析:将sql放在PL_SQL下运行可以通过,但是在程序一直报错,放到EAS管理平台下执行也报错,说明是sql不兼容问题。
解决:在KSQL中没有having count(*) group by 语法,只有groyp by having count(*)。
不知道语法的可以参考
2009-3-7
D:\\Document\\培训文档\\2_G_KSQL参考
问题:如何导入工作流。
解决:选择导入流程,EAS600有标准的初始化工作流流程,所以直接选择eas\\bos\\BOSModular\\600initflow\\eas600_initial.jar就可以了。
2009-3-10
问题:如何产生海量数据测试? 解决:
运用软件:DataFactory
第一步:创建连接。
创建的连接应参考PL-SQL,这里面的service不是填写IP,而是填写注册的数据库名。
输入用户名和密码即可。
第二步:新建一个project(要一个表创建一个project,要不然在产生数据的时候会出现把几个表的数据都产生的情况。)
第三步:在数据库里面查找表(select一下),看看有哪些字段的值可以为空,将可以为空的字段都移到左边,这样子可以减少字段赋值的时间。
注意一点:对于日期,像是fbizdate,fcreatetime,flastupdatetime这些字段也要移到左边,要不插入数据库的时候会报错,对于有需要过滤日期的一些页面,再重新用SQL语句将其update进去。
其中fid的产生需要如下产生:
右键点击FID选择properties,选择参考上图,在SQL Statement输入:
select newbosid('97ED2A5E') from t_gov_budget where rownum=1
97ED2A5E是实体budget的bosType,从实体的源代码里面可以找到。 也可以通过在数据库里面执行如下代码实现fid字段的修改。
update T_GOV_PayRequestBill b set b.fid=(newbosid('8FA97B87')) where b.fdescription='huangchuan'
上面的where条件提醒我们在造大数据量的时候要给每个数据做一个标识,这样才知道哪些是自己创造出来的。(重要)
对于一些关联到其他表的字段,需要插入相关的数值,在右键属性的Options中
选择如上图输入一个固定的字符串。
如果找不到关联的值,也要输入一个字符串。
2009-3-12
问题:大数据量测试时引发问题。
分析:
\\eas\\Server\\server\\profiles\\server1\\config\\bosconfig.xml
这里面设置数据的上限。还有单元格数量的上限。这里单元格的数量应该是指绑定的query或者entity里面的字段数。 解决: 修改这个文件,或者删除一些数据。