Abap与eCharts

一,简介

        利用html与eCharts来绘图,然后用cl_gui_html_viewer将html呈现到abap屏幕中。

二,使用eCharts画图

        在一个文件夹中准备如下文件,index.html和echarts.js是必须的,data.json(作为数据源)和jquery.js如果用到就可加上。

         echarts的下载到官网 Apache ECharts,官网还有很多图例可供参考。下面是html文件内容。

<!DOCTYPE html>
<html><head><meta charset="utf-8" /><script src="echarts.js"></script><!-- <script src="jquery-3.7.1.js"></script> --><script id="myJson" type="application/json">{"categories": ["衬衣","裤子","帽子","皮鞋","领带","袜子"],"values": [5,20,36,10,10,20],"buy": [8,22,2,9,8,25]}</script>
</head><body><text>hehe汉字</text><div id="main" style="width: 600px;height:400px;"></div><script type="text/javascript">var myChart = echarts.init(document.getElementById('main'));var jsonElement = document.getElementById("myJson");var myData = JSON.parse(jsonElement.textContent);myChart.setOption({title: {text: 'DataDisplay'},tooltip: {},legend: {data: ['Sale', 'buy']},xAxis: {data: myData.categories},yAxis: {},series: [{name: 'Sale',type: 'bar',data: myData.values},{name: 'buy',type: 'bar',data: myData.buy}]});</script>
</body></html>
三,上传SAP

        使用事务码SMW0将index.html和echarts.js上传到SAP,注意js文件要作为二进制数据上传。

四,秀出来

        在abap屏幕中呈现html,下面是屏幕PBO代码的要点。

DATA:my_container TYPE REF TO cl_gui_custom_container,html_control TYPE REF TO cl_gui_html_viewer.CREATE OBJECT html_controlEXPORTINGparent =  cl_gui_container=>default_screen.CALL METHOD html_control->load_mime_object   //加载js文件EXPORTINGobject_id  = 'ZHTML_ECHARTS'object_url = 'echarts.js'EXCEPTIONSOTHERS     = 1.CALL METHOD html_control->load_html_document   //加载html模板EXPORTINGdocument_id  = 'ZHTML_INDEX'IMPORTINGassigned_url = doc_urlEXCEPTIONSOTHERS       = 1.IF sy-subrc EQ 0.CALL METHOD html_control->show_urlEXPORTINGurl = doc_url.
ENDIF.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/452322.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Git快速入门+常用指令+提交规范

目录 Git创建本地仓库 IDEA集成Git Git和IDEA连接使用2 忽略文件 本地仓库常用命令 远程仓库常用命令 分支常用命令 标签操作 提交规范 Git创建本地仓库 1、创建一个文件夹&#xff0c;右键选择Git Bash Here 2、选择下列其中一个方法 方法一&#xff1a;创建初始化…

同济大学|高等数学|第八版|习题1-2

同济大学&#xff5c;高等数学&#xff5c;第八版&#xff5c;习题1-2&#xff5c;2.1 同济大学&#xff5c;高等数学&#xff5c;第八版&#xff5c;习题1-2&#xff5c;2.2 同济大学&#xff5c;高等数学&#xff5c;第八版&#xff5c;习题1-2&#xff5c;2.3 同济大学&…

【Linux进程间通信】匿名管道

【Linux进程间通信】匿名管道 目录 【Linux进程间通信】匿名管道进程间通信介绍进程间通信目的进程间通信发展进程间通信分类 管道用fork来共享管道原理站在文件描述符角度——深度理解管道站在内核角度——管道本质 匿名管道在myshell中添加管道的实现&#xff1a;管道读写规则…

从0到1学Binder-环境准备

前言 终于要开始啃 binder 了&#xff0c;其实还没准备好&#xff0c;但是先走出去吧&#xff0c;目标是 2024 年一个整年能把 binder 学完。 我的微信公众号“ZZH的Android”&#xff0c;还有更多 Android 系统源码解析的干货文章等着你。 1 环境配置 Ubuntu 22.04 Cuttl…

1997-2022年中央对各省份一般公共预算转移支付数据

1997-2022年中央对各省份一般公共预算转移支付数据 1、时间&#xff1a;1997-2022年 2、范围&#xff1a;31省 3、指标&#xff1a;一般公共预算转移支付 4、来源&#xff1a;wind 财政部 5、指标解释&#xff1a;一般性转移支付又称体制性转移支付&#xff0c;是指上级政…

【考研408】计算机网络笔记

文章目录 计算机网络体系结构计算机网络概述计算机网络的组成计算机网络的功能计算机网络的分类计算机网络的性能指标课后习题 计算机网络体系结构与参考模型计算机网络协议、接口、服务的概念ISO/OSI参考模型和TCP/IP模型课后习题 物理层通信基础基本概念奈奎斯特定理与香农定…

[Python] 什么是逻辑回归模型?使用scikit-learn中的LogisticRegression来解决乳腺癌数据集上的二分类问题

什么是线性回归和逻辑回归&#xff1f; 线性回归是一种用于解决回归问题的统计模型。它通过建立自变量&#xff08;或特征&#xff09;与因变量之间的线性关系来预测连续数值的输出。线性回归的目标是找到一条直线&#xff08;或超平面&#xff09;&#xff0c;使得预测值与观…

WordPress Plugin HTML5 Video Player SQL注入漏洞复现(CVE-2024-1061)

0x01 产品简介 WordPress和WordPress plugin都是WordPress基金会的产品。WordPress是一套使用PHP语言开发的博客平台。该平台支持在PHP和MySQL的服务器上架设个人博客网站。WordPress plugin是一个应用插件。 0x02 漏洞概述 WordPress Plugin HTML5 Video Player 插件 get_v…

vue3+threejs+koa可视化项目——模型文件上传(第四步)

文章目录 ⭐前言&#x1f496;往期node系列文章&#x1f496;threejs系列相关文章&#x1f496;vue3threejs系列 ⭐koa后端文件上传(koa-body)&#x1f496;自动创建目录&#x1f496;自定义目录上传&#x1f496;apifox自测上传接口 ⭐vue3前端上传模型文件&#x1f496; axio…

CHS_09.2.3.6_2+多生产者-多消费者

CHS_09.2.3.6_2多生产者-多消费者 问题描述问题分析如何实现如何实现假如我们把盘子的容量设为二知识回顾 在这个小节中 我们会学习一个多生产者 多消费者的这样一个问题模型 问题描述 先来看一下问题的描述 假设桌子上面有一个盘子 每次只能向这个盘子里放一个水果 有四个人…

Matomo 访问图形显示异常

近期我们的把 PHP 系统完全升级后&#xff0c;访问 Matomo 的站点有关访问的曲线无法显示。 出现的情况如下图&#xff1a; 我们可以看到图片中有关的访问曲线无法显示。 如果具体直接访问链接的话&#xff0c;会有下面的错误信息。 问题和解决 出现上面问题的原因是缺少 ph…

vue3-插件

插件 插件 (Plugins) 是一种能为 Vue 添加全局功能的工具代码。 安装一个插件 在 main.ts 或者 main.js 中的入口文件内 import { createApp } from vueconst app createApp({})app.use(myPlugin, {/* 可选的选项 */ })一个插件可以是一个拥有 install() 方法的对象&#…