|Summary:||[PATCH] Added implementation for collapsing rows|
|Component:||SXSSF||Assignee:||POI Developers List <dev>|
SVN Diff file
SVN Diff File
SVN Diff File
Description Krishna 2013-08-06 14:34:56 UTC
Created attachment 30682 [details] SVN Diff file Added implementation for collapsing rows in the API setRowGroupCollapsed in the class SXSSFSheet. Only collapsing part is implemented. It throws RuntimeException for expanding rows.
Comment 1 Krishna 2013-08-12 13:39:40 UTC
Hi, Do you need any extra information to take this forward ? Regards, Krishna.
Comment 2 Dominik Stadler 2013-09-29 20:06:54 UTC
Hi, Thanks for the patch, it would be nice to also have unit tests added as part of the patch, can you update your diff with some which verify the added APIs?
Comment 4 Krishna 2013-10-10 09:47:46 UTC
Hi, I have added a Test case and an example to test the new APIs. Let me know if you need anything else. Regards, Krishna.
Comment 5 Dominik Stadler 2013-10-14 20:16:49 UTC
Thanks, I have started to apply this locally to get some testing done before submitting. I saw that the error message for rows without group are ugly and don't give the developer a way to know what the actual problem is. Exception in thread "main" java.lang.IllegalArgumentException: Invalid row number (-1) outside allowable range (0..1048575) at org.apache.poi.xssf.streaming.SXSSFSheet.createRow(SXSSFSheet.java:91) at org.apache.poi.xssf.streaming.SXSSFSheet.collapseRow(SXSSFSheet.java:1154) at org.apache.poi.xssf.streaming.SXSSFSheet.setRowGroupCollapsed(SXSSFSheet.java:1133) at org.apache.poi.xssf.streaming.examples.Outlining.collapseRow(Outlining.java:44) at org.apache.poi.xssf.streaming.examples.Outlining.main(Outlining.java:29) This is obviously a side-effect of trying to create a row, why is this row-creating done anyway in this case? Any way we can improve error checking here and throw an error message with better indication of what the problem is instead of this trying to create a row at an invalid location?
Comment 6 Krishna 2013-10-18 10:59:53 UTC
Created attachment 30942 [details] SVN Diff File Thanks for the feedback. I have added few error checks to not allow row group collapsing if the row is not part of the grouping. Also, fixed the code to handle collapsing of the row group starting at row 1. Regards, Krishna.