ReportBuilderContext
Contents
[
Hide
]ReportBuilderContext class
LINQ Reporting Engine context.
public class ReportBuilderContext : ProcessorContext
Constructors
Name | Description |
---|---|
ReportBuilderContext() | The default constructor. |
Properties
Name | Description |
---|---|
DataSources { get; } | Data sources used to build the report. |
FontSettings { get; set; } | Font settings used by the processor. |
LayoutOptions { get; } | Document layout options used by the processor. |
ReportBuilderOptions { get; } | Report build options. |
WarningCallback { get; set; } | Warning callback used by the processor. |
Examples
Shows how to populate document with data sources using documents from the stream.
// There is a several ways to populate document with data sources using documents from the stream:
MessageTestClass sender = new MessageTestClass("LINQ Reporting Engine", "Hello World");
using (FileStream streamIn = new FileStream(MyDir + "Report building.docx", FileMode.Open, FileAccess.Read))
{
using (FileStream streamOut = new FileStream(ArtifactsDir + "LowCode.BuildReportDataSourceStream.1.docx", FileMode.Create, FileAccess.ReadWrite))
ReportBuilder.BuildReport(streamIn, streamOut, SaveFormat.Docx, new object[] { sender }, new[] { "s" });
using (FileStream streamOut = new FileStream(ArtifactsDir + "LowCode.BuildReportDataSourceStream.2.docx", FileMode.Create, FileAccess.ReadWrite))
ReportBuilder.BuildReport(streamIn, streamOut, SaveFormat.Docx, sender, "s");
using (FileStream streamOut = new FileStream(ArtifactsDir + "LowCode.BuildReportDataSourceStream.3.docx", FileMode.Create, FileAccess.ReadWrite))
ReportBuilder.BuildReport(streamIn, streamOut, SaveFormat.Docx, sender, "s", new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
Stream[] images = ReportBuilder.BuildReportToImages(streamIn, new ImageSaveOptions(SaveFormat.Png), new object[] { sender }, new[] { "s" }, new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
ReportBuilderContext reportBuilderContext = new ReportBuilderContext();
reportBuilderContext.ReportBuilderOptions.MissingMemberMessage = "Missed members";
reportBuilderContext.DataSources.Add(sender, "s");
using (FileStream streamOut = new FileStream(ArtifactsDir + "LowCode.BuildReportDataSourceStream.4.docx", FileMode.Create, FileAccess.ReadWrite))
ReportBuilder.Create(reportBuilderContext)
.From(streamIn)
.To(streamOut, SaveFormat.Docx)
.Execute();
}
Shows how to populate document with data sources.
public void BuildReportDataSource()
{
// There is a several ways to populate document with data sources:
string doc = MyDir + "Report building.docx";
MessageTestClass sender = new MessageTestClass("LINQ Reporting Engine", "Hello World");
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.1.docx", sender, "s");
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.2.docx", new object[] { sender }, new[] { "s" });
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.3.docx", sender, "s", new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.4.docx", SaveFormat.Docx, sender, "s");
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.5.docx", SaveFormat.Docx, new object[] { sender }, new[] { "s" });
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.6.docx", SaveFormat.Docx, sender, "s", new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.7.docx", SaveFormat.Docx, new object[] { sender }, new[] { "s" }, new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
ReportBuilder.BuildReport(doc, ArtifactsDir + "LowCode.BuildReportDataSource.8.docx", new object[] { sender }, new[] { "s" }, new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
Stream[] images = ReportBuilder.BuildReportToImages(doc, new ImageSaveOptions(SaveFormat.Png), new object[] { sender }, new[] { "s" }, new ReportBuilderOptions() { Options = ReportBuildOptions.AllowMissingMembers });
ReportBuilderContext reportBuilderContext = new ReportBuilderContext();
reportBuilderContext.ReportBuilderOptions.MissingMemberMessage = "Missed members";
reportBuilderContext.DataSources.Add(sender, "s");
ReportBuilder.Create(reportBuilderContext)
.From(doc)
.To(ArtifactsDir + "LowCode.BuildReportDataSource.9.docx")
.Execute();
}
public class MessageTestClass
{
public string Name { get; set; }
public string Message { get; set; }
public MessageTestClass(string name, string message)
{
Name = name;
Message = message;
}
}
See Also
- class ProcessorContext
- namespace Aspose.Words.LowCode
- assembly Aspose.Words