分配组件到底有什么用?

2020-09-30 03:16发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨朋友, 我想知道分配组件的确...

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

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


嗨朋友,

我想知道分配组件的确切用途是什么……

下面是我用来更新工作区和内部表中的值的代码。

但我的疑问是,我们可以通过将价值传递给工作区域本身来直接做到这一点。

喜欢......

从but000中选择*到表gt_tab中,最多10行。

 循环到gt_tab分配 -bpkind ='SOMENAME'。
 结束循环。

为什么我们在这里使用分配组件......

两者都在做同样的工作...我们可以通过直接传递或使用assign组件来完成....

从but000中选择*到表gt_tab中,最多10行。

 循环到gt_tab分配。
   将结构的组件'BPKIND'分配给 ='SOMENAME'。
 结束循环。

请帮助我...

谢谢

Divi。

9条回答
ZJXianG
2020-09-30 03:57

嗨,


您也可以将其与字段索引一起使用,这里有一些信息;

http://help.sap.com/SAPhelp_nw70/ helpdata/zh-CN/fc/eb3923358411d1829f0000e829fbfe/content.htm

就像雷蒙德所说的那样,认为"动态"。

例如,图像中有一个具有以下结构的表,其中有一个具有表名的字段,而另一个具有内容的字段;

类型:
    开始于tys_data,
      tabname TYPE标签名,
      内容类型EDI_SDATA,
    结束于tys_data,
    tyt_data类型标准表tys_data。

您知道将始终需要打印一个名为LIFNR的字段。 但是您不知道每个记录中表的名称。

您可以执行以下操作;

为每种表类型创建一个变量; (尽管也许您在"设计"时不知道所有表类型)

数据:
     lt_data TYPE tyt_data,
     ls_lfa1 TYPE lfa1,
     ls_lfb1 TYPE lfb1,
     ls_ekko TYPE ekko。
 * ...


    字段符号:
      TYPE tys_data。


   循环lt_data
     分配。

     情况 -tabname。
       当" LFA1"时。
         将-内容移动到ls_lfa1。
         写:\ ls_lfa1-lifnr。

       当" LFB1"时。
         将-内容移动到ls_lfb1。
         写:\ ls_lfb1-lifnr。

       当" EKKO"。
         将-内容移动到ls_ekko。
         写:\ ls_ekko-lifnr。

 * ...

       当别人。

     结束。

   ENDLOOP。

或者您可以像这样动态地进行操作:

数据:
     lo_content TYPE REF TO数据,
     lt_data TYPE tyt_data。

    字段符号:
      TYPE tys_data,
      TYPE任意,
      TYPE任意。

   循环lt_data
     分配。

     创建数据lo_content TYPE( -tabname)。
     检查sy-subrc EQ 0。

     ASSIGN lo_content-> * TO 。
     检查sy-subrc EQ 0。

     将结构的组件" LIFNR"分配给。
     检查sy-subrc EQ 0。

     写:。

   ENDLOOP。

这只是一个愚蠢的例子,但是您可以弄清楚该怎么做。

此致

里卡多。

一周热门 更多>