обработка нескольких файлов в службах данных бизнес-объектов

Я новичок в службах данных Business Objects.

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

Я попробовал ниже код, чтобы проверить, существует ли файл, поскольку встроенная функция File_Exists не может проверить файл на основе подстановочных символов.

*$FILEEXISTSFLAG= exec('/bin/ksh',' "ls xxxxxx/Platform.csv',8);*

Мое намерение основано на значении, присвоенном $FILEEXISTSFLAG из приведенного выше кода, я буду решать, выполнять ли поток данных или нет (если $FILEEXISTSFLAG имеет значение null, в противном случае ничего не делать, иначе выполнять поток данных), но его получение ниже вывода.

*ls: нет доступа к /xxxxxx/Платформа.csv: такого файла нет*

Есть ли другой способ добиться этого?


person ppeddi    schedule 29.08.2016    source источник


Ответы (1)


Я смог решить вышеуказанную проблему с помощью функции индекса.

$FILEEXISTSFLAG содержит значение типа «ls: невозможно получить доступ к платформе: нет такого файла или каталога». Итак, я использовал функцию индекса, как показано ниже. Поэтому, если вывод не равен нулю для функции индекса ниже, он выполнит поток данных, в противном случае он ничего не сделает.

index($FILEEXISTSFLAG, 'Нет такого файла',1)

Спасибо, Фани.

person ppeddi    schedule 30.08.2016