Crystal Report с ошибкой: здесь требуется диапазон номеров - PullRequest
0 голосов
/ 29 декабря 2010

Я использую отчет Crystal, так как я использую код, подобный приведенному ниже, для отображения данных SQL в отчет Crystal,

string req = "{View_EODPumpTest.ROId} IN " + str + " AND " + "({View_EODPumpTest.RecordCreatedDate}>=date(" + fromDate.Year + " , " + fromDate.Month + " , " + fromDate.Day + ")" + "AND" + "{View_EODPumpTest.RecordCreatedDate}<=date(" + toDate.Year + " , " + toDate.Month + " ," + toDate.Day + " ))";

ReportDocument rep = new ReportDocument();
rep.Load(Server.MapPath("PumpTestReport.rpt"));

DateTime fromDate = DateTime.Parse(Request.QueryString["fDate"].ToString());
                DateTime toDate = DateTime.Parse(Request.QueryString["tDate"].ToString());
                CrystalReportViewer_PumpTest.ReportSource = rep;
                //CrystalReportViewer1.SelectionFormula = str;
                rep.RecordSelectionFormula = str;
                CrystalDecisions.CrystalReports.Engine.TextObject from = ((CrystalDecisions.CrystalReports.Engine.TextObject)rep.ReportDefinition.ReportObjects["txtFrom"]);
                from.Text = fromDate.ToShortDateString();
                CrystalDecisions.CrystalReports.Engine.TextObject to = ((CrystalDecisions.CrystalReports.Engine.TextObject)rep.ReportDefinition.ReportObjects["txtTO"]);
                to.Text = toDate.ToShortDateString();
                //Session["Repo"] = rep;
                CrystalReportViewer_PumpTest.RefreshReport();

после запуска моего приложения оно работает нормально без исключения, но с такой ошибкойя получаю,

A number range is required here. Error in File C:\DOCUME~1\Delmon\LOCALS~1\Temp\PumpTestReport {14E557A7-51B3-4791-9C78-B6FBAFFBD87C}.rpt: Error in formula . '{View_EODPumpTest.ROId} IN ['15739410','13465410'] AND ({View_EODPumpTest.RecordCreatedDate}>=date(2010 , 12 , 1)AND{View_EODPumpTest.RecordCreatedDate}<=date(2010 , 12 ,25 ))' A number range is required here.

ошибка.

что я для этого сделаю?

Пожалуйста, помогите,

Заранее спасибо

1 Ответ

2 голосов
/ 29 декабря 2010

Вы не включили определение 'str' в пример кода, но я предполагаю, что это набор значений через запятую. Чтобы Crystal интерпретировал это, вы должны поместить диапазон значений внутри [и], а не стандарт (и), который вы можете использовать в SQL. Например,

{View_EODPumpTest.ROId} IN [1,2,3,4,5,6]
...