zoukankan      html  css  js  c++  java
  • 数据对象与数据类型

    数据对象:

    主要指常量及变量,多指变量。

    变量定义包含name, length, type等,语法如下:
    DATA <name> [<length>] type <type>[ value <value>] [ decimal <decimals>]

    其中: [] 里的内容表示可选项。<>表示名称
    <name>: 变量名称, 最长30个字符, 不可含有 + . , : ( ) 等字符
    <length>长度,要用圆括号括起来 如 LINE(20) TYPE C.
    <type>:数据类型
    <value>: 初始值
    <decimals>: 小数位

    TYPES: BEGIN OF TY_DATA,
             a(10) TYPE C,
             b(10) TYPE C,
             c(10) TYPE C,
           END OF TY_DATA.
    
    TYPES: DD(10) TYPE C.
    DATA: E TYPE DD.
    DATA:F TYPE TY_DATA.
    F-A = '111'.
    F-B = '121'.
    F-C = '114'.
    E = '2223'.
    WRITE:/ F ,E.
    
    DATA A1(10) TYPE C VALUE '3'.
    WRITE A1.
    DATA: B1(10) TYPE P VALUE '22' DECIMALS 5,
          C1(10) TYPE I VALUE '45'.
    WRITE:/ B1,C1.

    一般情况下type与like可以互用,区别是type后面可以接数据类型,like不可以,like后面需要接系统变量。

    DATA: A11 TYPE AUFK-AUFNR VALUE '233333'.
    DATA: B11 LIKE AUFK-AUFNR VALUE '333343'.
    DATA: C11 LIKE I VALUE '3'. "会报错:        字段 "I" 未知。它既不在其中一个指定表中,也没有通过 "DATA"
    WRITE:/ A11,B11.

    常量定义使用 CONSTANTS
    CONSTANTS<常量名>[<长度> ] TYPE <数据类型> VALUE <默认值>

    CONSTANTS A111 TYPE P DECIMALS 3 VALUE '3'.
    WRITE A111.

    以下是常用的系统变量:
    SY-SUBRC : 系统执行某指令后,表示执行成功与否的变量,'0' 表示成功
    SY-UNAME: 当前使用者登入SAP的USERNAME;
    SY-DATUM: 当前系统日期;
    SY-UZEIT: 当前系统时间;
    SY-TCODE: 当前执行程序的Transaction code
    SY-INDEX : 当前LOOP循环过的次数
    SY-TABIX: 当前处理的是internal table 的第几笔
    SY-MANDT: CLIENT(客户端编号) NUMBER
    SY-VLINE: 画竖线
    SY-ULINE: 画横线
    系统变量的定义在结构SYST里

    直接定义数据结构。

    DATA :BEGIN OF F11,
      A123(10) TYPE C VALUE '222',
      A1233(10) TYPE C VALUE '333',
      A1234(10) TYPE C VALUE '444',
      END OF F11.
    
    WRITE:/ F11-A123,F11-A1233,F11-A1234.
    WRITE:/ F11.

    结构继承的使用

    TYPES: BEGIN OF TY_DATA,
             a(10) TYPE C,
             b(10) TYPE C,
             c(10) TYPE C,
           END OF TY_DATA.
    DATA :BEGIN OF F11,
            A123(10)  TYPE C VALUE '222',
            A1233(10) TYPE C VALUE '333',
            A1234(10) TYPE C VALUE '444',
          END OF F11.
    DATA BEGIN OF F111.
    INCLUDE TYPE ty_data."将结构类型包括进来,用于TYPES定义的
    DATA END OF F111.
    DATA: BEGIN OF F1111.
      INCLUDE STRUCTURE F11."将结构对象包括进来,用于data定义的
    DATA: END OF F1111.
    
    F111-A = '11122'.
    F1111-A123 = '332'.
  • 相关阅读:
    从开心网的奴隶安抚与折磨想到员工积极性与人力成本的问题
    悲剧的做网站的,我们都没有认真的前行
    如何做生意
    Android Market中产品图标设计原则
    控制UpdataPanel中的GridView模板列控件同步刷新
    DataTable筛选
    IE6,7,8,FF兼容总结
    DevPress Grid 设置行样式
    SQL分组查询
    DevexPress checkedit 多选解决方案(原创)
  • 原文地址:https://www.cnblogs.com/BruceKing/p/10736433.html
Copyright © 2011-2022 走看看