2013-10-02 2 views
0

Im пытается пересечь 2 разных CSV-файла, чтобы иметь выходные файлы, указывающие новые, измененные, удаленные и идентичные записи в выходном файле. Im пытается сделать так, как описано здесь http://wiki.pentaho.com/display/EAI/Merge+rows Im, использующий строки слияния (diff), чтобы попытаться достичь этого, но независимо от того, что я пытаюсь его не работать, поскольку ключевые поля im используют только значение строки, которая не обновляет ie идентификатор. Что я пытался сделать, это использовать тот же файл для обоих входов, когда я ничего не меняю, значение флагового поля «идентично» для всех строк, но тогда, если я попытаюсь и модифицировать ОДНО одно значение в ОДНОЙ строке в ОДНОМ из файлов , я все изменил? и, возможно, 3 или 4 одинаковых? Есть идеи, почему это происходит? Я просто не могу понять, спасибо в продвинутом.Pentaho/файлы пересечения

+0

Вы отсортировали вход? Это обычно является источником этой проблемы. Вы должны отсортировать BOTH входные потоки на шаге Merge Rows (Diff) и в том же порядке, с такой же чувствительностью к регистру и т. Д. –

+0

Я не был, я пытаюсь использовать «сортировать строки» сейчас, но im получает ошибку во время слияния; (http://imageshack.us/photo/my-images/268/r2lh.png/ – MikaelMadrid

+1

Убедитесь, что вы сортируете ТОЧНЫЕ одинаковые ключи, по возрастанию/убыванию должны совпадать, и чувствительность к регистру должна совпадать. Также убедитесь, что ключи, которые вы используете в шаге Merge Rows (Diff) ТОЧНО те, которые вы сортируете. –

ответ

0

Объединить строки diff - правильный ответ здесь.

Если вы используете целевую базу данных после diff, вы можете связать ее с «синхронизацией после слияния», но в этом случае выход текстового файла будет выполнен.

Смежные вопросы