PDI: вывод только при отсутствии ошибок - PullRequest
0 голосов
/ 08 ноября 2018

Я хочу преобразовать CSV-файл в XML-файл. В Преобразовании у меня также есть небольшая проверка данных, например, длина строки должна быть <50. Таким образом, у меня есть шаг ввода в текстовый файл> модифицированный шаг JavaScript с двумя переходами на шаг отмены (для перехода обработки ошибок) и вывод XML Шаг. Моя цель - создать XML-файл только в том случае, если нет ошибок. На данный момент он создает XML с 2 «строками» и прерывает работу, потому что в строке 3 в csv очень длинная строка. Я думаю, что это очень простой сценарий, но у меня нет подхода к его решению. Пожалуйста, может кто-нибудь дать мне совет. Большое спасибо. Marko

1 Ответ

0 голосов
/ 08 ноября 2018

РЕДАКТИРОВАНИЕ:

Кажется, что ваш поток действительно останавливает строки длиннее 50 символов, если он прерывает на полпути, но, поскольку Pentaho работает в параллельном режиме, если первая строка действительна и достигает шага вывода, вывод начнет запись, что вы и хотите блокировать этот шаг, пока все строки не будут обработаны предыдущим шагом.

Просто добавьте «Шаг блокировки» (не путайте блок с этим этапом до завершения шагов, вы хотите Шаг блокировки ) перед вашим выходным шагом. Ременбер, чтобы проверить 'Пропустить все строки?' параметр ins этот шаг , он будет эффективно "удерживать" все строки в преобразовании непосредственно перед выводом.

...