TALEND установить переменную контекста в зависимости от TalendDate

Я хочу установить контекстную переменную в зависимости от подпрограммы TalendDate на вкладке "Значение как таблица", которая позволила бы мне выбрать вчерашний день: TalendDate.formatDate("гггг-ММ-дд", TalendDate.addDate(TalendDate.getCurrentDate) (),-1,"дд"))

Это не работает, у меня нет никаких возвратов, когда я включаю в выбор как дату ('"+context.date+"').

Не могли бы вы сказать мне, что мне не хватает? Я был бы очень признателен, если бы вы могли помочь мне с этим.

2 ответа

Решение

Вы должны создать глобальную переменную, а затем в tJava присвоить ей значение.

Или, в соответствии с вашей текущей ситуацией, в tJava вставьте следующее:

context.date = TalendDate.formatDate ("гггг-ММ-дд", TalendDate.addDate(TalendDate.getCurrentDate(),-1,"дд"));

Тогда вы можете использовать вашу переменную. Это будет не тип даты Java, а строка.

Вы можете использовать компонент tContextLoad для создания пар значений ключей и контекстов, которые будут использоваться в вашей работе или дочерних работах.

В вашем случае вы захотите использовать компонент tFixedFlowInput, чтобы указать, что вы хотите (или это может быть любой ввод на самом деле, но это просто способ жесткого кодирования его непосредственно к заданию без необходимости использования внешнего ресурса), а затем связать его с Компонент tContextLoad со схемой ключа и значения примерно так:

Определение контекстных переменных во время выполнения

Вы захотите использовать свой оригинальный фрагмент кода в качестве значения в вашем компоненте tFixedFlowInput:

Конфигурация tFixedFlowInput

На первом скриншоте выше я также добавил компонент tContextDump и подключил его к tLogRow, чтобы вы могли видеть доступные контексты для задания:

Вывод tContextDump

Другие вопросы по тегам