创建屏幕0100(元素清单中含定制控制CONTAINER和OK_CODE)

创建GUI状态100(功能键含BACK和EXIT用于返回和退出 )

代码

*&---------------------------------------------------------------------*
*& Report  ZQBTEST_10
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT zqbtest_10.

DATA: gfw_prestype_lines           TYPE i VALUE ."17 / 1 / 27
DATA: ok_code TYPE sy-ucomm, first_call TYPE i,
      values TYPE TABLE OF gprval WITH HEADER LINE,
      column_texts TYPE TABLE OF gprtxt WITH HEADER LINE.

SELECTION-SCREEN BEGIN OF BLOCK bk1.
PARAMETERS: p_c TYPE c AS CHECKBOX DEFAULT 'X',
            p_v TYPE i DEFAULT '.
SELECTION-SCREEN END OF BLOCK bk1.

IF p_c = 'X'.
  MOVE p_v TO gfw_prestype_lines.
  CALL SCREEN '.
ELSE.
  PERFORM frm_graph_2d.
ENDIF.

*&---------------------------------------------------------------------*
*&      Form  frm_GFW_PRES_SHOW
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM frm_gfw_pres_show.
  SET PF-STATUS '.

  REFRESH values. REFRESH column_texts.

  values-rowtxt = . values-val2 = .
  values-val3 = .
  values-val4 = .
  APPEND values.

  values-rowtxt = . values-val2 = .
  values-val3 = .values-val4 = .
  APPEND values.

  values-rowtxt = . values-val2 = .
  values-val3 = .values-val4 = .
  APPEND values.

  values-rowtxt = . values-val2 = .
  values-val3 = .
  values-val4 = .
  APPEND values.

  column_texts-coltxt = 'name'. APPEND column_texts.
  column_texts-coltxt = 'ages'. APPEND column_texts.
  column_texts-coltxt = 'city'. APPEND column_texts.
  column_texts-coltxt = 'four'. APPEND column_texts.
  CALL FUNCTION 'GFW_PRES_SHOW'
    EXPORTING
      container               = 'CONTAINER'
      top                     =
      left                    =
      height                  = ''
      width                   = ''
      presentation_type       = gfw_prestype_lines
      header                  = 'title of graphic'
      orientation             = gfw_orient_rows
*     PARENT                  =
      x_axis_title            = 'title for x axis'
      y_axis_title            = 'title for y axis'
      format                  =
*   IMPORTING
*     RETVAL                  =
*     CONTENT_TYPE            =
*     CONTENT_LENGTH          =
    TABLES
      values                  = values
      column_texts            = column_texts
*     ROW_LABELS              =
*     COLUMN_LABELS           =
*     CONTENT                 =
   EXCEPTIONS
     error_occurred          =
     OTHERS                  =
            .
  IF sy-subrc <> .
* Implement suitable error handling here
  ENDIF.
ENDFORM.                    "frm_GFW_PRES_SHOW
*&---------------------------------------------------------------------*
*&      Form  frm_GRAPH_2D
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM frm_graph_2d.
  TYPES : BEGIN OF typ_data,
        text(),
        value TYPE p,
  END OF typ_data.

  DATA: tab_data TYPE STANDARD TABLE OF typ_data WITH HEADER LINE.

  REFRESH tab_data.

  CLEAR tab_data.

  tab_data-text  = '.
  tab_data-value = '.
  APPEND tab_data.

  CLEAR tab_data.
  tab_data-text  = '.
  tab_data-value = '.
  APPEND tab_data.

  CLEAR tab_data.
  tab_data-text  = '.
  tab_data-value = '.
  APPEND tab_data.

  CALL FUNCTION 'GRAPH_2D'
   EXPORTING
*   AUTO_CMD_1               = ' '
*   AUTO_CMD_2               = ' '
*   TYPE                     = ' '
    display_type             = 'PI'"// VB, PI, TP, HB
*   INBUF                    = ' '
*   INFORM                   = ' '
*   MAIL_ALLOW               = ' '
*   PWDID                    = ' '
*   SET_FOCUS                = 'x'
*   SMFONT                   = ' '
*   SO_CONTENTS              = ' '
*   SO_RECEIVER              = ' '
*   SO_SEND                  = ' '
*   SO_TITLE                 = ' '
*   STAT                     = ' '
*   SUPER                    = ' '
*   TIMER                    = ' '
    titl                     = '2D图练习'
*   VALT                     = ' '
*   WDID                     = ' '
*   WINID                    = ' '
*   WINPOS                   = ' '
*   WINSZX                   = '
*   WINSZY                   = '
*   X_OPT                    = ' '
*   NOTIFY                   = ' '
* IMPORTING
*   B_KEY                    =
*   B_TYP                    =
*   CUA_ID                   =
*   MOD_COL                  =
*   MOD_ROW                  =
*   MOD_VAL                  =
*   M_TYP                    =
*   RBUFF                    =
*   RWNID                    =
    TABLES
    data                     = tab_data
* EXCEPTIONS
*   GUI_REFUSE_GRAPHIC       =
*   OTHERS                   =
            .
  IF sy-subrc <> .
* Implement suitable error handling here
  ENDIF.
ENDFORM.                    "frm_GRAPH_2D
*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
  CASE ok_code.
    WHEN 'EXIT' OR 'BACK'.
      LEAVE TO SCREEN .
  ENDCASE.

ENDMODULE.                 " USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
*&      Module  STATUS_0100  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
*  SET PF-STATUS 'xxxxxxxx'.
*  SET TITLEBAR 'xxx'.
  PERFORM frm_gfw_pres_show.
ENDMODULE.                 " STATUS_0100  OUTPUT

效果展示

效果一

效果二

ABAP 图形练习(GFW_PRES_SHOW and GRAPH_2D)的更多相关文章

  1. ABAP绘图功能模块概观(转)

    ABAP Graphics FM OverviewABAP绘图功能模块概观 此处仅将功能模块及范例程序列出(若要列出详细参数篇幅过大) 2 Main Graphics Demo Program: GR ...

  2. SAP 产品条码WMS结合 以及ABAP script的集成 BarCode

    条码和RFID打印解决方案   1, 热转印条码标签打印 热转打印技术的原理是通过加温和加压将色带上的固体油墨熔化转印到介质上完成打印的.通过选择热转印色带与标签材料匹配,热转印打印方式可以产生耐高温 ...

  3. WDA入门教程Ⅰ:Web Dynpro for ABAP 入门(转)

    转自:https://www.jianshu.com/p/68c1592f1a87 WDA全称Web Dynpro for ABAP,也写作WD4A或WDA,是用于在ABAP环境中开发Web应用程序的 ...

  4. 使用ABAP绘制可伸缩矢量图

    Jerry去年的文章 动手使用ABAP Channel开发一些小工具,提升日常工作效率 里曾经介绍过一些用ABAP实现的可供娱乐的小程序,比如用古老的HPGL接口在SAPGUI里绘图: 关于如何用SA ...

  5. 【ABAP系列】【第五篇】SAP ABAP7.50 之用户接口

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列][第五篇]SAP ABAP7.5 ...

  6. 现代3D图形编程学习-基础简介(3)-什么是opengl (译)

    本书系列 现代3D图形编程学习 OpenGL是什么 在我们编写openGL程序之前,我们首先需要知道什么是OpenGL. 将OpenGL作为一个API OpenGL 通常被认为是应用程序接口(API) ...

  7. ABAP单元测试最佳实践

    本文包含了我在开发项目中经历过的实用的ABAP单元测试指导方针.我把它们安排成为问答的风格,欢迎任何人添加更多的Q&A's,以完成这个列表. 在我的项目中,只使用传统的ABAP report. ...

  8. ABAP实现屏幕自己刷新和跳转功能

    ABAP开发工程中,有时候需要让跳转出的屏幕自动实现跳转和刷新的功能,该功能的实现需要在屏幕PBO 里面调用相应的事件执行. 关键代码为: SET TITLEBAR ' 屏幕自动程序'. IF g_c ...

  9. 超全面的.NET GDI+图形图像编程教程

    本篇主题内容是.NET GDI+图形图像编程系列的教程,不要被这个滚动条吓到,为了查找方便,我没有分开写,上面加了目录了,而且很多都是源码和图片~ (*^_^*) 本人也为了学习深刻,另一方面也是为了 ...

随机推荐

  1. scrapy 爬取豆瓣互联网图书

    安装scrapy conda install scrapy 生成一个scrapy项目 scrapy startproject douban settings文件 # -*- coding: utf-8 ...

  2. X1226 和 AT24C16 地址冲突问题

    这几天开发eeprom功能的时候,利用单片机的I2C接口访问AT24C16.遇到一个问题: 发现AT24C16的最后一页写不进去.表现为写任何值后,再读取都是0. 经过几天的排查,发现是应为在I2C总 ...

  3. mysql mycat 中间件安装与使用

    一,什么是mycat 一个彻底开源的,面向企业应用开发的大数据库集群 支持事务.ACID.可以替代MySQL的加强版数据库 一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群 一 ...

  4. 数组引用:C++ 数组做参数 深入分析

    转载:https://blog.csdn.net/jiangxinyu/article/details/7767065 在 C++中,数组永远不会按值传递,它是传递第一个元素,准确地说是第 0个 的指 ...

  5. 使用scrapy中xpath选择器的一个坑点

    情景如下: 一个网页下有一个ul,这个ur下有125个li标签,每个li标签下有我们想要的 url 字段(每个 url 是唯一的)和 price 字段,我们现在要访问每个li下的url并在生成的请求中 ...

  6. python基础 ------ 集合

    ---恢复内容开始--- -----   集合 使用场景:网购的订单.与商品ID 一一对应的商品信息 python的内置类型:List  Tuple  Dictionary ----  列表   LI ...

  7. 48-设置tomcat虚拟路径的两种方法(Eclipse、tomcat、IDEA)

    设置tomcat虚拟路径的两种方法(Eclipse.tomcat.IDEA) 三种方式设置虚拟服务器路径如果我们要实现一个上传文件的功能,但是又想要上传的文件不会随着自己web服务器的重启而不能访问了 ...

  8. ROS零门槛学渣教程系列前言

    为什么选择ROS: 1.ROS是开放源码的,在该平台上可以找到非常很多免费开源的代码包,并且这些例程还带wiki说明文档: 2.机器人领域最新的算法直接支持ROS,简单几个步骤就能运行: 3.ROS工 ...

  9. mysql查询时间段内的数据

    https://blog.csdn.net/ls1645/article/details/79118464

  10. position在IE下的问题

    盒子设置position:absolute;后,子盒子的浮动可以不做清除浮动处理,同样,使用fixed,子盒子也不需要做清除浮动的处理 在IE7下(据说IE6也不行),盒子设置overflow:hid ...