2020-08-20 22:19发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我需要将2个标准表(KNA1和adrc)中的数据插入到ZDBTable中。
zdbtable只有4列(kna1中有3列,adrc中有1列)。
我需要知道推荐的方法。 使用带或不带标题的内部表...
PS:我是ABAP的初学者。
谢谢。
嗨,
您可以使用类似这样的选择(根据自己的需要):
选择c〜kunnr,c〜name1,a〜country 来自kna1 as c INNER JOIN adrc AS a ON a〜addrnumber = c〜adrnr 插入表@DATA(lt_customer_data) 从〜=的<〜@ sy-datum 和a〜date_to> = @ sy-datum。
我不建议将此数据复制到新的z表中,因为您将存储两次数据(并且您可能会遇到 实际数据与z表之间存在差异。
如果要创建单独的z表的唯一原因是易于访问数据,则建议创建数据库视图或 CDS视图(如果有CDS,这是最好的方法。)这样就不必两次存储数据,不必担心差异,并且可以轻松访问所需的数据。 您可以使用上面的选择来创建视图)
如果您打算将数据读入内部表中,那么您就不应再使用标题行,因为这些标题行已经过时了。
最诚挚的问候,
Geert-Jan Klaps
标题行已过时(无论如何,您应使用ABAP对象进行编码,在类中不允许标题行)
亲爱的哈利勒
我假设您的表是Ztclient99,并且我假设您复制记录ba 根据客户代码的选择条件进行选择。
类型:line_type的开头, 像ztclient99-client这样的客户端, 像ztclient99-client_id一样的client_id, name_last就像ztclient99-name_last一样, name_first就像ztclient99-name_first一样, 类似ztclient99-addrnumber的addrnumber, line_type的结尾。 DATA:ztclient99的it_data类型标准表, wa_data类型ztclient99。 "从s_kunnr的选择屏幕中获取客户范围。 选择A〜KUNNR AS'CLIENT_ID',A〜NAME1 AS'NAME_LAST',A〜NAME2 AS'NAME_FIRST',B〜ADRNR AS'ADDRNUMBER' 从KNA1 AS A a〜addrnumber = B〜adrnr上的INNER JOIN ADRC AS B 表IT_DATA的对应字段 S_KUNNR中的A〜KUNNR。 "将数据保存在表中 如果IT_DATA []不是INITIAL。 从表IT_DATA修改ztclient99。 万一。
解决方案1:选择并插入。
ABAP 7.50中的解决方案2:INSERT ... FROM(SELECT ...)
使用视图。 为什么要复制数据? 您只需要保持最新即可。 视图始终是最新的。
如果您的系统不支持内联数据声明,则必须执行以下操作:
类型:开始于 line_type, 像kna1-kunnr一样 像kna1-name1这样的name1, 像adrc-country这样的国家, line_type的结尾。 数据:lt_customer_data类型表line_type。 选择c〜kunnr c〜name1 a〜country 来自kna1 as c INNER JOIN adrc AS a ON a〜addrnumber = c〜adrnr 进入表lt_customer_data 从〜= sy-datum 和a〜date_to> = sy-datum。
感谢Rossi,您能告诉我这些步骤吗?
最多设置5个标签!
嗨,
您可以使用类似这样的选择(根据自己的需要):
我不建议将此数据复制到新的z表中,因为您将存储两次数据(并且您可能会遇到 实际数据与z表之间存在差异。
如果要创建单独的z表的唯一原因是易于访问数据,则建议创建数据库视图或 CDS视图(如果有CDS,这是最好的方法。)这样就不必两次存储数据,不必担心差异,并且可以轻松访问所需的数据。 您可以使用上面的选择来创建视图)
如果您打算将数据读入内部表中,那么您就不应再使用标题行,因为这些标题行已经过时了。
最诚挚的问候,
Geert-Jan Klaps
标题行已过时(无论如何,您应使用ABAP对象进行编码,在类中不允许标题行)
亲爱的哈利勒
我假设您的表是Ztclient99,并且我假设您复制记录ba 根据客户代码的选择条件进行选择。
解决方案1:选择并插入。
ABAP 7.50中的解决方案2:INSERT ... FROM(SELECT ...)
使用视图。 为什么要复制数据? 您只需要保持最新即可。 视图始终是最新的。
如果您的系统不支持内联数据声明,则必须执行以下操作:
感谢Rossi,您能告诉我这些步骤吗?
一周热门 更多>