0

Я создаю на сервере pentaho форму с использованием CDE. Эта форма представляет собой таблицу с некоторыми полями ввода. При нажатии кнопки создается массив, который отправляется как значение параметра. В таблице db у меня есть 3 столбца: альфа, бета, гамма.CDA чайник над чайникомTransFromFile diffren поведение против Pentaho Интеграция данных

//var data = JSON.stringify(array); 
var data = [ 
{"alfa":"some txt","beta":"another text","gamma": 23}, 
{"alfa":"stxt","beta":"anoxt","gamma": 43} 
] 

Я создаю преобразование чайника, которое выполняется, как ожидалось. Эти 2 строки массива вставляются в базу данных, но когда я запускаю одно и то же преобразование котла, используя чайник CDA над kettleTransFromFile в Pentaho, вставлена ​​только первая строка. Это моя трансформация:

enter image description here

  1. Получить Variable: данные (строка)
  2. Modified Java Script Value: data_decode содержит массив со JSon

    уаг data_decode = Eval (данные .нанизывать());

  3. JSON Вход: Альфа - $ .. [0] & alpha;, бета - $ .. [0] & beta;, гамма - $ .. [0] гамма-

  4. tableinsert - вставить в базу данных.

... Из ложки в командной строке все в порядке, но не от Пентахо. Что не так?

Спасибо! Geo


UPDATE

Может быть, это конфигурация промах или ошибка или Feauture, но я не использую этот метод. Я нахожу простой метод: я создаю сценарий для сценариев datasource с простым кодом Java внутри (с использованием beanshell). Теперь это работа, как ожидалось. Я буду перемещать эту форму внутри плагина Sparkl. Спасибо.

Этот вопрос все еще остается открытым, возможно, кто-то хочет попробовать этот подход.

ответ

0

Пожалуйста, используйте правильный JSONPath для устранения побочных эффектов: $.*.alpha