【问题标题】:jasper report timezone issue in JS 5.1jasper 报告 JS 5.1 中的时区问题
【发布时间】:2013-07-01 15:06:21
【问题描述】:

在我的 jasperReport 中,我有一个 java.sql.Timestamp 数据类型的输入控件。 现在使用此输入控件,用户可以在运行报表之前选择日期。现在,当我在报表中复制 datepicker(输入控件)的下划线参数时,我会在报表中获得用户选择的确切时间。

我的要求是格式化用户选择的日期。所以我写了一个简单的函数,比如

public static String convertDateToString(java.sql.Timestamp inputDate)
{
    System.out.println("The input Date is :: "+inputDate);
    String s = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss.S").format(inputDate);
    System.out.println("The output Date is :: "+s);
    return s;
}

现在,当浏览器和 jasperserver 处于同一时区时,这可以正常工作,但是当 服务器在不同时区,输入日期与打印日期不同

【问题讨论】:

标签: java jasper-reports jasperserver


【解决方案1】:

你可以试试我在 iReport 中使用的这个。

1:-Create a Parameter “DateFormatter” with 
   class="java.text.DateFormat" and set default value

  default value =[$P{REPORT_FORMAT_FACTORY}.createDateFormat("yyyy-MM-dd 
    HH:mm",$P{REPORT_LOCALE}, java.util.TimeZone.getTimeZone("IST"))

2:- 文本字段表达式:-

$F{ImportDate}== null ? "N/A" : $P{DateFormatter}.format($F{ImportDate})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-06-11
    • 2020-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-24
    • 2019-05-01
    相关资源
    最近更新 更多