本地类方法中的内联声明

2020-09-02 17:51发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) CLASS lcl_ewb定义...

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

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


 CLASS lcl_ewb定义。
   公共部分。
     方法:
       get_data,
       get_sd_invoice。
      " get_sd_invoice导出t_vbrk类型任何表-不起作用
 ENDCLASS。
 类别lcl_ewb的实现
 方法get_data。
     check_active_jobs()。
     如果gr_fkart不是INITIAL或gr_vbeln不是INITIAL。
       get_sd_invoice()。
       " get_sd_invoice(正在导入t_vbrk = data(gt_vbrk))-不起作用
       检查gt_vbrk是否不初始化
     万一。
   终结法。
 方法get_sd_invoice。
       SELECT vbeln,
              fkart,
              knumv,
              fkdat,
              belnr,
              杰尔
         来自vbrk
         插入表@DATA(lt_vbrk)
         vbeln在哪里@gr_vbeln
           和fkart IN @gr_fkart
           和fkdat IN @s_bldat
           AND Bukrs在@s_bukrs
           和@@ s_kunnr中的kunag。
       如果sy-subrc = 0。
         按vbeln排序lt_vbrk。
         t_vbrk = lt_vbrk。
       万一。
   终结法。
 ENDCLASS。

伙计们,

使用首次尝试使用的Inline声明时,我面临一个挑战。 我已经附上了代码片段。

在Local方法中,我正在使用内联声明将VBRK的访存写入ITAB。 此ITAB将是本地的,但我需要将此内部表全局用于其他方法。 如果在方法定义中使用IMPORTING参数,应如何声明内部表? 我尝试了ANY TABLE,但无法正常工作。 我不想在SE11中创建表类型并在此处使用它(这违背了使用Inline的目的)。

请帮助我找出我做错了什么,如果您对以更好的方式编写此逻辑有任何建议,请提及。

此致

NishanthVK

6条回答
shere_lin
2020-09-02 18:39

使用Eclipse,有一个快速修复程序可以在本地转换宿主变量,并声明带有所有字段的类型。

如果没有的话

注意:在旧的后端编辑器中,您还可以使用"样式"按钮来选择" 具有字段的结构化数据对象",即从一个表中选择字段,并生成ABAP代码" BEGIN OF ... END OF ..."(但比Eclipse实用得多!)

一周热门 更多>