2020-09-02 04:18发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
使用cl_salv_table显示自定义的内部表,您知道一种在字段名称和字段标签之间切换的方法,类似于SE16的方法。 基本上将内部表的列名称显示为ALV网格中的标题字段。
用于一列:
data(columns)= yoursalv-> get_columns()。 data(column)=列-> get_column('NAME')。 column-> set_medium_text('Heading')。 column-> set_long_text('Heading')。
迭代所有列:
data(columns)= yoursalv-> get_columns()。 data(itab_columns)=列-> get()。 循环到itab_columns INTO DATA(ls_column)。 ... ENDLOOP。
请使用COMMENT按钮发表评论,提问,添加详细信息等,ANSWER仅用于 提出一个解决方案,在答案区域的右边删除SAP文本:"在回答之前,只有在提出解决海报问题的解决方案时才应提交答案"
Benson, 我认为您将一次只能循环遍历itab的结构。 ALV根据itab的结构从itab列名中提取列名,或者通过手动定义那些标签(如Sandra的代码片段中一样)来提取列名。 在数据字典中的数据元素级别上定义了您要用作示例的SE11中的"字段标签"。
只是自由思考,您可能会采用的一种方法是遍历itab结构定义,为列名称分配字段符号,然后在DD04L中查找数据元素标签。 但是我仅使用了该技术从itab的单元格中获取数据,而不是从列的技术名称中获取数据,因此这也不可行。
我不确定ALV是否会知道如何向下钻取数据元素。 以及它如何知道要使用哪个数据元素标签(短,中,长或标题)? 最重要的是,由于itab字段定义可能与任何Dictionary数据元素完全无关,因此它将如何处理Dictionary中定义为CHAR20类型的通用列或itab定义中手动键入为char(20)的列 ?
我很想知道您的想法。 请在此处通知我们。
最多设置5个标签!
用于一列:
迭代所有列:
请使用COMMENT按钮发表评论,提问,添加详细信息等,ANSWER仅用于 提出一个解决方案,在答案区域的右边删除SAP文本:"在回答之前,只有在提出解决海报问题的解决方案时才应提交答案"
Benson, 我认为您将一次只能循环遍历itab的结构。 ALV根据itab的结构从itab列名中提取列名,或者通过手动定义那些标签(如Sandra的代码片段中一样)来提取列名。 在数据字典中的数据元素级别上定义了您要用作示例的SE11中的"字段标签"。
只是自由思考,您可能会采用的一种方法是遍历itab结构定义,为列名称分配字段符号,然后在DD04L中查找数据元素标签。 但是我仅使用了该技术从itab的单元格中获取数据,而不是从列的技术名称中获取数据,因此这也不可行。
我不确定ALV是否会知道如何向下钻取数据元素。 以及它如何知道要使用哪个数据元素标签(短,中,长或标题)? 最重要的是,由于itab字段定义可能与任何Dictionary数据元素完全无关,因此它将如何处理Dictionary中定义为CHAR20类型的通用列或itab定义中手动键入为char(20)的列 ?
我很想知道您的想法。 请在此处通知我们。
一周热门 更多>