Can we go to a certain Hole (specified by name) in Matlab Report Generator ?

14 views (last 30 days)
I have made a word template and tryiing to fill it with the MATLAB report generator. I used DOM API and using the moveToNextHole function.
But, it is accessing some holes multiple times(which are within a text box) and not accessing some. Also, the order of the Holes changes sometimes when I edit the template.
I named all the Holes Individully, and wanted to access the Holes by name.
Is there any standard function or any other way to do that?
Thanks in advance!

Accepted Answer

Rahin Vadsariya
Rahin Vadsariya on 30 Jun 2022
Hello,
I understand that you want to access the hole by its name.
Follow the below steps to fill the hole by its name:-
a) Use the "customizeReport" function to create a new subclass of the "Report" superclass.
b) Give it properties matching the "Titles" of the holes in the template
c) Create an instance of the subclass, and assign to the properties the values you want to fill the holes with.
d) Use the "fill" function from the Report API to fill the holes automatically.
For example, if you have a hole in the template called "Name", you can create a subclass called "myReport" with the property "Name". Then, use the following code to fill the hole with a name:
rpt = myReport('outputFilename', 'docx', 'myTemplate')
rpt.Name = "John Smith"
fill(rpt)
Hope the above explanation helps.
  1 Comment
RITAM BASU
RITAM BASU on 30 Jun 2022
Heyy.. Thanks a lot for your reply.
To be frank, I don't have much knowledge in OOP. So this might be a rookie question -
Can you please share how to create the sublclass called "myReport" using "customizeReport" function?
I tried
myReport = mlreportgen.report.Report.customizeReport(pwd);
But, returns a string and does not work.
Have a nice day.

Sign in to comment.

More Answers (0)

Products


Release

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!