码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • SAP ABAP——数据类型(四)【TYPE系列关键字】


    💂作者简介: THUNDER王,一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读,同时任汉硕云(广东)科技有限公司ABAP开发顾问。在学习工作中,我通常使用偏后端的开发语言ABAP,SQL进行任务的完成,对SAP企业管理系统,SAP ABAP开发和数据库具有较深入的研究。


    💅文章概要:本文主要介绍一下SAP ABAP中的声明数据类型的TYPE系列关键字,主要包括了TYPE、TYPE TABLE OF、TYPE LINE OF、TYPE REF TO。


    🤟每日一言:宝剑锋从磨砺出,梅花香自苦寒来。

    目录

    TYPE

    TYPE LINE OF

    参照数据字典表类型

    参照用户自定义表类型

    TYPE TABLE OF

    定义标准表类型

    定义排序表类型

    定义哈希表类型

    TYPE REF TO

    参照本地类

    参照全局类


    TYPE

              TYPE关键字是数据类型定义中最重要的关键字,可以参照预定义数据类型,全局数据字典数据类型或者用户自定义数据类型。关于【TYPE】关键字的使用此前已经详细尽述,在此不再赘述。具体可以参考下面两文:、

    SAP ABAP——数据类型(一)【数据类型概要及分类】

    SAP ABAP——数据类型(二)【TYPES自定义数据类型详解】 


    TYPE LINE OF

              TYPE LINE OF主要用来参照表类型中的一行定义结构体类型,表类型可以是数据字典表类型也可以是用户自定义的表类型。

    TYPES <ty_name> TYPE LINE OF <ty_tab_name>.
    
    • 参照数据字典表类型

    1. TYPES:ty_hrhcp00 TYPE LINE OF hrhcp00_dc_orginfo.
    2. DATA:gs_hrhcp00 TYPE ty_hrhcp00.

              上面给出了参照数据字典表类型定义一行结构体类型的代码示例,并且最后使用了【DATA】语句将结构体类型实例化并且加入断点进行观察,具体效果如下图所示:

    ​

    参照数据字典表类型定义一行结构体类型


    • 参照用户自定义表类型

    1. TYPES:ty_tab_sflight TYPE TABLE OF sflight,
    2. ty_sflight TYPE LINE OF ty_tab_sflight.
    3. DATA gv_sflight TYPE ty_sflight.

              上面给出了参照用户自定义表类型定义一行结构体类型的代码示例,并且最后使用了【DATA】语句将结构体类型实例化并且加入断点进行观察,具体效果如下图所示:

    ​

    参照用户自定义表类型定义一行结构体类型1


    TYPE TABLE OF

               【TYPE TABLE OF】语句是用来定义内部表数据类型的语句。在SAP ABAP中拥有标准表类型、排序表类型、哈希表类型三种内表数据类型。关于内表数据的相关知识可以参考笔者的第七章系列文章:SAP ABAP——内表

    1. *定义标准表类型
    2. TYPES: <ty_tab_standard_name> TYPE [STANDARD] TABLE OF <type> [WITH NON-UNIQUE KEY <k1 k2 ... kn>] [INITIAL SIZE <n>].
    3. *定义排序表类型
    4. TYPES: <ty_tab_sorted_name> TYPE SORTED TABLE OF <type> [WITH [NON-UNIQUE|UNIQUE] KEY <k1 k2 ... kn>][INITIAL SIZE <n>].
    5. *定义哈希表类型
    6. TYPES: <ty_tab_hashed_name> TYPE HASHED TABLE OF <type> [WITH UNIQUE KEY <k1 k2 ... kn>] [INITIAL SIZE <n>].

    • 定义标准表类型

    1. *参照数据库表sflight定义标准表
    2. TYPES:ty_tab_sflight TYPE TABLE OF sflight WITH NON-UNIQUE KEY carrid connid fldate.

    • 定义排序表类型

    1. *参照数据库表sflight定义排序表
    2. TYPES:ty_tab_sflight TYPE SORTED TABLE OF sflight WITH NON-UNIQUE KEY carrid connid fldate.

    • 定义哈希表类型

    1. *参照数据库表sflight定义哈希表
    2. TYPES:ty_tab_sflight TYPE HASHED TABLE OF sflight WITH UNIQUE KEY carrid connid fldate.

    TYPE REF TO


           【TYPE REF TO】语句是用来参照定义类的语句。关于该语句的的讲解在此只做简单的介绍,具体面向对象的知识将在该系列文章后续章节【面向对象ABAP程序设计(ABAP OOP)】中讲解!

    TYPES:<cl_name> TYPE REF TO <type>.
    

    • 参照本地类

    1. *本地类 lcl_data定义
    2. CLASS lcl_data DEFINITION.
    3. PUBLIC SECTION.
    4. CLASS-METHODS:
    5. get_data IMPORTING iv_date TYPE d.
    6. ENDCLASS. "lcl_data DEFINITION
    7. *本地类 lcl_data实例化
    8. CLASS lcl_data IMPLEMENTATION.
    9. METHOD get_data.
    10. * do something
    11. ENDMETHOD. "get_Data
    12. ENDCLASS. "lcl_data IMPLEMENTATION
    13. TYPES:cl_data_ty TYPE REF TO lcl_data.

    • 参照全局类

    TYPES:cl_alv_ty TYPE REF TO  CL_GUI_ALV_GRID

  • 相关阅读:
    从JS角度直观理解递归的本质
    【STL源码剖析】string类模拟实现 了解底层-走进底层-掌握底层【超详细的注释和解释】
    概率论与数理统计---全概率、贝叶斯公式、事件独立性
    在线电子表格spreadjs
    力扣100114. 元素和最小的山形三元组 II(中等)
    大一学生想自学web安全
    ASL集睿致远 MIPI转LVDS芯片 CS5518规格书 PIN to PIN替代GM8775C 工业级标准
    Leecode刷题 412. Fizz Buzz——二级指针、字符串数组、malloc
    重生之我要学后端01--后端语言选择和对应框架选择
    网络编程基础
  • 原文地址:https://blog.csdn.net/weixin_59480481/article/details/128157129
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号