В XDocReport, как обрабатывать нулевое значение?

Есть ли способ обработки нулевого значения для поля в XDocReport? или мне нужно манипулировать этим самостоятельно? пример:

if (thisVar == null)
  context.put("sampleText", "");
else
  context.put("sampleText", thisVar);

или есть вариант в docx quick parts?

Я нашел эту строку в сообщении об ошибке XDocReport. Однако я не мог понять, где применить это, в шаблоне или в коде.

Совет: если известно, что ошибочное выражение юридически ссылается на что-то, что иногда является нулевым или отсутствует, либо укажите значение по умолчанию, например myOptionalVar! MyDefault, либо используйте [#if myOptionalVar??]when-present[#else]when-missing[/#если]. (Они охватывают только последний шаг выражения; для охвата всего выражения используйте круглые скобки: (myOptionalVar.foo)! MyDefault, (myOptionalVar.foo)??

1 ответ

Решение

В DOCX, добавить ?if_exists на имя поля

"${Tx.amount? If_exists}"

Вы также можете добавить !

"${Tx.amount!}"

Пожалуйста, обратитесь к этой ссылке для тех, кто использует freemarker. Как проверить, существует ли переменная в шаблоне FreeMarker?

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