Прочитать все CSV-файлы в каталоге во внутреннюю таблицу

У меня есть параметр, и на F4 мы можем выбрать каталог. Я пытаюсь понять, как выбрать папку и прочитать содержимое всех файлов в ней (файлы в .CSV) во внутреннюю таблицу. Думаю, мне нужно использовать функцию TMP_GUI_DIRECTORY_LIST_FILES. Надеюсь, я объясняюсь. Спасибо.


person Eva Dias    schedule 11.10.2012    source источник
comment
Укажите, хотите ли вы читать файлы с сервера приложений или из внешнего интерфейса (GUI).   -  person vwegert    schedule 11.10.2012
comment
Моя ошибка ... забыл это написать. Это с сервера приложений. Спасибо   -  person Eva Dias    schedule 11.10.2012


Ответы (2)


Вам придется сделать это вручную: сначала прочтите список файлов, просмотрите каждый файл и обработать его содержимое. Могут быть некоторые странные функциональные модули для чтения файлов CSV, но имейте в виду, что многие из них сломаны - например, они просто обрезают строки, превышающие определенную длину. Поэтому я не буду рекомендовать ни один из них - лично я бы реализовал часть импорта CSV самостоятельно.

person vwegert    schedule 11.10.2012
comment
Спасибо. Я думал об этом ... Посмотрю, смогу ли я что-нибудь продвинуть с вашим постом. Еще раз большое спасибо. - person Eva Dias; 11.10.2012

Если у вас есть доступ к транзакции KCLJ в вашей системе, вы можете проанализировать ее код. У этого инструмента есть возможность интерпретировать CSV файлы, чтобы вы могли найти интересные функциональные модули, которые могут помочь вам в ваших задачах.

введите описание изображения здесь

РЕДАКТИРОВАТЬ: Я посмотрел на это очень быстро, и фрагмент кода, который вы могли бы повторно использовать, - это reconvert_format из include RKCDFILEINCFOR. Пример вызова находится, начиная со строки 128 в том же include.

person Jagger    schedule 11.10.2012
comment
Спасибо, я изучу это ... Я считаю, что у меня есть доступ к этой транзакции, и я исследую этот функциональный модуль. Еще раз спасибо. - person Eva Dias; 12.10.2012
comment
Здесь практически нет ничего, что можно было бы использовать повторно в том смысле, в каком оно есть. Придется его копировать и массово модифицировать - ИМХО, в этом нет смысла. - person vwegert; 12.10.2012
comment
Не изучал подробно, но в данном случае я думал о PERFORM IN PROGRAM. Если это невозможно сделать, вам придется скопировать и вставить код с некоторыми корректировками. Все же лучше, чем изобретать колесо. Если у меня будет время, я углублюсь в это и подготовлю инкапсулированную версию. - person Jagger; 12.10.2012