TheKhanSoft Ответов: 0

Как динамически обновлять поля отчета crystal из нескольких таблиц набора данных в C#


Привет,
Я создал приложение на языке C#, в котором:

Я хочу динамически обновлять отчет Crystal Report.

Для этой цели,
1. я создал набор данных (элемент в решении) 01 - предметы.PNG - Google Диск[^]

2. Добавлено/определенными столами, один из этих таблиц "PersonalInfo" 02 - DataTabe (из DataSet).PNG - Google Диск[^]

3. В Проводник Файлов поля источника Crystal Report/базы данных были/были определены (от эксперта базы данных) 03 - поле базы данных.PNG - Google Диск[^]

4. Добавлен отчет Crystal для решения и отформатирован для моего отчета Crystal согласно моим требованиям. 04.01 - отчет (2).PNG - Google Диск[^]

5. добавлен код в Форму2

Когда я запускаю приложение и нажимаю кнопку, чтобы сгенерировать PGF, оно не показывает ничего из DataTable/DataSet, кроме пустого файла и только заголовков.


Что я уже пробовал:

ReportDocument repDoc;
SalariesDataSet salariesDataSet;

DataTable tblPersonalInfo;

private void Form2_Load(object sender, EventArgs e)
{
    salariesDataSet = new SalariesDataSet();
    tblPersonalInfo = salariesDataSet.Tables["PersonalInfo"];

}



private void button1_Click(object sender, EventArgs e)
{
   tblPersonalInfo.Rows.Add("AWKUM01", "Kashif Ahmad Khan", "My Father Name", "05.10.1988", "1710142640743", "03369986664", "username01@example.com", "245654285");
tblPersonalInfo.Rows.Add("AWKUM02", "Employee Two", "Father Name 02", "21.05.1988", "1610242644333", "03119686735", "username02@example.com", "5554253212");
    tblPersonalInfo.Rows.Add("AWKUM03", "Emp Three", "Father Name 03", "10.05.1990", "1710142640743", "045966452", "username03@example.com", "455253384");

    using (repDoc = new ReportDocument())
    {
        for (int i = 0; i < tblPersonalInfo.Rows.Count; i++)
        {
            CrystalReport2 cryRpt = new CrystalReport2();

            cryRpt.SetDataSource(tblPersonalInfo);

            repDoc.Load(AppDomain.CurrentDomain.BaseDirectory + "\\CrystalReport2.rpt");
            repDoc.ExportToDisk(ExportFormatType.PortableDocFormat, AppDomain.CurrentDomain.BaseDirectory + "\\SalarySlip" + i + ".pdf");
        }
    }  
}

0 Ответов