如何在SAP WebClient UI里使用jChartFX
In my blog CRM One Order statistic tool I develop a small tool to print out the statistics of number of assigned line item for all business documents in the system.
The tool has the following three sections of output in SAPGUI.
This section means there are 1 order which has 5000 line items, 1 order has 2000 items, 1 order has 1998 items …
Accordingly, this section below means Sales Organization 50000732 has been used in 38746 Business document, Organization 50001194 used in 1346 Business document.
And this is for Service Organization unit.
In this blog, I will introduce how to display the output in browser instead, using a chart library jChartFX.
You can refer to final achievement below:
Here below is detail step to build this tool. Step1. Create a new BSP application in SE80, and create a new page index.htm.
Paste the following source code to index.htm:
<%@page language="abap" %>
<!DOCTYPE html>
<html>
<head>
<script src="jchartlib/js/jquery1.7.1.js" >
</script>
<script src="jchartlib/chartUtil.js" >
</script>
<script src="jchartlib/js/jchartfx.system.js">
</script>
<script src="jchartlib/js/jchartfx.coreVector.js">
</script>
<script src="jchartlib/js/jchartfx.coreVector3D.js">
</script>
<script src="jchartlib/js/jchartfx.advanced.js">
</script>
<script src="jchartlib/js/jchartfx.gauge.js">
</script>
<script>
function initialize() {
initChart("divChart1", "Order's item number overview",
<%= zcl_crm_order_statistic=>get_item_json( ) %>);
initChart("divChart2", "Sales Org usage overview",
<%= zcl_crm_order_statistic=>get_sales_json( ) %>);
initChart("divChart3", "Service Order usage overview",
<%= zcl_crm_order_statistic=>get_service_json( ) %>);
}
</script>
<link rel="stylesheet" type="text/css" href="jchartlib/styles/Attributes/jchartfx.attributes.aurora.css" />
<link rel="stylesheet" type="text/css" href="jchartlib/styles/Palettes/jchartfx.palette.aurora.css" />
<style type="text/css">
.jchartfx .AxisY_Text {
fill: #FEFEFE;
}
.jchartfx .AxisX_Text {
fill: #FEFEFE;
}
.jchartfx .Title {
fill: #FEFEFE;
}
.jchartfx .LegendItem {
fill: #FEFEFE;
}
</style>
}
</head>
<body class="jchartfx_body">
<div class="jchartfx_container">
<div id="divChart1" style="width:90%;height:270px;display:inline-block;position:absolute;left:0px;top:0px"></div>
<div id="divChart2" style="width:90%;height:270px;display:inline-block;position:absolute;left:0px;top:280px"></div>
<div id="divChart3" style="width:90%;height:270px;display:inline-block;position:absolute;left:0px;top:570px"></div>
<script language="javascript">
$(document).ready(function ($) {
initialize();
});
</script>
</div>
</div>
</body>
</html>
Step2. Switch to MIME Repository in SE80, create a new folder for this BSP application:
And import the following js and css file into the BSP application.
Step3. Add the following one line in OnCreate event handler of this BSP application.
The tool basically scan the CRM business document header table CRMD_ORDERADM_H and item table CRMD_ORDERADM_I and HR table hrp1000 to calculate the result.
- Java基础——序列化
- 【Python环境】使用 scikit-learn 进行机器学习的简介
- Java基础——异常体系
- Java基础——数据类型之间的转换
- Java程序员面试宝典——重要习题整理
- Java8读文件方法代码学习
- .NET ORM 的 “SOD蜜”--零基础入门篇
- 【Spark研究】用Apache Spark进行大数据处理之入门介绍
- DataSet的灵活,实体类的方便,DTO的效率:SOD框架的数据容器,打造最适合DDD的ORM框架
- Java 内部类种类及使用解析
- JSON与XML的区别比较
- 无需开启宏即可渗透:在Office文档中利用DDE执行命令
- SQLiv:一款批量SQL注入漏洞扫描工具
- 【Python环境】监督学习之KNN算法
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- python实现在线翻译
- Python字符串格式化常用手段及注意事项
- PHP count_chars()函数讲解
- 浅谈keras使用中val_acc和acc值不同步的思考
- PHP安装BCMath扩展的方法
- keras实现多GPU或指定GPU的使用介绍
- 浅谈keras中的keras.utils.to_categorical用法
- python 使用多线程创建一个Buffer缓存器的实现思路
- keras.utils.to_categorical和one hot格式解析
- Python OpenCV读取中文路径图像的方法
- Java如何基于wsimport调用wcf接口
- Python装饰器结合递归原理解析
- Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
- 浅谈keras通过model.fit_generator训练模型(节省内存)
- PHP实现通过文本文件统计页面访问量功能示例