Привет от Appdev (я новичок в Crystall Report)
Я создавал веб-приложение, которое будет содержать кристаллический отчет.
Мое требование:
Отчет должен отображаться на основе значения (текстовое поле в веб-форме), которое указано в текстовом поле.
Например: если значение Textbox = 2 означает, что должен отображаться только элемент с идентификатором 2.
В моем кристаллическом отчете есть 3 подотчета, такие как чек, партия (которая также содержит значения из другой таблицы, называемой ваучером) и, наконец, банк. эти 4 таблицы связаны одним общим полем с именем id.
- нужно знать, как передать параметр в кристаллический отчет.
- Как отобразить результат только один раз (мой код отображает один и тот же результат дважды)
вот как я связываю кристаллический отчет, используя параметры из файла .cs в С#
public void LoadTransReceipt()
{
string Date = "";
string Sql = "SELECT tREC_NUPKId as ID from TB_TransReceipt where tREC_VCVoucherNo='" + TXTVou.Text.Trim() + "' and tREC_NUIsActive=1";
SqlDataReader rdr = mobjGenlib.objDBLib.ExecuteQueryReader(Sql.ToString());
while (rdr.Read())
{
Session["ID"] = rdr.GetValue(0).ToString();
}
rdr.Close();
if (!string.IsNullOrEmpty(Session["ID"] as string))
{
if (Session["Date"] != null)
{
Date = mobjGenlib.ConvertString(Session["Date"]);
}
reportPath = GetReportPath("ReceiptReport.rpt");
CRReport = new ReportDocument();
CRReport.Load(reportPath);
CrystalReportViewer1.ReportSource = CRReport;
AddParameterToReport("IDP", Session["ID"].ToString());
AddParameterToReport("ActiveP", 1);
AddParameterToReport("IDB", Session["ID"].ToString());
AddParameterToReport("ActiveB", 1);
AddParameterToReport("IDC", Session["ID"].ToString());
AddParameterToReport("ActiveC", 1);
// ConnectionInfo connectionInfo = ConnInfo();
ConnectionInfo objConnInfo = new ConnectionInfo();
objConnInfo.DatabaseName = "Demo";
objConnInfo.UserID = "aa";
objConnInfo.Password = "aaaa";
objConnInfo.ServerName = "HOME-PC\\SQLEXPRESS";
SetDBLogonForReport(objConnInfo, CRReport);
SetDataSetForMultipleSubReport(objConnInfo, CRReport);
}
}
но когда я выполняю код, он отображает все данные, доступные в таблице, с двойным временем, как показано ниже
может ли кто-нибудь помочь мне решить эту проблему
заранее спасибо
получение ошибки как
" **
Указанный аргумент находится вне диапазона допустимых значений
**"