Прочитав ответы Криса Карртерса и Томдемайта, я бы сказал:
1) Используйте RZL_READ_DIR_LOCAL, если вам нужен простой список имен файлов.
2) EPS_GET_DIRECTORY_LISTING более мощный - он может также перечислить подкаталоги.
Спасибо вам обоим!
С уважением Ники Галанов
Вызовите функцию RZL_READ_DIR_LOCAL:
FUNCTION RZL_READ_DIR_LOCAL.
*"----------------------------------------------------------------------
*"Lokale Schnittstelle:
*" IMPORTING
*" NAME LIKE SALFILE-LONGNAME
*" TABLES
*" FILE_TBL STRUCTURE SALFLDIR
*" EXCEPTIONS
*" ARGUMENT_ERROR
*" NOT_FOUND
*"----------------------------------------------------------------------
Поместите путь в параметр импорта ИМЕНИ и затем прочитайте список каталогов из FILE_TBL после того, как он возвратится.
RZL_READ_DIR_LOCAL может обработать нормальные локальные пути, а также пути UNC.
Единственный недостаток, он только предоставляет Вам доступ к первым 32 символам каждого имени файла. Однако можно легко создать новую функцию на основе кода RZL_READ_DIR_LOCAL и изменить способ, которым произвела программа C, читается, поскольку первые 187 символов каждого имени файла на самом деле доступны.
ответ называет функциональный модуль EPS_GET_DIRECTORY_LISTING. DIR_NAME-> Название каталога FILE_MASK-> Pass '*' для получения всех файлов.
Примечание: Это не имеет дело с действительно большими именами файлов (80 символов +), это усекает имя.
Смотрите на транзакцию исходный код AL11: форма RSWATCH0 fill_file_list
Там можно получить всю информацию о файлах.
Надеюсь, это поможет!