Light Cells API: processing sheets in specific order

Hi,

We’re using Aspose Cells for Java, version 20.2.

For processing large workbooks, the “Light” API works quite well.

For some use cases however, we need to process sheet B before processing sheet A. At the moment it is not possible to control this, as Aspose will call back into our provided LightCellsDataHandler implementation in (what I assume to be) the workbook order of the sheets. In our use case, the processing of sheet A depends on state resulting from processing sheet B. As such, we are forced to use the full (non-light) model, which imposes additional performance implications, mainly total retained memory.

There seems to be nothing inherent in the Excel workbook formats (or the underlying ZIP file format for XSLX/XLSM/XLSB) to prevent processing sheets in a specific order.

If there is a feature in the “Light Cells” API controlling this aspect of workbook processing, please let me know. Otherwise, I’d like to raise this as an improvement request, since if would allow us to improve performance for many of our Aspose Cells use cases.

Thanks in advance,
Taras

@TarasTielkes,
Thank you for your query. We are analysing your requirement and will share our feedback soon.

@TarasTielkes,
Thank you for your query.

Could you please share a compilable complete solution (simplified one) which can be used to reproduce the issue here along with the template file, output file and expected output created by MS Excel (if possible). We will reproduce the issue here and provide assistance accordingly.

@TarasTielkes,

For your requirements, we think you want to specify the order of sheets to be loaded while loading a template file with LightCells API. Please confirm if it is true. After your confirmation, we will create one ticket for this new feature and we will investigate it later on. One more thing, for XLSB file, we do not support LightCells yet. So, for such file format the loading process always works in “normal” mode.

Hi @Amjad_Sahi,

Yes, we want to specify the order of sheets to process, while still having the benefits of smaller total memory consumption.

I was not aware that for XLSB LightCells is not supported. Are you planning to implement this?

Thanks in advance,
Taras

@TarasTielkes,

Thanks for your confirmation.

Please notice, we have log a ticket with an id “CELLSJAVA-43137” for your requirements. We will look into it soon. Once we have an update on it, we will let you know.

No we do not have plans to support light weight mode for XLSB file format yet. Once we have it on road-map, we will let you know.

@TarasTielkes,
Please give a try to the following fix and share your feedback.
aspose-cells-20.2.6-java.zip (7.0 MB)

From v20.2.6, we have provided new method ass follows:

LoadFilter.SheetsInLoadingOrder

User may override this property to specify the order of worksheets to be loaded.

The issues you have found earlier (filed as CELLSJAVA-43137) have been fixed in Aspose.Cells for Java v20.3. This message was posted using Bugs notification tool by ahsaniqbalsidiqui