Условные стили даты «Последняя неделя» в отчетах Jasper - PullRequest
0 голосов
/ 27 октября 2011

Я пытаюсь создать стиль, который выделит жирным шрифтом даты последней недели.Я только смог заставить его работать, указав явную дату, как показано ниже.Я хотел бы иметь динамическую «последнюю неделю», основанную на текущей дате.

<style name="Date_Bold" isBold="false">    
    <conditionalStyle>
       <conditionExpression><![CDATA[$F{$F{account_date}.toString() > '2011-10-17 00:00:00']]></conditionExpression>
       <style isBold="true"/>
    </conditionalStyle>
</style>

1 Ответ

0 голосов
/ 27 октября 2011

Вы можете попробовать это выражение, чтобы получить 'прошлую неделю' (сегодня минус семь дней)
<![CDATA[new Date(System.currentTimeMillis() - (7 * 1000 * 60 * 60 * 24))]]>

Вы также можете увидеть эту ссылку для лучшего понимания этого решения.

Вы можете попытаться получить дату через SQL query и поместить значение результата в новое поле Date.
Это было бы что-то вроде этого для Oracle:
 SELECT account_date, sysdate-7 as last_week, ... FROM table ...

Было бы что-то вроде этого для MS SQL:

SELECT account_date, (GETDATE() - 1) as last_week , ... FROM table ...

Другой способ передачи даты из кода через parameter.

Или вы можете попробовать импортировать, например, библиотеку Joda . Здесь - это образец скрипта с использованием.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...