Как передать переменные между шагами внутри преобразования в Пентахо - PullRequest
0 голосов
/ 18 сентября 2018

Я хочу создать задание ETL как прикрепленное. enter image description here

Шаг 1 установит две переменные Variable_1 и Variable_2.Я использую шаг Generate Rows для этого, где я определяю обе переменные в Fields.

Шаг 2 будет считывать дату из базы данных через запрос SQL.Я использую Table input для достижения этой цели.И sql как select Variable_3 from table1, который является одним значением.Предварительный просмотр здесь показывает, что значение успешно считывается из базы данных.

Я хочу шаг 3 как Modified Java Script Value, где я хочу использовать эти 3 переменные и выполнить некоторые вычисления для получения выходной переменной Variable_4, которую я затем хочу передатьк будущему преобразованию для использования там.

Я новичок в Pentaho и у меня есть следующие вопросы:

1) Когда я соединяю Шаг 2 (шаг базы данных) с Шагом 3 (шаг Javascript), я получаю диалоговое окно с предупреждением:

Мы обнаружили строки с различным количеством полей, это не допускается при преобразовании.Первая строка содержала 2 поля, а другая содержала 1

Что означает это предупреждение?Что я делаю неправильно?Как я могу передать 2 переменные из 1-го шага и 1 из 2-го шага в мой шаг JavaScript?

2) Как установить вычисленную переменную_4 в моем шаге JavaScript для дальнейшего использования в других преобразованиях?Определить параметр на Transformation 1 с именем Variable_4 и установить его из JavaScript?Если да, то как?

1 Ответ

0 голосов
/ 19 сентября 2018

Я решил эту проблему, удалив первый шаг (сгенерировать строки, создающие две переменные) и вставил шаг «Добавить константы» после шага табличного представления, чтобы добавить переменную 1 и переменную 2 вдоль боковой переменной 3, переданной ей из шага табличного представления.

Наконец, у меня есть все 3 мои переменные, доступные в моем шаге Javascript.

Я все еще не смог выяснить Вопрос 2).

...