Lasantha Herath Ответов: 1

Как я могу передать параметр существующему отчету crystal с помощью программирования


Я использую visual studio 2010 и crystal report версии 13.0.18.2192, но у меня есть проблема, когда я пытаюсь передать новое поле параметра в существующий отчет, он не появляется, выдает ошибку.. Я хочу передать название магазина в верхней части отчета, я попробовал его передать как textobj в отчете, но я буду печатать правильно с помощью предварительного просмотра печати, но когда я запускаю его внутри программы, он печатается как мой старый отчет crystal (без названия магазина).

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

double discountP = 0;
if (txtDis.Text.Length > 0 && txtDis.Text!="0")
    discountP = double.Parse(txtDis.Text);
string path2="";
if ((InvNo.StartsWith("CAS-V") || InvNo.StartsWith("INV-V")) && needVat && discountP == 0)
path2 = Path.Combine(Environment.CurrentDirectory, @".\CrystalReporInvoiceVat.rpt");
else if(discountP>0)
path2 = Path.Combine(Environment.CurrentDirectory, @".\CrystalReporInvoiceVat.rpt");
else
 path2 = Path.Combine(Environment.CurrentDirectory, @".\CrystalReportSalesInv.rpt");
rptDoc.SetDataSource(ds1);
rptDoc.DataSourceConnections.Clear();
rptDoc.SetParameterValue("ShopName", "NEW SINGHE HARDWARE STORES");
//rptDoc.SetParameterValue("ShopAdd", "29 Karalliyadda Theldeniya Tel:081-2050044 081-2050040 077-3777713");
rptDoc.SetParameterValue("CusName", txtName.Text);
rptDoc.SetParameterValue("CusID", txtInvTo.Text);
rptDoc.SetParameterValue("CusAdd1", txtCusDetails1.Text);

1 Ответов

Рейтинг:
1

Member 13783994

Это решение работало на меня. просто попробуй.

 var date = DateTime.Today();
 ReportDocument report = new ReportDocument();
 CrystalReportViewer crystalReportViewer1 = new CrystalReportViewer();

//Attach datasource etc. here
 report.SetParameterValue("@EndDate", date);
 crystalReportViewer1.RefreshReport();