Pentaho kittle - пропускать файлы в корне и перемещать / обрабатывать файлы только в подпапке

Мне нужно скопировать файлы из папок User1 и user2 в папку «обработки», но мне нужно пропустить файлы, которые могут быть сброшены пользователем непосредственно в корневую папку.

-Root + User1 + User2

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

Спасибо, Рахул


person Rahul Nadkarni    schedule 30.10.2015    source источник


Ответы (1)


Вы можете сделать это, загрузив список файлов результатов из преобразования, а затем используя шаг Process result filenames. Работа очень простая:

Файлы результатов обработки

Преобразование - вот где происходит логика. Добавьте два Get File Names шага: один для файлов user1 и user2, а второй - для файлов исключений (корневых). При настройке этих обязательно перейдите на вкладку «Фильтры» и снимите флажок «Добавить имена файлов в результат». Прочтите каталог исключений с Stream lookup. Сравните поле short_filename на обоих этапах ввода и укажите «существует» в качестве поля поиска. Это должно выглядеть примерно так:

Получить файлы с исключениями

Шаг Filter Rows объединяет все файлы, которые существуют в каталоге исключений, а шаг Set files in result помещает только те, которые не существуют в каталоге исключений, в результаты файла задания. Обязательно используйте здесь поле 'filename', а не 'short_filename`.

Затем в задании Process result filenames можно настроить на то, что вы хотите с файлами (перемещение / копирование / удаление и т. Д.).

person Brian.D.Myers    schedule 30.10.2015
comment
Привет! Не могли бы вы вставить изображения для вышеперечисленного, поскольку я их не вижу? Я постараюсь создать трансформацию на основе вышеизложенного. Спасибо за предложенное решение. - person Rahul Nadkarni; 02.11.2015