Tho*_*ues 2 abap hashtable updates
如何更新ABAP Hased表?
什么是Java语句的等价物:
hashMap.put("myKey", "myValue");
Run Code Online (Sandbox Code Playgroud)
在ABAP?
假设您只对put()对hashMap内容的影响感兴趣并且不关心它返回的值,则等价物将是:
INSERT VALUE #( KEY = 'myKey' VALUE = 'myValue' ) INTO TABLE hashMap.
Run Code Online (Sandbox Code Playgroud)
不同的是,对于现有密钥,条目不会更新,但SY-SUBRC将设置为4,因此您必须做一些额外的工作.需要将内部表hashMap定义为具有UNIQUE KEY KEY的HASHED TABLE以及至少具有KEY和VALUE字段的类型.
另请参阅:SAP帮助
小智 6
工作范例:
TYPES: BEGIN OF LINE,
COL1,
COL2,
END OF LINE.
DATA: WA TYPE LINE,
ITAB TYPE HASHED TABLE OF LINE WITH UNIQUE KEY COL1.
WA-COL1 = 'X'. INSERT WA INTO TABLE ITAB.
WA-COL1 = 'Y'. INSERT WA INTO TABLE ITAB.
WA-COL1 = 'Y'. INSERT WA INTO TABLE ITAB. "Not added
Run Code Online (Sandbox Code Playgroud)