是否可以保存多个文本?

2020-08-21 16:01发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我想从一些自定义控件中保存文本。

当我双击SO Comm Head的简洁列时,将出现用于编辑和保存文本(文本标题和文本项)的模式对话框。

问题是我无法保存两个文本。 这是我的代码

案例SY-UCOMM。
     当"保存"时。
 *刷新gi_dis_longtext。
       调用方法gv_text_editor-> get_text_as_r3table
 *出口
 * ONLY_WHEN_MODIFIED = TRUE
         输入
           表格= gi_dis_longtext
 * IS_MODIFIED = IS_MODIFIED
         例外情况
           error_dp = 1
           error_cntl_call_method = 2
           error_dp_create = 3
           potential_data_loss = 4
           其他= 5。

       如果sy-subrc = 0。
         刷新it_lines。
         环回gi_dis_longtext INTO gw_dis_longtext。
           it_lines-tdformat ='/'。
           it_lines-tdline = gw_dis_longtext-tdline。
           APPEND it_lines。
         结局。
       万一。

       如果it_lines []是INITIAL。
         it_lines-tdformat ='*'。
         it_lines-tdline =''。
         APPEND it_lines。
       万一。

       呼叫方法cl_gui_cfw =>冲洗
         例外情况
           cntl_system_error = 1
           cntl_error = 2
           其他= 3。


         gv_header-tdname = wa_selected-vbeln。
         gv_header-tdid ='ZCOM'。
         gv_header-tdobject ='VBBK'。
         gv_header-tdspras = sy-langu。

         清除p_name_i。
         连接wa_selected-vbeln wa_selected-posnr INTO p_name_i。
         gv_header_i-tdname = p_name_i。
         gv_header_i-tdid ='ZCOM'。
         gv_header_i-tdobject ='VBBP'。
         gv_header_i-tdspras = sy-langu。


       通话功能" SAVE_TEXT"
         出口
           客户= sy-mandt
           标头= gv_header
 * INSERT =''
           savemode_direct ='X'
 * OWNER_SPECIFIED =''
 * LOCAL_CAT =''
 *进口
 *功能=
 * NEWHEADER =
         桌子
           行数= it_lines
         例外情况
           id = 1
           语言= 2
           名称= 3
           对象= 4
           其他= 5。

       通话功能" SAVE_TEXT"
         出口
           客户= sy-mandt
           标头= gv_header_i
 * INSERT =''
           savemode_direct ='X'
 * OWNER_SPECIFIED =''
 * LOCAL_CAT =''
 *进口
 *功能=
 * NEWHEADER =
         桌子
           行数= it_lines
         例外情况
           id = 1
           语言= 2
           名称= 3
           对象= 4
           其他= 5。
      
        
       IF sy-subrc均衡器0。
         执行f_clear_data。
         带有"成功保存"的显示s398(00)的消息,类似于" S"。
         设置屏幕0。
       其他。
         消息s398(00)与'将数据保存到数据库时出错'显示类似'E'。
       ENDIF。

(35.0 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我想从一些自定义控件中保存文本。

当我双击SO Comm Head的简洁列时,将出现用于编辑和保存文本(文本标题和文本项)的模式对话框。

问题是我无法保存两个文本。 这是我的代码

案例SY-UCOMM。
     当"保存"时。
 *刷新gi_dis_longtext。
       调用方法gv_text_editor-> get_text_as_r3table
 *出口
 * ONLY_WHEN_MODIFIED = TRUE
         输入
           表格= gi_dis_longtext
 * IS_MODIFIED = IS_MODIFIED
         例外情况
           error_dp = 1
           error_cntl_call_method = 2
           error_dp_create = 3
           potential_data_loss = 4
           其他= 5。

       如果sy-subrc = 0。
         刷新it_lines。
         环回gi_dis_longtext INTO gw_dis_longtext。
           it_lines-tdformat ='/'。
           it_lines-tdline = gw_dis_longtext-tdline。
           APPEND it_lines。
         结局。
       万一。

       如果it_lines []是INITIAL。
         it_lines-tdformat ='*'。
         it_lines-tdline =''。
         APPEND it_lines。
       万一。

       呼叫方法cl_gui_cfw =>冲洗
         例外情况
           cntl_system_error = 1
           cntl_error = 2
           其他= 3。


         gv_header-tdname = wa_selected-vbeln。
         gv_header-tdid ='ZCOM'。
         gv_header-tdobject ='VBBK'。
         gv_header-tdspras = sy-langu。

         清除p_name_i。
         连接wa_selected-vbeln wa_selected-posnr INTO p_name_i。
         gv_header_i-tdname = p_name_i。
         gv_header_i-tdid ='ZCOM'。
         gv_header_i-tdobject ='VBBP'。
         gv_header_i-tdspras = sy-langu。


       通话功能" SAVE_TEXT"
         出口
           客户= sy-mandt
           标头= gv_header
 * INSERT =''
           savemode_direct ='X'
 * OWNER_SPECIFIED =''
 * LOCAL_CAT =''
 *进口
 *功能=
 * NEWHEADER =
         桌子
           行数= it_lines
         例外情况
           id = 1
           语言= 2
           名称= 3
           对象= 4
           其他= 5。

       通话功能" SAVE_TEXT"
         出口
           客户= sy-mandt
           标头= gv_header_i
 * INSERT =''
           savemode_direct ='X'
 * OWNER_SPECIFIED =''
 * LOCAL_CAT =''
 *进口
 *功能=
 * NEWHEADER =
         桌子
           行数= it_lines
         例外情况
           id = 1
           语言= 2
           名称= 3
           对象= 4
           其他= 5。
      
        
       IF sy-subrc均衡器0。
         执行f_clear_data。
         带有"成功保存"的显示s398(00)的消息,类似于" S"。
         设置屏幕0。
       其他。
         消息s398(00)与'将数据保存到数据库时出错'显示类似'E'。
       ENDIF。

(35.0 kB)
付费偷看设置
发送
8条回答
Aaron 3364
1楼 · 2020-08-21 16:13.采纳回答

亲爱的萨达姆

执行例程

PERFORM f_read_text使用p_name_i'ZCOM''VBBP',PERFORM f_read_text使用p_name_i'ZCOM''VBBK'将结果存储在同一位置 it_lines []。

(刷新或附加)。

因此,请为每个标题和项目使用不同的it_lines,然后适当保存。

此致

Venkat

wang628962
2楼-- · 2020-08-21 16:23

我应该创建不同的it_lines吗?

例如 用于gv_header和it_lines_i gv_header_i的it_lines

一周热门 更多>