In-Table Master-Detail in HTML Document

Note
In this article, we will use GroupDocs.Assembly to generate In-Table Master-Detail report in HTML Document format.
Note
The code uses some of the objects defined in The Business Layer.
Note
This feature is supported by version 17.03 or greater.

In-Table Master-Detail in HTML Document

Reporting Requirement

As a report developer, you are required to represent customers’ total orders prices and price of each product separately with the following key requirements:

  • The report must show each customer along with his total orders prices.
  • It must also show each individual product ordered by the customers.
  • It must show sum of the order prices.
  • It must represent all the information in tabular form.
  • The report must be generated in the HTML Document.

Adding Syntax to be evaluated by GroupDocs.Assembly Engine

<<foreach [in customers]>> <<foreach [in Order]>> <</foreach>> <</foreach>>
CustomerOrder Price
<<[CustomerName]>><<[Order.Sum(c => c.Price)]>>
<<[Product.ProductName]>> <<[Price]>>
Total:<<[Sum( m => m.Order.Sum( c => c.Price))]>>
Tip
For detailed technical information about syntax, expressions and report generation by the engine, please visit: Working with GroupDocs.Assembly Engine.

Download  In-Table Master-Detail Template

Please download the sample In-Table Master-Detail document we created in this article:

Generating The Report

//For complete examples and data files, please go to https://github.com/groupdocs-assembly/GroupDocs.Assembly-for-.NET
//Setting up source html template
const String strHtmlTemplate = "HTML Templates/In-Table Master-Detail.html";
//Setting up destination html report
const String strHtmlReport = "HTML Reports/In-Table Master-Detail Report.html";
try
{
//Instantiate DocumentAssembler class
DocumentAssembler assembler = new DocumentAssembler();
//Call AssembleDocument to generate In-Table Master-Detail Report in html format
assembler.AssembleDocument(CommonUtilities.GetSourceDocument(strHtmlTemplate),
CommonUtilities.SetDestinationDocument(strHtmlReport),
new DataSourceInfo(DataLayer.PopulateData(), "customers"));
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Close
Loading

Analyzing your prompt, please hold on...

An error occurred while retrieving the results. Please refresh the page and try again.