【myApps/OBPM版本号】:v5.1- F社区免费版
【浏览器类型】:Chrome/其他
【联系方式-QQ】:260217944
【联系电话】: 请留下您的联系电话,以便技术同事更好解决您的问题
【问题描述】:工程师,您好!我想用统计图直观反映近5年的费用使用情况。通过应用样例修改,1:但按年份查出来的sql的金额合计差额巨大,统计不全;2:如果我要用5个sql分别查5年的金额请问要在哪里归整5个柱状图;3:抄过来的代码其中一句(var datas = service.queryDataSourceSQL("机施OA_MsSQL",sql," __L57ucdLl0mNUOTNRoyl");)中的参数想请教是哪来的,前都我用了数据源,后者用了视图的id?
如下是我抄的代码- (function(){
- //定义一个数组
- var amountList = [];
- //var clazzList = [];
- //var chineseList = [];
- //var mathsList = [];
- try{
- var sql = "select * from `mssql`.`费用管理2025`";
- println(sql);
- var service = Packages.cn.myapps.designtime.common.service.DesignTimeServiceFactory.resolve("cn.myapps.designtime.datasource.service.DataSourceDesignTimeService");
- var datas = queryByDSName("机施OA_MsSQL",sql);
- // var datas = service.queryDataSourceSQL("机施OA_MsSQL",sql," __L57ucdLl0mNUOTNRoyl");
- println(datas);
-
- if(datas!=null){
- for(var iterator = datas.iterator();iterator.hasNext();){
- var map1 = iterator.next();//取值
- var amount= map1.get("金额合计");
- // var clazz = map1.get("item_班级");
- // var chinese = map1.get("item_语文");
- // var maths = map1.get("item_数学");
- //往数组里塞值
- amountList.push(new String(amount));
- // clazzList.push(new String(clazz));
- // chineseList.push(new String(chinese));
- // mathsList.push(new String(maths));
- }
- }
- }catch(e){}
- println("金额合计:" + amountList);
- //println("chineseList:" + chineseList);
- var option = {
- title : {
- text: '年度费用使用',
- subtext: '近5年费用比较'
- },
- tooltip : {
- trigger: 'axis'
- },
- legend: {
- data: 'amountList'
- },
- toolbox: {
- show : true,
- feature : {
- mark : {show: true},
- dataView : {show: true, readOnly: false},
- magicType : {show: true, type: ['line', 'bar']},
- restore : {show: true},
- saveAsImage : {show: true}
- }
- },
- calculable : true,
- xAxis : [
- {
- type : 'category',
- // boundaryGap : false,
- data : ['2025年','2024年','2023年','2022年','2021年']
- }
- ],
- yAxis : [
- {
- type : 'value',
- // axisLabel : {
- // formatter: '{value}'
- // }
- }
- ],
- series : [
- {
- name:'合计',
- type:'bar',
- // data:[2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3],
- data:amountList,
- markPoint : {
- data : [
- {type : 'max', name: '最大值'},
- {type : 'min', name: '最小值'}
- ]
- },
- markLine : {
- data : [
- {type : 'average', name: '平均值'}
- ]
- }
- }
- ]
- };
- return option;
- })()
复制代码
1、问题描述最好图文并茂,如有视频/脚本可直接放出,这样技术同事在处理该问题时效率更加高效哦~
2、如果该问题已得到解决,请在该帖子下回复\\\\\\\"已解决可结帖\\\\\\\"
|