如何使用 Crystal 报告按问题修复 SQL 订单
How to fix SQL order by issue with Crystal Report
我在将数据 table 与 crystal 报告绑定时遇到排序(排序依据)问题。这是我的查询 "SELECT * FROM Payments WHERE (PayDate BETWEEN @startdate and @enddate) order by Id",查询 returns 数据 table 中的排序记录,但是当我将此结果绑定到 crystal 报告时,它会变得未排序。请提出解决此问题的建议。
我试过这个代码
DbCommand dbComm = BaseDB.CreatestrCommand();
dbComm.CommandText = "SELECT * FROM Pavti WHERE (PayDate BETWEEN @startdate and @enddate) order by PavtiNo";
//dbComm.CommandText = "SELECT * FROM Pavti WHERE PayDate BETWEEN " + fdt.ToShortDateString() + " and " + tdt.ToShortDateString() + " order by PavtiNo";
DbParameter dbParam = dbComm.CreateParameter();
dbParam.ParameterName = "@startdate";
dbParam.Value = fdt;
dbParam.DbType = DbType.Date;
dbParam.Direction = ParameterDirection.Input;
dbComm.Parameters.Add(dbParam);
dbParam = dbComm.CreateParameter();
dbParam.ParameterName = "@enddate";
dbParam.Value = tdt;
dbParam.DbType = DbType.Date;
dbParam.Direction = ParameterDirection.Input;
dbComm.Parameters.Add(dbParam);
DataTable fieldData;
try
{
fieldData = BaseDB.ExecuteSelect(dbComm);
}
catch (Exception exc)
{
throw exc;
}
return fieldData;
我需要在 crystal 报告中排序记录
您的问题在报告中而不是在查询中。使用报表设计器中的报表排序专家来确定要排序的字段。
我在将数据 table 与 crystal 报告绑定时遇到排序(排序依据)问题。这是我的查询 "SELECT * FROM Payments WHERE (PayDate BETWEEN @startdate and @enddate) order by Id",查询 returns 数据 table 中的排序记录,但是当我将此结果绑定到 crystal 报告时,它会变得未排序。请提出解决此问题的建议。
我试过这个代码
DbCommand dbComm = BaseDB.CreatestrCommand();
dbComm.CommandText = "SELECT * FROM Pavti WHERE (PayDate BETWEEN @startdate and @enddate) order by PavtiNo";
//dbComm.CommandText = "SELECT * FROM Pavti WHERE PayDate BETWEEN " + fdt.ToShortDateString() + " and " + tdt.ToShortDateString() + " order by PavtiNo";
DbParameter dbParam = dbComm.CreateParameter();
dbParam.ParameterName = "@startdate";
dbParam.Value = fdt;
dbParam.DbType = DbType.Date;
dbParam.Direction = ParameterDirection.Input;
dbComm.Parameters.Add(dbParam);
dbParam = dbComm.CreateParameter();
dbParam.ParameterName = "@enddate";
dbParam.Value = tdt;
dbParam.DbType = DbType.Date;
dbParam.Direction = ParameterDirection.Input;
dbComm.Parameters.Add(dbParam);
DataTable fieldData;
try
{
fieldData = BaseDB.ExecuteSelect(dbComm);
}
catch (Exception exc)
{
throw exc;
}
return fieldData;
我需要在 crystal 报告中排序记录
您的问题在报告中而不是在查询中。使用报表设计器中的报表排序专家来确定要排序的字段。