Как передавать переменные между шагами внутри преобразования в Pentaho

Я хочу разработать задание ETL как прикрепленное.  введите описание изображения здесь

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

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

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

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

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

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

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

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


person Vicky    schedule 18.09.2018    source источник
comment
@Kamil G .: Не могли бы вы проверить мой новый вопрос. Я использовал Add Constant Values ​​после шага 2 и удалил шаг 1 ... и он работал так, как ожидалось ... однако я не могу установитьVariable сгенерированной Variable_4 внутри моего шага Javascript ...   -  person Vicky    schedule 18.09.2018
comment
Я ответил на ваш последний вопрос.   -  person Kamil Gosciminski    schedule 18.09.2018
comment
@KamilG .: Есть еще одна проблема ... поставил ее в комментариях к тому же вопросу .. пожалуйста, проверьте, когда сможете .. спасибо!   -  person Vicky    schedule 18.09.2018


Ответы (1)


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

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

Однако я до сих пор не могу разобраться в вопросе 2).

person Vicky    schedule 19.09.2018