Структура данных для списка значений ключа в функциональном модуле с поддержкой RFC?
Я пишу новую вызываемую функцию RFC в ABAP, которая должна иметь возможность импортировать список сопоставления значений ключей.
Вызывающее приложение RFC будет использовать Python с библиотекой PyRFC.
Я не уверен, должен ли я создать новую пользовательскую структуру данных, если я смогу повторно использовать существующую структуру данных.
Аргумент import должен содержать следующий список:
('key1', ['key1val1', 'key1val2', ...])
('key2', ['key2val1', 'key2val2', ...])
....
Если возможно, я хотел бы повторно использовать существующую структуру данных.
Одним из отвратительных способов было бы спроектировать API следующим образом: использовать строку и анализировать как json. Но это обходной путь, которого я хотел бы избежать.
Я нашел структуру данных WDY_KEY_VALUE
но там значение является строкой. Мне нужна структура, в которой значением является список строк.
2 ответа
Вы можете создать глубокую структуру с KEY
определяется с типом STRING
а также VALUE
определяется с типом STRINGTAB
,
Моделирование таких данных вполне возможно в ABAP DDIC:
создать тип таблицы
z_t_values
со строками, построенными по типуstring
создать тип структуры
z_s_key_values
с полямиkey type string
а такжеvalues type z_t_values
создать тип таблицы
z_t_key_values
с типом строкиz_s_key_values
теперь тип z_t_key_values
соответствует вашему примеру ввода: это таблица строк, каждая строка содержит один ключ и таблицу значений