Your points make sense. We will give details to differentiate b/w shift and currentRegion tags. Also, will give details on optimization process how adjacent ranges behave during expansion. We will get back to you soon.
@sagaofsilence.dev
1,shift_Marker.zip (20.0 KB)
It’s result of shift smart marker because we can not know whether adjacent tables are independent.
2,
As you hope the tables in a row are independent, we can not insert same rows for different tables as the record count of the data source is different.
In the output for shift tag( CELLSJAVA46356_1.zip) is like:
{40F7A16E-EDDF-4F9C-AD3D-3EB0AA1CD631}.png (36.5 KB)
Where as output for shift tag( shift_Marker.zip) is like:
{FA0A6CD1-1E64-453A-95C7-E3E6D568F7A9}.png (29.7 KB)
The count of directors is now 1 (left hand side tables) and the tables are on same rows.
What is changed since then?
CELLSJAVA46356_1.xlsx is generated by the following codes:
public void CELLSJAVA46356_1()
{
WorkbookDesigner designer = new WorkbookDesigner();
Workbook workbook = new Workbook(Constants.sourcePath + @"SmartMarker/CELLSJAVA46356_1.xlsx");
designer.SetJsonDataSource("RootData", File.ReadAllText(Constants.sourcePath + @"SmartMarker/CELLSJAVA46356.json"));
designer.Workbook = workbook;
designer.LineByLine = false;
// designer.Process(true);
Worksheet sheet = workbook.Worksheets["Template17"];
List<Aspose.Cells.Range> lines = new List<Aspose.Cells.Range>();
lines.Add(workbook.Worksheets.GetRangeByName("Template17!DEMO_1"));
lines.Add(workbook.Worksheets.GetRangeByName("Template17!DEMO_2"));
foreach (Aspose.Cells.Range range in lines)
{
String originalRangeName = range.Name;
range.Name = ("_CellsSmartMarkers");
designer.Process(range, true);
range.Name = (originalRangeName);
//break;
}
designer.LineByLine = true;
designer.Process(true);
workbook.Save(Constants.destPath + @"SmartMarker/CELLSJAVA46356_1.xlsx");
}
CELLSJAVA46356_1.xlsx is generated by range and range in the first row.
Because different rows are inserted for the two ranges, so other range are not in the same line again, then List 3 and List4 are handled separately because they are not in the same line.
The issues you have found earlier (filed as CELLSJAVA-46389) have been fixed in Aspose.Cells for Java 25.6.
This is to inform you that your issue (logged earlier as “CELLSJAVA-46356”) has been resolved. We have now supported range parameter for smart markers to check which smart marker should be processed together. The fix/enhancement will be included in an upcoming release (Aspose.Cells v25.8) that we plan to release in the first half of August 2025. You will be notified when the next version is released.
Thank you. We will try to use it as soon as it becomes available.
@sagaofsilence.dev
Thank you for your feedback. You are welcome. We will notify you promptly once the version v25.8 is released.
The issues you have found earlier (filed as CELLSJAVA-46356) have been fixed in Aspose.Cells for Java 25.8.