金和OA在自定义表单中,加入Fusionchart图表功能

第1步:下载FusionChart吧,免费版本,网上搜搜就有了,具体FusionChart的使用方法,我就不介绍了,自己看看他的文档吧,

还是比较全的;

第2步:将FusionCharts.js拷贝到  \JINHER\C6\Jhsoft.Web.module\fceform\js 目录下;

第3步:在 \JINHER\C6\Jhsoft.Web.module\testbill目录下创建 swf 文件夹,并将Fusionchar中的swf文件拷贝进去;

第4步:在自定义表单的表单属性的其他控制里中,加入FusionCharts.js;

第5步:在表单中设计如下代码(举例)

 

//当日体检工作量统计
function showToday(){
   var sConn="Provider=SQLOLEDB.1;Data Source=10.88.3.6;Initial Catalog=cm_system;User ID=sa;pwd=; Persist Security Info=false";
   var sql="select b.idx bhksort ,count(a.idx) bhkcount from td_tj_bhk a right join tb_tj_bhksrt b on a.bhksrtidx=b.idx and bhkdat>= "+
           "convert(varchar(10),getdate(),120) and bhkdat< convert(varchar(10),getdate()+1,120) group by b.idx order by b.idx";
   var oxml= DbSql(dsToday,sConn,sql,1,-1);
   var odom=SetDom(oxml); 
   var len= odom.documentElement.childNodes.length;
   var chart= new FusionCharts("../swf/Column3D.swf","ChartId","454","326","0","1");
   var chartXML="<chart yAxisName='体检人数' caption='本日体检量' showBorder='1' baseFontSize='12' formatNumberScale='0'>";
   var value="";
   var label="";
   var zwtj=0;
   for(var i=0;i<len-1;i++){
     label=NavJs.textContent(odom.documentElement.childNodes[i].childNodes[0]);
     value=NavJs.textContent(odom.documentElement.childNodes[i].childNodes[1]);
     if (label=='1') label="从业体检"; else
     if (label=='2') label="普通体检"; else
     if (label=='3') label="职业体检"; else
     if (label=='4') label="放射体检"; else
     if (label=='5') label="学校体检"; else
     if (label=='6') label="福利体检"; 
     chartXML+="<set label='"+label+"'";
     chartXML+=" value='"+value +"'/>";
   } 
   chartXML+="<set label='职卫体检' value='"+zwtj+"'/>";
   chartXML+="</chart>";
   chart.setDataXML(chartXML);
   chart.render("chartToday");
}

请注意:(1)代码中var chart= new FusionCharts("../swf/Column3D.swf","ChartId","454","326","0","1")的路径设置;

                (2)代码中 chart.render("chartToday"); chartToday 是你需要展示图形的DIV 的ID;效果如图:

posted @ 2019-08-16 10:23  临沂东哥  阅读(285)  评论(0编辑  收藏  举报