LightCellsDetailsDataProvider implementation

Hi,

I am able to successfully implement LightCells for my project. However, I have a page with Page Header (bottom) border that runs across 100 columns (say). After I handover the same worksheet to LightCellsDetailsDataProvider implementation, the data is filled in correctly. But, the Page Header (bottom) border is truncated to only grid length (i.e the header (bottom) border length is cut to total width of the grid displayed instead of original width of the Page Header (bottom) border).

Hope, I explained the issue correctly.

Please let me know if I am missing any config here ?

Thanks,
Balakumar

@BalakumarSeethapathy,

Thanks for providing us some details.

Please create a simple Java program (runnable) with its interface implementations to reproduce the issue on our end, we will check it soon. Also provide template file to evaluate your issue.

Hi,

The line number 312-313 in AsposeCellsFixMain.java class adds a thick border after the page header that spans across 1500 columns.

Then we handover the worksheet to LighCellsAsposeCellsFix class to place the grid headers. This time, the page header bottom border is truncated to the grid width.

I have attached the sample code and have used JAVA 1.8 and ASPOSE CELLS 18.4.5 version.Aspose LightCells.zip (5.2 KB)

Thanks,
Balakumar

@BalakumarSeethapathy,

Thanks for providing us main JAVA class and interface.

I have evaluated your sample JAVA program a bit. I found the program has external references/dependencies. We appreciate if you could remove “org.json” dependencies and re-create the sample to share us again to reproduce the issue on our end. This will help us really to evaluate your issue quickly and efficiently and we may log a ticket for it which can be figured out soon.

Hi,

Sorry about that, I have attached the code without external dependencies and imports.

The line number 305-306 of AsposeCellsFixMain.java file has code which gives bottom border to Page Header.

Let me know if you need more information from my side.

Thanks,
BAspose LightCells - 1.zip (5.2 KB)
alakumar

@BalakumarSeethapathy,

Thanks for the updated Java program.

After an initial test, I am able to observe the issue as you mentioned by using your sample code. I also found you might be mixing the things to some extent with LightCells APIs. You first tries to add a thick border after the page header that spans across 1500 columns. But then you handover the worksheet to LighCellsAsposeCellsFix class to place the grid headers (I checked the colCount which has 14 value when instantiating the implementation class). I found the page header bottom border is truncated to the grid width only. We have to evaluate your issue thoroughly if your code needs some tweaks. I have logged a ticket with an id “CELLSJAVA-42640” We will look into it soon.

Once we have an update on it, we will let you know here.

Hi,

Please let me know from where I can access the idea/code solution for the same issue
CELLSJAVA-42640

Thanks,
Balakumar

@BalakumarSeethapathy,

We evaluated your issue further.
We found:
In LighCellsAposeCellsFix.java:
i.e.,
public int nextCell() {

		if (this.colIndex == -1) {
			this.colIndex = this.colIndex + this.leftMarginValue + 1;
			return this.colIndex;
		} else if (this.colIndex < this.maxColIndex) {
			return ++this.colIndex;
		}		
		return -1;
	}

this denotes that cells after maxColIndex will be skipped (won’t be saved to the resultant file). To output all cells with the page header border to the resultant file, you should change the implementation of nextCell():
e.g

  	...
		} else if (this.colIndex < (rowIndex == 0 ? 1500 : this.maxColIndex)) {
		...

Hope, this helps a bit.