Я пытался добавить столбец «Открытые дни» и «Просроченные дни» в расширенный шаблон PDF для выписок в NetSuite.Однако я продолжаю сталкиваться с проблемами при обработке значений дат, полученных из записей NetSuite.Попытки манипулировать значениями даты продолжают приводить к неопределенным ошибкам.Я немного сбит с толку относительно того, могу ли я даже заставить эту работу сейчас.
Например, если я применяю следующее к шаблону, он работает для форматирования любых значений даты и даты / времени, введенных вшаблон:
<#setting date_format="dd-MM-yyyy">
<#setting datetime_format="dd-MM-yyyy hh:mm a">
Однако, если я пытаюсь работать со значениями как объекты даты / даты и времени, это приводит к ошибкам.Так что попытка сделать что-то вроде следующего не удалась:
<#assign d2 = line.duedate?long>
Пока это работает:
<#assign d1 = .now?date?long>
Также, пытаясь предположить, что значение на самом деле является строкой, переданной и преобразованной вdate / datetime также не работает.Выполнение следующих действий приводит к ошибке:
<#assign d2 = line.datecol?date("M/d/yyyy")> // format used by default in NetSuite date output
Другая вещь, которая не имела смысла, - это проверка по дате исполнения и отображение значения только при наличии даты исполнения (защита от отображения данных для записей выписки, которые былина самом деле не счета).Таким образом, даже если срок исполнения был установлен и отображен в заполненном PDF, следующее не смогло показать правильные результаты:
<#if line.duedate?has_content>${daysoverdue}<#else>empty</#if>
Вместо того, чтобы показывать, что было бы просроченным значением (в настоящее время просто статическое значениедля тестирования) будет отображаться «пусто».Независимо от того, было ли доступно значение срока оплаты, весь столбец для каждой строки отображался бы так, как если бы поле было пустым.Так что, я не знаю, связано это или нет.
Я долго этим занимался, и до сих пор не нашел ничего полезного в поиске.