【发布时间】:2011-03-23 14:37:41
【问题描述】:
我的 Report.rdl 有表格,我想像 GridView 一样动态生成它
Reports.dsReport ds = new dsReport();
Reports.dsReportTableAdapters.sp_PaymentsTableAdapter daInformation =
new dsReportTableAdapters.sp_PaymentsTableAdapter();
try
{
daInformation .Fill(ds.sp_Procedure
, ID
, Name
, Number
, startDate
, endDate
, payerID);
}
catch { }
DataTable dtPaymentInfo = ds.Tables["sp_Payments"];
List<ReportParameter> parameters = new List<ReportParameter>();
parameters.Add(new ReportParameter("PeriodStart", startDate.Value.ToString("yyyy-MM-dd HH:mm"));
parameters.Add(new ReportParameter("PeriodEnd", endDate.Value.ToString("yyyy-MM-dd HH:mm"));
foreach(DataTable item in dtPaymentInfo.Rows)
{
for(int i = 0; i < item.Rows.Count; i++)
{
int status = (int)item.Rows[i][2];
string paymentName;
if(status == 0)
paymentName=status.ToString() + " EURO";
if(status == 1)
paymentName=status.ToString() + " DOLLAR";
if(status == 2)
paymentName=status.ToString() + " Pound";
parameters.Add(new ReportParameter("PaymentName", paymentName);
}
}
rpvPaymentInformation.LocalReport.SetParameters(parameters);
ReportDataSource rds = new ReportDataSource();
rds.Name = "DataSet1";
rds.Value = dtPaymentInfo;
rpvPaymentInformation.LocalReport.DataSources.Clear();
rpvPaymentInformation.LocalReport.DataSources.Add(rds);
rpvPaymentInformation.LocalReport.Refresh();
rpvPaymentInformation.ShowReportBody = true;
这是页面的代码隐藏
当我的表格控件生成一些数据时,它会填充 [status + "EURO"]
但在数据库中状态也有 1、2 个值。
我该如何解决这个问题? :(
【问题讨论】:
-
你能改写你问题的最后一部分吗?不是很清楚问题是什么。
-
表格控件显示状态字段的方式有问题吗?还是您发送的参数包含“DOLLAR”和“Pound”值导致问题?
-
@ Bala R 在数据库的表中有一个 Int 类型的状态字段,并且在使用 reportviewer 的 asp 页面中,如果 status = 0 则要过滤这个状态status =1 status + " Dollar" and last if status = 3 status + "pound" 如果可能的话,我想用报告参数来做。问题是在报告中只显示状态+“欧元”但在表格中也有状态为 1 和 2 值并且必须显示状态+“美元”和状态+“英镑”,但它没有这样做,尽管我检索了这样数据表中的值(1 或 2)
-
@Judah Sali 从表中检索数据并且它正在工作。但是当我将此添加到报告参数“parameters.Add(new ReportParameter("PaymentName", paymentName)”之后,当页面在报告中呈现时只显示“0 Euro”,因为在数据库状态列中第一条记录是0。但是作为我说过也有值 1 和 2。
-
你应该考虑重写你原来的问题,因为仍然没有发现明显的问题。
标签: asp.net reporting-services reporting reportviewer report