SAP ABAP 报表输出成 excel 统计图形 (RFC : GFW_PRES_SHOW_MULT)

SAP 预设了一个类型组 GFW ,做简单的excel图形输出
话不多说,直接上代码:

*&---------------------------------------------------------------------*
*& Report ZCYCLE057
*&---------------------------------------------------------------------*
*& 测试输出excel图像
*&---------------------------------------------------------------------*
REPORT ZCYCLE057.TYPE-POOLS: gfw.INCLUDE gfw_prog_text.DATA: ok_code TYPE sy-ucomm.
DATA: y_values TYPE TABLE OF gprval WITH HEADER LINE, "图形数据x_texts  TYPE TABLE OF gprtxt WITH HEADER LINE. "图形名称REFRESH y_values.
REFRESH x_texts.START-OF-SELECTION.PARAMETERS P1 TYPE CHAR1.y_values-rowtxt = 'sales'.
y_values-val1 = 5000.
y_values-val2 = 8000.
y_values-val3 = 3000.
y_values-val4 = 10000.
APPEND y_values.x_texts-coltxt = '2009'.
APPEND x_texts.
x_texts-coltxt = '2010'.
APPEND x_texts.
x_texts-coltxt = '2011'.
APPEND x_texts.
x_texts-coltxt = '2012'.
APPEND x_texts.CALL SCREEN 100 STARTING AT 20 5..*&---------------------------------------------------------------------*
*& Module STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
MODULE status_0100 OUTPUT.SET PF-STATUS 'ZCYCLE'.
* SET TITLEBAR 'xxx'.*  "Only Display one chart(单个图表)
*  CALL FUNCTION 'GFW_PRES_SHOW'
*    EXPORTING
*      container         = 'CONTAINER' "a screen WITH an empty container must be defined
*      presentation_type = gfw_prestype_lines
**     PRESENTATION_TYPE = gfw_prestype_time_axis
**     PRESENTATION_TYPE = gfw_prestype_area
**     PRESENTATION_TYPE = gfw_prestype_horizontal_bars
*    TABLES
*      values            = y_values
*      column_texts      = x_texts
*    EXCEPTIONS
*      error_occurred    = 1
*      OTHERS            = 2."Display multi-chart(多个图表,预留6个可直接使用)CALL FUNCTION 'GFW_PRES_SHOW_MULT'EXPORTINGcontainer         = 'CONTAINER1' "容器参数presentation_type = gfw_prestype_lines "图表类型 -- 线状图header            = 'CONTAINER1' "图表标题
*     orientation       = gfw_orient_columnsshow              = gfw_false "//optionalTABLESvalues            = y_valuescolumn_texts      = x_textsEXCEPTIONSerror_occurred    = 1OTHERS            = 2.CALL FUNCTION 'GFW_PRES_SHOW_MULT'EXPORTINGcontainer         = 'CONTAINER2'presentation_type = gfw_prestype_pie_chart "饼状图header            = 'CONTAINER2'
*     orientation       = gfw_orient_columnsshow              = gfw_false "//optionalTABLESvalues            = y_valuescolumn_texts      = x_textsEXCEPTIONSerror_occurred    = 1OTHERS            = 2.CALL FUNCTION 'GFW_PRES_SHOW_MULT'EXPORTINGcontainer         = 'CONTAINER3'presentation_type = gfw_prestype_area "线状图带阴影header            = 'CONTAINER3'
*     orientation       = gfw_orient_columnsshow              = gfw_false "//optionalTABLESvalues            = y_valuescolumn_texts      = x_textsEXCEPTIONSerror_occurred    = 1OTHERS            = 2.CALL FUNCTION 'GFW_PRES_SHOW_MULT'EXPORTINGcontainer         = 'CONTAINER'presentation_type = gfw_prestype_horizontal_bars "横状条形图"presentation_type = gfw_prestype_vertical_bars "竖状条形图orientation       = gfw_orient_columnsheader            = 'CONTAINER' "图表标题show              = gfw_true "//mandatory!!! 注意,最后一个,这个参数必传TABLESvalues            = y_valuescolumn_texts      = x_textsEXCEPTIONSerror_occurred    = 1OTHERS            = 2.ENDMODULE.
*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.CASE ok_code.WHEN 'SAVE'.LEAVE TO SCREEN 0.WHEN 'BACK' OR 'CANCEL' OR 'EXIT'.LEAVE TO SCREEN 0.WHEN OTHERS.ENDCASE.
ENDMODULE.

再基于报表创建屏幕 100(四个容器控件分别命名为:CONTAINER、CONTAINER1、CONTAINER2、CONTAINER3):
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后去SE80 里根据功能模块 REUSE_ALV_GRID_DISPLAY 找到标准ALV图标,复制给我们的程序
在这里插入图片描述
激活程序,直接测试,效果如下
在这里插入图片描述

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

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

相关文章

71 搜索二维矩阵

搜索二维矩阵 题解1 Z字查找(tricky)题解2 一次二分查找题解3 两次二分查找 给你一个满足下述两条属性的 m x n 整数矩阵: 每行中的整数从左到右按非严格递增顺序排列。 每行的第一个整数大于前一行的最后一个整数。 给你一个整数 target ,如果 target …

如何在k8s的Java服务镜像(Linux)中设置中文字体

问题描述:服务是基于springboot的Java服务,在项目上是通过Maven的谷歌插件打包,再由k8s部署的。k8s的镜像就是一个Java服务,Java服务用到了中文字体。 解决这个问题首先需要搞定镜像字体的问题。有很多类似的解决方案,…

图解java.util.concurrent并发包源码系列——深入理解ConcurrentHashMap并发容器,看完薪水涨一千

图解java.util.concurrent并发包源码系列——深入理解ConcurrentHashMap并发容器 HashMap简单介绍HashMap在并发场景下的问题HashMap在并发场景下的替代方案ConcurrentHashMap如何在线程安全的前提下提升并发度1.71.8 JDK1.7的ConcurrentHashMap源码JDK1.8的ConcurrentHashMap源…

网络流学习笔记

网络流基础 基本概念 源点(source) s s s,汇点 t t t。 容量:约等于边权。不存在的边流量可视为 0 0 0。 ( u , v ) (u,v) (u,v) 的流量通常记为 c ( u , v ) c(u,v) c(u,v)(capacity)。 流&#xff…

解决MySQL大版本升级导致.Net(C#)程序连接报错问题

数据库版本从MySQL 5.7.21 升级到 MySQL8.0.21 数据升级完成后&#xff0c;直接修改程序的数据库连接配置信息 <connectionStrings> <add name"myConnectionString" connectionString"server192.168.31.200;uidapp;pwdFgTDkn0q!75;databasemail;&q…

【语义分割】语义分割概念及算法介绍

文章目录 一、基本概念二、研究现状2.1 传统算法2.2 深度学习方法 三、数据集及评价指标3.1 常用数据集3.2 常用指标 四、经典模型参考资料 一、基本概念 语义分割是计算机视觉中很重要的一个方向。不同于目标检测和识别&#xff0c;语义分割实现了图像像素级的分类。它能够将…

使用langchain-chatchat里,faiss库中报错: AssertionError ,位置:assert d == self.d

发生报错&#xff1a; AssertionError&#xff0c;发生位置&#xff1a;class_wrappers.py里 assert d self.d&#xff0c;假如输出语句&#xff0c;查看到是因为d和self.d维度不匹配造成&#xff0c;解决方式&#xff1a; 删除langchain-chatchat/knowledge_base里的info.db…

【iOS免越狱】利用IOS自动化web-driver-agent_appium-实现自动点击+滑动屏幕

1.目标 在做饭、锻炼等无法腾出双手的场景中&#xff0c;想刷刷抖音 刷抖音的时候有太多的广告 如何解决痛点 抖音自动播放下一个视频 iOS系统高版本无法 越狱 安装插件 2.操作环境 MAC一台&#xff0c;安装 Xcode iPhone一台&#xff0c;16 系统以上最佳 3.流程 下载最…

Python 算法高级篇:堆排序的优化与应用

Python 算法高级篇&#xff1a;堆排序的优化与应用 引言 1. 什么是堆&#xff1f;2. 堆的性质3. 堆排序的基本原理4. 堆排序的 Python 实现5. 堆排序的性能和优化6. 堆排序的实际应用7. 总结 引言 堆排序是一种高效的排序算法&#xff0c;它基于数据结构中的堆这一概念。堆排序…

C++进阶语法——OOP(面向对象)【学习笔记(四)】

文章目录 1、C OOP⾯向对象开发1.1 类&#xff08;classes&#xff09;和对象&#xff08;objects&#xff09;1.2 public、private、protected访问权限1.3 实现成员⽅法1.4 构造函数&#xff08;constructor&#xff09;和 析构函数&#xff08;destructor&#xff09;1.4.1 构…

Java基础 多线程

1.多线程创建方式1&#xff0c;继承Thread类&#xff1a; 2.多线程创建方式2&#xff1a; 匿名内部类写法 package thread;public class ThreadTest {public static void main(String[] args) {Runnable runnable new Runnable() {Overridepublic void run() {for (int i 0…

笔记本电脑的摄像头找不到黑屏解决办法

这种问题一般来说就是缺少驱动&#xff0c;就要下载驱动。 问题&#xff1a; 解决办法&#xff1a; 1.进入联想官网下载驱动 网站&#xff1a;https://newsupport.lenovo.com.cn/driveDownloads_index.html?v9d9bc7ad5023ef3c3d5e3cf386e2f187 2.下载主机编号检测工具 3.下…

虚幻中的网络概述一

前置&#xff1a;在学习完turbo强大佬的多人fps之后发觉自己在虚幻网络方面还有许多基础知识不太清楚&#xff0c;结合安宁Ken大佬与虚幻官方文档进行补足。 补充&#xff1a;官方文档中的描述挺好的&#xff0c;自己只算是搬运和将两者结合加强理解。 学习虚幻中的网络先从虚…

【Docker】Python Flask + Redis 练习

一、构建flask镜像 1.准备文件 创建app.py,内容如下 from flask import Flask from redis import Redis app Flask(__name__) redis Redis(hostos.environ.get(REDIS_HOST,127.0.0.1),port6379)app.route(/) def hello():redis.incr(hits)return f"Hello Container W…

串行原理编程,中文编程工具中的串行构件,串行连接操作简单

串行通信原理编程&#xff0c;中文编程工具中的串行通信构件&#xff0c;串行通信连接设置简单 编程系统化课程总目录及明细&#xff0c;点击进入了解详情。https://blog.csdn.net/qq_29129627/article/details/134073098?spm1001.2014.3001.5502 串行端口 是串行的基础&#…

【C++】类与对象 第二篇(构造函数,析构函数,拷贝构造,赋值重载)

目录 类的6个默认成员函数 初始化和清理 1.构造函数 2.析构函数 3.共同点 拷贝复制 1.拷贝构造 使用细节 2.赋值重载 运算符重载 < < > > ! 连续赋值 C入门 第一篇(C关键字&#xff0c; 命名空间&#xff0c;C输入&输出)-CSDN博客 C入门 第二篇( 引…

【开源】基于SpringBoot的海南旅游景点推荐系统的设计和实现

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 用户端2.2 管理员端 三、系统展示四、核心代码4.1 随机景点推荐4.2 景点评价4.3 协同推荐算法4.4 网站登录4.5 查询景点美食 五、免责说明 一、摘要 1.1 项目介绍 基于VueSpringBootMySQL的海南旅游推荐系统&#xff…

2017年上半年上午易错题(软件设计师考试)

CPU 执行算术运算或者逻辑运算时&#xff0c;常将源操作数和结果暂存在&#xff08; &#xff09;中。 A &#xff0e; 程序计数器 (PC) B. 累加器 (AC) C. 指令寄存器 (IR) D. 地址寄存器 (AR) 某系统由下图所示的冗余部件构成。若每个部件的千小时可靠度都为 R &…

如何使用手机蓝牙设备作为电脑的解锁工具像动态锁那样,蓝牙接近了电脑,电脑自动解锁无需输入开机密码

环境&#xff1a; Win10 专业版 远程解锁 蓝牙解锁小程序 问题描述&#xff1a; 如何使用手机蓝牙设备作为电脑的解锁工具像动态锁那样&#xff0c;蓝牙接近了电脑&#xff0c;电脑自动解锁无需输入开机密码 手机不需要拿出来&#xff0c;在口袋里就可以自动解锁&#xff…

C#,数值计算——分类与推理,基座向量机的 Svmgenkernel的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { public abstract class Svmgenkernel { public int m { get; set; } public int kcalls { get; set; } public double[,] ker { get; set; } public double[] y { get; set…