• ABAP中FIELD-SYMBOLS的详细用法


    https://blog.csdn.net/sunnyonly1992/article/details/51545678

    (一)定义
    FIELD-SYMBOLS: []
    在ABAP编程中使用非常广泛,类似于指针,可以指代任何变量。

    当不输入时,继承赋给它的变量的所有属性
    当输入时,赋给它的变量必须与同类型。
    举个简单的例子:

    FIELD-SYMBOLS:.
    DATA:DAT(8)  VALUE '19920108'.
    ASSIGN  DAT TO .
    WRITE: / .
    
    • 1
    • 2
    • 3
    • 4

    " 继承 DAT属性 ,为C类型,其值为19920108

    注意,这里定义了之后,使用 assign … to …,将变量分配给内部字段,这时才继承了dat的属性及值

    如果写成如下:

    FIELD-SYMBOLS:   TYPE D.
    DATA: DAT(5)  TYPE C  VALUE '12345'.
    ASSIGN DAT TO .
    WRITE: /.
    
    • 1
    • 2
    • 3
    • 4

    这时候就会报错: dat与的类型不兼容。因为F2定义为D类型, 所以assign 的只能是同类型变量。

    FIELD-SYMBOLS:   TYPE D.
    	DATA:DAT(8)  VALUE '19920108'.
    	ASSIGN DAT TO  TYPE 'D'.
    	WRITE:/.
    
    • 1
    • 2
    • 3
    • 4

    这次虽然 为D类型,而dat为C类型, 但是type D 是将dat类型转换成D类型再分配给 ,输出为19920108.

    然后我们来讲解如何使用 field-symbol:

    首先我们摘取相关代码如下

    1.先定义.

    FIELD-SYMBOLS:.
    SORT I_EXCEL BY ROW COL.
    DATA: NUM_COL  TYPE I.
    
    • 1
    • 2
    • 3
    1. 循环i_excel内表,依次读出Excel中每一行的内容,写入 I_TABLE 内表 ()

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    然后我们执行下面的代码:

    LOOP  AT I_EXCEL INTO  W_EXCEL.
    	NUM_COL = W_EXCEL-COL.
    		ASSIGN COMPONENT  NUM_COL  OF  STRUCTURE  W_TABLE TO .
    		 = W_EXCEL-VALUE.
    	AT  END OF ROW.
    		APPEND W_TABLE TO I_TABLE.
    		CLEAR:  W_TABLE.
    	ENDAT.
    	CLEAR: W_EXCEL.
    ENDLOOP.
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
  • 相关阅读:
    Android组件化架构搭建
    Apollo第二讲—apollo自动驾驶调试及仿真实践
    如何在 iPhone 上使用蓝牙鼠标
    day15--使用postman, newman和jenkins进行接口自动化测试
    LLVM系列第十七章:控制流语句for
    JavaScript基础---JavaScript对象---10.19
    存储型XSS和BEEF浏览器攻击框架
    【Swift 60秒】61 - Computed properties
    【Leetcode】163.缺失的区间
    【js】js实现分页02
  • 原文地址:https://blog.csdn.net/weixin_43847969/article/details/126763640