Free Support Forum - aspose.com

Collapsible rows along with Smart markers

PFA sheet with sample expected output and the smart markers. Im struggling to create a template using smart markers for the attached scenario.

Is it possible to add the collapsible rows into the smart marker tags?
And what is the best solution to dealing with the rows inside the group. Is it better to have the entire thing in one datasource or two separate datasources?

Sample.zip (10.7 KB)

@nikhilpinto,

Thanks for the sample file.

I am afraid, currently it is not supported in Smart Markers. But we can look into it and try to support in Smart Markers. I have logged a ticket with an id “CELLSNET-47918” for your issue.

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

@nikhilpinto,

This is to inform you that we have supported your requirements now. We will publish the fix in the next few days after performing QA and incorporating other enhancements and fixes.

Thanks for the update

@nikhilpinto,

Please try the latest fix Aspose.Cells for .NET v21.3.5.
Aspose.Cells21.3.5 For .Net2_AuthenticodeSigned.Zip (5.5 MB)
Aspose.Cells21.3.5 For .Net4.0.Zip (5.5 MB)
Aspose.Cells21.3.5 For .NetStandard20.Zip (5.5 MB)

Please try the latest fix 21.3.5 with attached codes and template file:
e.g.
Sample code:

public void CellsNet47918() {
Workbook workbook = new Workbook(Constants.sourcePath + "CellsNet47918.xlsx");
WorkbookDesigner d = new WorkbookDesigner();
//There is a special named range "_CellsSmartMarkers" in the template file for we have to know which range should be duplicated.
d.LineByLine = false;
d.Workbook = workbook;
d.SetDataSource("teacher", CreateTable1());
d.Process(1, false);
Assert.AreEqual("Students.Name", workbook.Worksheets1.Cells["B9"].StringValue);

workbook.Save(Constants.destPath + "CellsNet47918.xlsx");
}
        private static List<Teacher> CreateTable1()
{
            List<Teacher> teachers = new List<Teacher>();
            Teacher t1 = new Teacher("t1", 45);
            t1.Students.Add(new Person("p1", 10));
            t1.Students.Add(new Person("p2", 11));
            t1.Students.Add(new Person("p3", 12));
            Teacher t2 = new Teacher("t2", 45);
            t2.Students.Add(new Person("p1", 10));
            t2.Students.Add(new Person("p3", 12));
            Teacher t3 = new Teacher("t3", 45);
            t3.Students.Add(new Person("ppppp", 11));
            teachers.Add(t1);
            teachers.Add(t2);
            teachers.Add(t3);
            Teacher t4 = new Teacher("t4", 45);
            return teachers;
        }

CellsNet47918.zip (10.2 KB)

The issues you have found earlier (filed as CELLSNET-47918) have been fixed in this update. This message was posted using Bugs notification tool by simon.zhao

Thanks for this. I have two questions if my datasource is a dataset:

  1. What would the design of the dataset need to be (to create a parent child relationship)?
  2. Also what would the smart markers look like.?

@nikhilpinto,

Please refer to the attached Excel file and sample code in the previous post in the thread for your reference.

I have seen the code.
The code uses a List of objects. Even though you have given a method name as CreateTable1() internally it uses a list.
In my scenario, I need to bind to a datatables(s), not list.

@nikhilpinto,
We have noted your concern and will share our feedback after analyzing it. In the meanwhile you may try to convert your data tables similar to the lists created above and then use as data source for the designer workbook.

@nikhilpinto,
We only support a table as data source for this feature.
If the data source is cascade, please convert cascade data to a list as data source.