Excel Exporter: Let’s first discuss why do we need this add on?
- Exporting the screen data is a frequent task required in most of the applications. There are several helper technologies such as POI which help us in bringing the Export feature in place but a developer needs to take it up every time he wants to implement.
- Vaadin providing so many components for representation of data such as Table, Tree Table and Grid, which again raises a need for a utility that is easy and configurable to be used with varied component without the pain of writing the logic to generate the Excel.
- A consistent excel format throughout the application which would enhance user experience.
- Can be integrated with any Vaadin application with just few lines of configuration code.
Now Let’s discuss what this add on does?
This add-on utility takes various components like the Tree Table, Grid and Table as inputs and directly generates an excel in the required formats such as .XLS or .XLSX.
It is highly configurable and provides configuration at three levels namely File Level, Sheet Level, Component Level.
For each file you can configure
- List of Sheets
- Export File Name
- Generated By
- Export Type
- Export Extension
For each sheet you can configure
- Sheet Name
- Report Title Row
- Generated By Row
- List of Components inside the sheet
- Field Group - for showing filters selected on the screen for the selected data
- Additional Header Info - HashMap for custom data
- Date Format
- Number Formats
- XSSFCellStyle for each content section of the screen
Note that the Number formats by itself manages the thousand seperator and decimal point handling for different locales. For Eg: For English the decimal point is (.) and thousand seperator is (,), but for German locale it is the reverse. But the code handles it by its own.
For each component you can configure
- Tree table or Grid or Table
- Visible properties
- Properties requiring date formatting
- Properties requiring Float formatting
- Properties requiring Integer formatting
- Column Header Texts
- Component Header and Content Styles
- Column Freeze and Header Freeze feature
- Provide Column Formatters. Use built in Suffix, Prefix formatters.
- Multiple Header Rows
- Multiple Footer Rows
However, if none of these are specified, it would generate the Excel with default values and styles.
What dependencies are required?
JDK 1.7 or above
POI 3.9
POI-OOXML 3.9
Apache Commons IO library (Commons IO Overview – Apache Commons IO) v2.2
net.karneim.pojobuilder 3.4.0 and above
Who developed it?
Kartik Suba @ Direction Software Solutions, India.
For Client: Bonprix Handelsgesellschaft mbH
Contact on Skype @ k.suba@direction.biz or kartik.suba for quick assistance.
Are there any Future Up gradation Plans?
- Specifying Excel Column types as Date, Number sustaining their formatting
- Specifying a row header which can allow horizontal data as well.
- Export of selected records wherever applicable
- Legend for better understanding