启用RFC的功能模块中键值列表的数据结构?
Data structure for key-value list in RFC-enabled function module?
我正在 ABAP 中编写一个新的 RFC 可调用函数,它应该能够导入键值映射列表。
RFC 调用应用程序将使用 Python 和 PyRFC 库。
我不确定是否应该创建一个新的自定义数据结构,是否可以重新使用现有的数据结构。
导入参数应该能够包含以下列表:
('key1', ['key1val1', 'key1val2', ...])
('key2', ['key2val1', 'key2val2', ...])
....
如果可能,我想重新使用现有的数据结构。
一个丑陋的技巧是像这样设计 API:使用一个字符串并解析为 json。但这是我想避免的解决方法。
我找到了数据结构 WDY_KEY_VALUE
但那里的值是一个字符串。我需要一个值是字符串列表的结构。
在 ABAP DDIC 中完全可以对此类数据进行建模:
创建 table 类型 z_t_values
并在类型 string
中构建行
使用字段 key type string
和 values type z_t_values
创建结构类型 z_s_key_values
创建 table 类型 z_t_key_values
行类型 z_s_key_values
现在,类型 z_t_key_values
对应于您的示例输入:它是一个 table 行,每行包含一个键和一个 table 值
您可以创建一个深层结构,其中 KEY
定义为 STRING
类型,VALUE
定义为类型 STRINGTAB
。
我正在 ABAP 中编写一个新的 RFC 可调用函数,它应该能够导入键值映射列表。
RFC 调用应用程序将使用 Python 和 PyRFC 库。
我不确定是否应该创建一个新的自定义数据结构,是否可以重新使用现有的数据结构。
导入参数应该能够包含以下列表:
('key1', ['key1val1', 'key1val2', ...])
('key2', ['key2val1', 'key2val2', ...])
....
如果可能,我想重新使用现有的数据结构。
一个丑陋的技巧是像这样设计 API:使用一个字符串并解析为 json。但这是我想避免的解决方法。
我找到了数据结构 WDY_KEY_VALUE
但那里的值是一个字符串。我需要一个值是字符串列表的结构。
在 ABAP DDIC 中完全可以对此类数据进行建模:
创建 table 类型
z_t_values
并在类型string
中构建行
使用字段
key type string
和values type z_t_values
创建结构类型 创建 table 类型
z_t_key_values
行类型z_s_key_values
z_s_key_values
现在,类型 z_t_key_values
对应于您的示例输入:它是一个 table 行,每行包含一个键和一个 table 值
您可以创建一个深层结构,其中 KEY
定义为 STRING
类型,VALUE
定义为类型 STRINGTAB
。