You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ye...@apache.org on 2012/02/29 11:54:50 UTC

svn commit: r1295063 - /poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java

Author: yegor
Date: Wed Feb 29 10:54:50 2012
New Revision: 1295063

URL: http://svn.apache.org/viewvc?rev=1295063&view=rev
Log:
follow on to r1295058

Modified:
    poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java

Modified: poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java?rev=1295063&r1=1295062&r2=1295063&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java Wed Feb 29 10:54:50 2012
@@ -1033,6 +1033,37 @@ public class SXSSFSheet implements Sheet
     /**
      * Tie a range of rows together so that they can be collapsed or expanded
      *
+     * <p>
+     *     Please note the rows being grouped <em>must</em> be in the current window,
+     *     if the rows are already flushed then groupRow has no effect.
+     * </p>
+     * <p>
+     *      Correct code:
+     *      <pre><code>
+     *       Workbook wb = new SXSSFWorkbook(100);  // keep 100 rows in memory
+     *       Sheet sh = wb.createSheet();
+     *       for (int rownum = 0; rownum &lt; 1000; rownum++) {
+     *           Row row = sh.createRow(rownum);
+     *           if(rownum == 200)  {
+     *               sh.groupRow(100, 200);
+     *           }
+     *       }
+     *
+     *      </code></pre>
+     * </p>
+     * <p>
+     *      Incorrect code:
+     *      <pre><code>
+     *       Workbook wb = new SXSSFWorkbook(100);  // keep 100 rows in memory
+     *       Sheet sh = wb.createSheet();
+     *       for (int rownum = 0; rownum &lt; 1000; rownum++) {
+     *           Row row = sh.createRow(rownum);
+     *       }
+     *       sh.groupRow(100, 200); // the rows in the range [100, 200] are already flushed and groupRows has no effect
+     *
+     *      </code></pre>
+     * </p>
+     *
      * @param fromRow   start row (0-based)
      * @param toRow     end row (0-based)
      */
@@ -1049,7 +1080,7 @@ public class SXSSFSheet implements Sheet
         CTSheetFormatPr pr = ct.isSetSheetFormatPr() ?
                 ct.getSheetFormatPr() :
                 ct.addNewSheetFormatPr();
-        pr.setOutlineLevelRow((short)outlineLevelRow);
+        if(outlineLevelRow > 0) pr.setOutlineLevelRow((short)outlineLevelRow);
     }
 
     /**



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org