Abap 如何编写结构?
如何显示结构内部的值?请参见下面的示例:Abap 如何编写结构?,abap,Abap,如何显示结构内部的值?请参见下面的示例: DATA: BEGIN OF line, col1 TYPE i, col2 TYPE i, END OF line. DATA: itab LIKE TABLE OF line, jtab LIKE TABLE OF line. DO 3 TIMES. line-col1 = sy-index. line-col2 = sy-index ** 2. APPEND line TO i
DATA: BEGIN OF line,
col1 TYPE i,
col2 TYPE i,
END OF line.
DATA: itab LIKE TABLE OF line,
jtab LIKE TABLE OF line.
DO 3 TIMES.
line-col1 = sy-index.
line-col2 = sy-index ** 2.
APPEND line TO itab.
ENDDO.
MOVE itab TO jtab.
line-col1 = 10. line-col2 = 20.
APPEND line TO itab.
IF itab GT jtab.
WRITE / 'ITAB GT JTAB'.
ENDIF.
写入:itab、jtab。
因为我想知道为什么itab比jtab大?我假设这只是一个简单的示例,您不想在生产环境中使用(部分)它-所以我忽略了代码中存在的其他潜在问题 就您的问题而言,您需要在itab上循环以访问其值。然后可以访问如下值:
DATA: ls_current_line LIKE line.
" ...
LOOP AT itab INTO ls_current_line.
WRITE / ls_current_line-col1.
ENDLOOP.
您可以使用功能模块
重用\u ALV\u GRID\u DISPLAY
例如:
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
TABLES
t_outtab = itab.
如果您想纯粹为了调试目的查看字段的内容,也可以在代码中添加断点,然后在调试器中查看内容 只是不要在生产代码中留下断点
break-point.
"or use break yourusername <= this use is safer
断点。
“或者使用break yourusernameITAB比JTAB大,因为它包含更多的行;ITAB有4行,而JTAB有3行
对于内部表,GT运算符首先查看表中的行数。有关比较运算符(对于内部表)的更多详细信息,请访问。[我看到您的示例也取自此帮助页。]这种方法的实际应用是什么?如果你解释一下你想做什么,也许可以强调一些(可能更好的)替代方法。你的术语不正确。你的意思是“结构”,而不是“对象”“。这是完全不同的事情。会话断点实际上更可取,但我发现解释图标的外观有点困难>