在搜索帮助退出" RECORD_TAB"中消失" MANDT"字段空间

2020-09-28 14:45发布

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

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


我创建了搜索帮助" ZMATNR"。
基本选择过程是数据库访问" ZMVMM0010"。
我添加了搜索帮助退出" ZFMMM_SHLP_EXIT_MATNR"。
然后我在" DISP"步骤中检查了" RECORD_TAB"数据。
因为我需要检查结果。

起初没有问题。

这是" RESULT_TAB"数据


因为我使用了" ZMVMM0010"视图,所以字符串以三个空格开头。

这很正常。

但是当我再搜索一次时," RECORD_TAB []"很不正常。

↑再搜索一次。

这是" RESULT_TAB"数据

" MANDT"的3个空格字符消失了!!

此搜索帮助错误吗?
我试图找到可读的" RECORD_TAB" FM,但找不到。

我按以下方式解决了这种情况。

 ...

   如果CALLCONTROL-STEP EQ'DISP'。
 ...

 *筛选结果
     在RECORD_TAB处循环播放。

 *检查第一空间
       如果RECORD_TAB-STRING(3)不是初始的。

         RECORD_TAB-STRING =``&& RECORD_TAB-STRING。

       万一。

       LS_LINE = RECORD_TAB-STRING。

       ...

       如果是LS_LINE-SPOUT NET EQ'BLABLABLA'。

         删除RECORD_TAB。

         继续。

       万一。
   
     结局。

     返回。

   万一。
 

但是我想更清楚地解决此问题。
如果有办法阅读" RECORD_TAB",我想知道。

请帮我一下。

shlp-01.jpg (299.4 kB)

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

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


我创建了搜索帮助" ZMATNR"。
基本选择过程是数据库访问" ZMVMM0010"。
我添加了搜索帮助退出" ZFMMM_SHLP_EXIT_MATNR"。
然后我在" DISP"步骤中检查了" RECORD_TAB"数据。
因为我需要检查结果。

起初没有问题。

这是" RESULT_TAB"数据


因为我使用了" ZMVMM0010"视图,所以字符串以三个空格开头。

这很正常。

但是当我再搜索一次时," RECORD_TAB []"很不正常。

↑再搜索一次。

这是" RESULT_TAB"数据

" MANDT"的3个空格字符消失了!!

此搜索帮助错误吗?
我试图找到可读的" RECORD_TAB" FM,但找不到。

我按以下方式解决了这种情况。

 ...

   如果CALLCONTROL-STEP EQ'DISP'。
 ...

 *筛选结果
     在RECORD_TAB处循环播放。

 *检查第一空间
       如果RECORD_TAB-STRING(3)不是初始的。

         RECORD_TAB-STRING =``&& RECORD_TAB-STRING。

       万一。

       LS_LINE = RECORD_TAB-STRING。

       ...

       如果是LS_LINE-SPOUT NET EQ'BLABLABLA'。

         删除RECORD_TAB。

         继续。

       万一。
   
     结局。

     返回。

   万一。
 

但是我想更清楚地解决此问题。
如果有办法阅读" RECORD_TAB",我想知道。

请帮我一下。

shlp-01.jpg (299.4 kB)
付费偷看设置
发送
2条回答
compass1988
1楼 · 2020-09-28 15:23.采纳回答

F4UT_PARAMETER_VALUE_GET(两种用法:一种用法是阅读RECORD_TAB,参见功能模块文档)

何必丶何苦呢
2楼-- · 2020-09-28 15:09

感谢您的建议。

我的目标是结果过滤。
我解决如下。

 ...
   数据:开始为LT_FILTER次,0,
            MTART类型MTART,"过滤目标1
            喷头类型ZMSPECT,"过滤器目标2"
          LT_FILTER结束。
   ...
   如果CALLCONTROL-STEP EQ'DISP'。
   ...
 *将数据加载到过滤器1
     通话功能'F4UT_PARAMETER_VALUE_GET'
      出口
        PARAMETER ='MTART'
        FIELDNAME ='MTART'
      桌子
        SHLP_TAB = SHLP_TAB
        RECORD_TAB = RECORD_TAB
        RESULTS_TAB = LT_FILTER
      改变
        SHLP = SHLP
        CALLCONTROL =呼叫控制。

 *将数据加载到过滤器2
     通话功能'F4UT_PARAMETER_VALUE_GET'
      出口
        PARAMETER ='SPOUT'
        FIELDNAME ='SPOUT'
      桌子
        SHLP_TAB = SHLP_TAB
        RECORD_TAB = RECORD_TAB
        RESULTS_TAB = LT_FILTER
      改变
        SHLP = SHLP
        CALLCONTROL =呼叫控制。

 *过滤
     在LT_FILTER处循环播放。
LV_TABIX = SY-TABIX。
*选一个 如果LT_FILTER-SPOUT NE'BLABLABAL'。

删除LT_FILTER索引LV_TABIX。
继续。 万一。 *检查两个 使用键TABLE_LINE = LT_FILTER-MTART读取表LT_MTART 二进制搜索。 如果SY-SUBRC NE0。

删除LT_FILTER索引LV_TABIX。 继续。 万一。 结局。 返回。 ENDIF。

一周热门 更多>