How to create master report
ResourceManager manager = new ResourceManager();
manager.registerDefaults();
Resource res = manager.createDirectly("res://reportTemplates/"+ templateFileName, MasterReport.class);
MasterReport report = (MasterReport) res.getResource();
How to set Resource bundle
Locale locale = new Locale(client.language, client.country);
DefaultResourceBundleFactory bundle = new DefaultResourceBundleFactory(locale);
report.setResourceBundleFactory(bundle);
public class DefaultResourceBundleFactory implements ResourceBundleFactory {
private Locale locale;
public DefaultResourceBundleFactory(Locale locale) {
this.locale = locale;
}
@Override
public Locale getLocale() {
return locale;
}
@Override
public ResourceBundle getResourceBundle(String key) {
return ResourceBundle.getBundle("messages", locale);
}
@Override
public TimeZone getTimeZone() {
return TimeZone.getDefault();
}
}
import org.pentaho.reporting.engine.classic.core.modules.misc.datafactory.sql.SQLReportDataFactory;
SQLReportDataFactory dataFactory = new SQLReportDataFactory(dbConnection);
dataFactory.setQuery("query", query());
report.setDataFactory(dataFactory);
report.setQuery("query");
How to show date and time the report gets generated
Define a message-field.
Type:message. Value: ${report.date, date, dd MM yyyy @ hh:mm}
No comments:
Post a Comment