在新窗口中提交带有选择表和自由选择的报告

2020-09-13 22:49发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)尊敬的专家, 我有以下几...

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

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


尊敬的专家,

我有以下几行代码,当用户双击ALV报告中的物料编号时,他们将进行LX02交易

 TYPE-POOLS:rsds。
          数据:
                   it_seltab rsparams的类型表,
                   ls_seltab喜欢it_seltab,
                   wa_selopt TYPE rsdsselopt。
           数据:
                   it_frange TYPE rsds_frange_t,
                   wa_frange TYPE rsds_frange。
           数据:
                   it_trange TYPE rsds_trange,
                   wa_trange TYPE rsds_range。
           数据:
                   it_texpr TYPE rsds_texpr,
                   wa_texpr TYPE rsds_expr。

           wa_trange-tablename ='LQUA'。
           wa_frange-fieldname ='MATNR'。
           wa_selopt-sign ='I'。
           wa_selopt-option ='EQ'。
           wa_selopt-low =  -matnr。
           wa_selopt-high =  -matnr。

           附加wa_selopt至wa_frange-selopt_t。
           附加wa_frange至wa_trange-frange_t。

           wa_frange-fieldname ='LGNUM'。
           wa_selopt-sign ='I'。
           wa_selopt-option ='EQ'。
           wa_selopt-low = lv_lgnum。
           wa_selopt-high = lv_lgnum。

           ls_seltab-selname ='S1_LGNUM'。  "提交程序上的参数名称
           ls_seltab-kind ='S'。
           ls_seltab-sign ='I'。
           ls_seltab-option ='EQ'。
           ls_seltab-low = lv_lgnum。
           ls_seltab-high = lv_lgnum。

           将ls_seltab附加到it_seltab。
           附加wa_selopt至wa_frange-selopt_t。
           附加wa_frange至wa_trange-frange_t。
           附加wa_trange至it_trange。

           通话功能" FREE_SELECTIONS_RANGE_2_EX"
             出口
               field_ranges = it_trange
             输入
               表达式= it_texpr。

           提交rls10020
           使用SELECTION-TABLE it_seltab
           免费选择it_texpr
           然后返回。

现在,用户希望此交易显示在新窗口中。 有关如何操作的任何想法?

4条回答
粗暴的香蕉
2020-09-13 23:34

基本上,当您提交程序时,它们处于同一会话中,因此您需要在新会话中调用该程序。 我知道的唯一方法是在新任务中调用功能模块:

呼叫功能'ZFM_CALL_TCODE'开始新任务'xxx'目的地'无'。

如果您有特定的逻辑,或者可以使用以下功能,则此处的功能模块可以是您自己的fm:ABAP4_CALL_TRANSACTION并仅通过tcode传递参数值。

一周热门 更多>