点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我已经使用字段符号创建了一个动态内部表。 现在,我需要将该动态Itab转换为另一个普通的内部表。 谁能告诉我如何将dyn_itab转换为另一个itab。
我用于创建动态表的代码:
调用方法cl_alv_table_create => create_dynamic_table
导出
i_style_table ='X'
it_fieldcatalog = it_fcat1
导入
ep_table = gt_dyn_table
例外情况
generate_subpool_dir_full = 1
其他= 2。
ASSIGN gt_dyn_table-> *至
创建数据new_line,例如
ASSIGN new_line-> * TO
您可能会创建一些动态abap来定义变量,但这非常复杂并且可能无法正常工作。 为什么要避免使用字段符号? 通过它们访问动态表应该没有问题。 请说明您对静态表的需求。
我对该动态表没有任何结构。 该动态表是在该字段目录的帮助下在运行时创建的,并且字段目录列也无法修复,这些字段是在运行时动态添加的。
下面的代码:
FIELD-SYMBOLS: TYPE TABLE,
DATA:gt_dyn_table TYPE REF TO数据,
gw_line TYPE REF TO data。
(附加字段目录的代码)
计数=计数+ 1。
wa_fcat1-col_pos =计数。
wa_fcat1-coltext ='FR SALVAGE CUM%'。
wa_fcat1-fieldname ='CFSAL_PERC'。
将wa_fcat1添加到it_fcat1。
清除:wa_fcat1。
(使用另一个内部表(it_proc1)条目将动态列添加到字段目录的内部表中的代码
在it_proc1进入wa_proc1处循环。
将it_proc循环到wa_proc所在的frr_def_no = wa_proc1-frr_def_no。
count2 = count2 + 1。
ENDLOOP。
凝结计数3。
CONCATENATE col count3到count5。
计数=计数+ 1。
count3 = count3 + 1。
wa_fcat1-col_pos =计数。
wa_fcat1-coltext = wa_proc1-frr_def。
wa_fcat1-fieldname = count5。
将wa_fcat1添加到it_fcat1。
清除:wa_fcat1,count2。
ENDLOOP。
调用方法cl_alv_table_create => create_dynamic_table
导出
i_style_table ='X'
it_fieldcatalog = it_fcat1
导入
ep_table = gt_dyn_table
例外情况
generate_subpool_dir_full = 1
其他= 2。
现在我的要求是我想要gt_dyn_table动态表的静态内部表。
您已经有了一个动态表。 您必须动态访问。 没有办法解决。 将动态表转换为静态表的整个想法毫无意义。 这几乎类似于要求四边形三角形的供应商。
您不是在说明您的要求,而是在说明您的要求的首选解决方案。 如果您明确说明了自己的要求,则可能会得到一些帮助。
处理动态表是一个常见问题解答,内容全面,并不难。 因此,我将锁定此讨论。
您好Swapnil,
已经有动态内部表。
如果您希望拥有普通内部表,那么 声明它并通过动态内部表填充它。
您正在面对什么问题?
此消息已被审核。
嗨,
我遇到了同样的情况,但是我想将动态表作为Excel文件发送。 您可以使用fieldcatalog和动态表。 您将拥有一个表i_attachment(TYPE STANDARD TABLE OF solisti1。)然后,您将拥有内部表的所有行。 但是如何生成一个新的内部表,尤其是在运行时,确实是一个大问题。 也许对您有帮助。
最诚挚的问候。
DATA:g_sent_to_all TYPE子标志,
。
INTO 。
到。
初始。并入w_attachment由con_tab分隔。
。
g_tab_lines TYPE i。 of solisti1,
i_body_msg类型标准表solisti1,
i_receivers类型标准表,somlreci1。
数据:w_document_data类似于i_document_data,
w_packing_list的类 类i_attachment的行,
w_body_msg,类i_body_msg的行,
w_receivers,类i_receivers的行。
类cl_abap_char_utilities定义负荷。 =>水平标签,
con_cret类型c值cl_abap_char_utilities => cr_lf。
环gt_fcat INTO gs_fcat。
匹配w_attachment gs_fcat字段名INTO w_attachment
单独按Tab。 >
ENDLOOP。
CONCATENATE con_cret w_attachment INTO w_attachment。
APPEND w_attachment TO i_attachment。
清除:w_attachment,gs_fcat,
LOOP AT
LOOP AT gt_fcat INTO gs_fcat。
< br>分配结构的gs_fcat字段名称
如果不是
并入w_attachment
ELSE。
CONCATENATE w_attachment''INTO w_attachment由con_tab分隔。
ENDIF。
ENDLOOP。
CONCATENATE con_cret w_attachment INTO w_attachment。
APPEND w_attachment至i_attachment <。 br> CLEAR:w_attachment,
ENDLOOP。
------->``i_attachment''具有您想要的内部表的形状,逐行显示。
一周热门 更多>