技术开发 频道

ABAP指针常用语法

【IT168 技术文章】

    1、定义指针:
    指针的定义主要有以下语句

    定义任意类型的指针,但是不具备栏位结构(仅仅是一个地址)

      FIELD-SYMBOLS <carrid> TYPE ANY.

  参考数据库表定义(这种指针是含有栏位结构的,参考内表同理)
   
      FIELD-SYMBOLS <sflight> TYPE sflight.
      FIELD-SYMBOLS <sflight> LIKE sflight.

      FIELD-SYMBOLS <sflight> LIKE LINE OF sflight.

  动态定义具有栏位结构的指针类型
   
       DATA: tabname TYPE tabname VALUE 'SFLIGHT' ,   

       dref TYPE REF TO data.
        FIELD-SYMBOLS: <itab> TYPE ANY TABLE.    

        CREATE DATA dref TYPE TABLE OF (tabname).
        ASSIGN dref->* TO <itab>.

    2、指针的分配(常用句法)
    分配某个变量给指针
       ASSIGN var TO <field-symbols>

  分配结构中的某个字段的地址给指针
   
      ASSIGN COMPONENT pos OF STRUCTURE struc TO <field-symbols>.

  分配整个内表行给指针(指针必须定义为有栏位结构的类型)   

      READ TABLE itab INDEX/WITH KEY ASSIGNING <field-symbols>.

      LOOP AT itab
      ASSIGNING  <field-symbols>.
       ENDLOOP.

    分配类的方法或借口给指针
      ASSIGN dref->* TO <field-symbols>.

    直接在SQL语句中分配
       SELECT *

       FROM (tabname) UP TO 20 ROWS
       INTO TABLE <itab>.

4
相关文章