Я полагаю, вы ищете что-то похожее на следующее:
Первая часть задания состоит из:
tFileInputJson (или в вашем случае tHttpRequest1) -> tSetGlobalVar -> tExtractJsonFields -> tJavaRow
tHttpRequest1 будет получать ответ JSON (может быть отсортирован или нет)
tsetGlobalV будет сохранять Jsetглобальная переменная, которая будет использоваться во второй части.
tExtractJson будет извлекать DocumentDate из каждой записи массива JSON.
tJavaRow будет содержать логику Java для сравнения дат из разных документов и установкимаксимум один в глобальной переменной:
String maxDate = (String) globalMap.get("MaxDate");
if (maxDate != null && !maxDate.trim().isEmpty() )
//Some Logic here to take the max i.e. Convert it to proper date format and compare them.
globalMap.put("MaxDate", *comparedMaxDate*);
else
globalMap.put("MaxDate", row4.DOCDATE);
Как только это будет выполнено, в нашей глобальной переменной у нас будет исходный ответ JSON и максимальная / недавняя дата.
Вторая часть, которая будет запущенаКак только первая часть (SubJob) будет завершена, она будет состоять из:
tJava -> tExtractJsonFields -> tMap -> tFileFetch
tJava простоb сообщение JSON и MaxDate из глобальных переменных, установленных в первой части.
tExtractJsonFields извлечет documentLink и documentDate для каждой записи массива и передает их по максимальной дате в компонент tMap.
Компонент tMap просто выполнит сравнение documentDate и максимальной даты и проверит, равен ли он передаче documentLink в tFileFetch, иначе он проигнорирует его.
Это позволяет вам отправлять только ссылки documentLink с самой последней датой.
Надеюсь, это поможет, и это достаточно ясно.