BuildReport

BuildReport(Document, object)

Заполняет указанный шаблон документа данными из указанного источника, превращая его в готовый отчет.

public bool BuildReport(Document document, object dataSource)
ПараметрТипОписание
documentDocumentШаблон документа для заполнения данными.
dataSourceObjectОбъект источника данных.

Возвращаемое значение

Флаг, указывающий, был ли анализ шаблона документа успешным. Возвращаемый флаг имеет смысл только в том случае, если значениеOptions свойство включает в себя InlineErrorMessages вариант.

Примечания

Используя эту перегрузку, вы можете ссылаться на элементы источника данных в шаблонном документе, но вы не можете ссылаться на сам объект источника данных. Вам следует использоватьBuildReport перегрузка для достижения этого.

Объект источника данных может быть одного из следующих типов:

  • XmlDataSource
  • JsonDataSource
  • CsvDataSource
  • DataSet
  • DataTable
  • DataRow
  • IDataReader
  • IDataRecord
  • DataView
  • DataRowView
  • Любой другой произвольный нединамический и неанонимный тип .NET

Информацию о том, как работать с источниками данных разных типов в шаблонах документов, см. в справочнике по синтаксису шаблонов (https://docs.aspose.com/display/wordsnet/Template+Syntax).

Смотрите также


BuildReport(Document, object, string)

Заполняет указанный шаблон документа данными из указанного источника, превращая его в готовый отчет.

public bool BuildReport(Document document, object dataSource, string dataSourceName)
ПараметрТипОписание
documentDocumentШаблон документа для заполнения данными.
dataSourceObjectОбъект источника данных.
dataSourceNameStringИмя для ссылки на объект источника данных в шаблоне.

Возвращаемое значение

Флаг, указывающий, был ли анализ шаблона документа успешным. Возвращаемый флаг имеет смысл только в том случае, если значениеOptions свойство включает в себя InlineErrorMessages вариант.

Примечания

Используя эту перегрузку, вы можете ссылаться на элементы источника данных и сам объект источника данных в шаблоне. Если вы не собираетесь ссылаться на сам объект источника данных, вы можете опуститьdataSourceName прохождениенулевой или используйтеBuildReport перегрузка.

Объект источника данных может быть одного из следующих типов:

  • XmlDataSource
  • JsonDataSource
  • CsvDataSource
  • DataSet
  • DataTable
  • DataRow
  • IDataReader
  • IDataRecord
  • DataView
  • DataRowView
  • Любой другой произвольный нединамический и неанонимный тип .NET

Информацию о том, как работать с источниками данных разных типов в шаблонах документов, см. в справочнике по синтаксису шаблонов (https://docs.aspose.com/display/wordsnet/Template+Syntax).

Примеры

Показывает, как разрешить отсутствующих участников.

DocumentBuilder builder = new DocumentBuilder();
builder.Writeln("<<[missingObject.First().id]>>");
builder.Writeln("<<foreach [in missingObject]>><<[id]>><</foreach>>");

ReportingEngine engine = new ReportingEngine { Options = ReportBuildOptions.AllowMissingMembers };
engine.MissingMemberMessage = "Missed";
engine.BuildReport(builder.Document, new DataSet(), "");

Показывает, как выборочно удалять абзацы.

// Шаблон содержит теги с восклицательным знаком. Для таких тегов пустые абзацы будут удалены.
Document doc = new Document(MyDir + "Reporting engine template - Selective remove paragraphs.docx");

ReportingEngine engine = new ReportingEngine();
engine.BuildReport(doc, false, "value");

doc.Save(ArtifactsDir + "ReportingEngine.SelectiveDeletionOfParagraphs.docx");

Показывает, как отображать значения в виде текста в долларах.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

builder.Writeln("<<[ds.Value1]:dollarText>>\r<<[ds.Value2]:dollarText>>");

NumericTestClass testData = new NumericTestBuilder().WithValues(1234, 5621718.589).Build();

ReportingEngine report = new ReportingEngine();
report.KnownTypes.Add(typeof(NumericTestClass));
report.BuildReport(doc, testData, "ds");

doc.Save(ArtifactsDir + "ReportingEngine.DollarTextFormat.docx");

Смотрите также


BuildReport(Document, object[], string[])

Заполняет указанный шаблон документа данными из указанных источников, превращая его в готовый отчет.

public bool BuildReport(Document document, object[] dataSources, string[] dataSourceNames)
ПараметрТипОписание
documentDocumentШаблон документа для заполнения данными.
dataSourcesObject[]Массив объектов источника данных.
dataSourceNamesString[]Массив имен для ссылки на объекты источника данных в шаблоне.

Возвращаемое значение

Флаг, указывающий, был ли анализ шаблона документа успешным. Возвращаемый флаг имеет смысл только в том случае, если значениеOptions свойство включает в себя InlineErrorMessages вариант.

Примечания

Используя эту перегрузку, вы можете ссылаться на несколько объектов источников данных и их членов в шаблоне. Имя первого источника данных может быть опущено (т. е. может быть пустой строкой илинулевой если вы собираетесь ссылаться на элементы источника данных , а не на сам объект источника данных. Имена других источников данных должны быть указаны и уникальны.

Если вы собираетесь использовать один источник данных, рассмотрите возможность использованияBuildReport иBuildReport вместо этого перегружает.

Объект источника данных может быть одного из следующих типов:

  • XmlDataSource
  • JsonDataSource
  • CsvDataSource
  • DataSet
  • DataTable
  • DataRow
  • IDataReader
  • IDataRecord
  • DataView
  • DataRowView
  • Любой другой произвольный нединамический и неанонимный тип .NET

Информацию о том, как работать с источниками данных разных типов в шаблонах документов, см. в справочнике по синтаксису шаблонов (https://docs.aspose.com/display/wordsnet/Template+Syntax).

Примеры

Показывает, как работать с диаграммами в Word 2016.

Document doc = new Document(MyDir + "Reporting engine template - Word 2016 Charts.docx");

ReportingEngine engine = new ReportingEngine();
engine.BuildReport(doc, new object[] { Common.GetShares(), Common.GetShareQuotes() },
    new string[] { "shares", "quotes" });

doc.Save(ArtifactsDir + "ReportingEngine.Word2016Charts.docx");

Показывает, как сохранить вставленную нумерацию как есть.

// По умолчанию нумерованные списки из шаблонного документа продолжаются, если их идентификаторы совпадают с идентификаторами из вставляемого документа.
// При использовании "-sourceNumbering" нумерация должна быть разделена и сохранена как есть.
Document template = DocumentHelper.CreateSimpleDocument("<<doc [src.Document]>>" + Environment.NewLine + "<<doc [src.Document] -sourceNumbering>>");

DocumentTestClass doc = new DocumentTestBuilder()
    .WithDocument(new Document(MyDir + "List item.docx")).Build();

ReportingEngine engine = new ReportingEngine() { Options = ReportBuildOptions.RemoveEmptyParagraphs };
engine.BuildReport(template, new object[] { doc }, new[] { "src" });

template.Save(ArtifactsDir + "ReportingEngine.SourseListNumbering.docx");

Смотрите также