Быстрый отчет: как распечатать набор значений?C#

Место общения программистов C#
Ответить
Anonymous
 Быстрый отчет: как распечатать набор значений?

Сообщение Anonymous »

Я пытаюсь создать Report.pdf из кода + использую Fast Report Designer (версия 2023/24).
Итак, я создаю DataSet с двумя таблицами — Contact и Country.
/>И зарегистрировать его в FastReport.
В Designer я использую привязку (без каких-либо наборов данных Windows, использую все из кода) - и вижу
только одну строку.
Но не набор строк (таблица).
Я пробую некоторые методы, и в лучших результатах вижу набор строк, но каждая строка печатается на разных страницах. p>
Итак, я не знаю, что делать.
Мой код (C#, .net 8):

Код: Выделить всё

  var dataContainer = new DataContainer()
{
Data = new Dictionary()
{
{
"Contact", new List()
{
new Dictionary()
{
{"Name", "John Doe"},
{"Email", "john.doe@example.com"},
{"Phone", "123-456-7890"}
},
new Dictionary()
{
{"Name", "Jane Smith"},
{"Email", "jane.smith@example.com"},
{"Phone", "098-765-4321"}
}
}
},
{
"Country", new List()
{
new Dictionary()
{
{"Name", "United States"},
{"Code", "US"},
{"Population", 331000000}
},
new Dictionary()
{
{"Name", "Canada"},
{"Code", "CA"},
{"Population", 37700000}
}
}
}
}
};

DataSet dataSet = new DataSet("JSON");

DataTable contactTable = new DataTable("Contact");
contactTable.Columns.Add("Name", typeof(string));
contactTable.Columns.Add("Email", typeof(string));
contactTable.Columns.Add("Phone", typeof(string));

foreach (var contact in dataContainer.Data["Contact"])
{
contactTable.Rows.Add(contact["Name"], contact["Email"], contact["Phone"]);
}

DataTable countryTable = new DataTable("Country");
countryTable.Columns.Add("Name", typeof(string));
countryTable.Columns.Add("Code", typeof(string));
countryTable.Columns.Add("Population", typeof(int));

foreach (var country in dataContainer.Data["Country"])
{
countryTable.Rows.Add(country["Name"], country["Code"], country["Population"]);
}

dataSet.Tables.Add(contactTable);
dataSet.Tables.Add(countryTable);

Report report = new Report();

//report.RegisterData(dataSet, "JSON");

report.Dictionary.RegisterData(dataSet,"JSON",true);

report.GetDataSource("Contact").Enabled = true;
report.GetDataSource("Country").Enabled = true;

report.Load("Report.frx");

report.Prepare();

report.Export(new PDFExport(), "Report.pdf");

И мой файл отчета: Итак, результат:
Изображение

Можете ли вы помочь мне показать таблицы?
Спасибо.

Подробнее здесь: https://stackoverflow.com/questions/785 ... -of-values
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»