C# C通过查询进行报告
大家好我这里有这个代码C# C通过查询进行报告,c#,sql,reporting,C#,Sql,Reporting,大家好我这里有这个代码 SqlConnection con = new SqlConnection(Properties.Settings.Default.StoreDBConnection); SqlDataAdapter da = new SqlDataAdapter(); private void Form1_Load(object sender, EventArgs e) { String test = DateTime.Now.ToString(
SqlConnection con = new SqlConnection(Properties.Settings.Default.StoreDBConnection);
SqlDataAdapter da = new SqlDataAdapter();
private void Form1_Load(object sender, EventArgs e)
{
String test = DateTime.Now.ToString("yyyy-MM-dd");
var dept = Properties.Settings.Default.GiftDepartment;
MessageBox.Show(""+test+"");
SqlCommand cmd = new SqlCommand("SELECT DeptNo,DeptSales,DeptCustomers FROM StoreSalesDetail where DeptNo="+dept+" and ProcDate>="+test+"", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet1 ds = new DataSet1();
da.Fill(ds);
reportViewer1.LocalReport.DataSources.Clear();
reportViewer1.LocalReport.DataSources.Add(new Microsoft.Reporting.WinForms.ReportDataSource("DataSet1", ds.Tables[1]));
this.reportViewer1.RefreshReport();
}
我的表中的示例数据
2013-05-03 00:00:00.000,2,120.0000,1,1
2013-05-04 00:00:00.000,2,50.0000,1,1
测试返回日期2013-05-04,那么为什么我的报告在>=查询中同时返回这两个日期?尝试使用datediff以获得更高的精度。请将输入值[test]用单引号括起来
SqlCommand cmd = new SqlCommand("SELECT DeptNo,DeptSales,DeptCustomers FROM StoreSalesDetail where DeptNo="+dept+" and datediff(d, '" + test + "', ProcDate) >=0", con);
在填充操作之后放置一个while循环,并枚举第一个数据表中的所有行。您是否看到这两行都在试图确定这是查询/数据问题还是报告工具问题。您能给我一个您希望我尝试的while循环的示例吗?我实际上刚刚解决了我的问题,我需要这样做:从StoreSalesDetail中选择DeptNo、DeptSales、DeptCustomers,其中DeptNo=+dept+和ProcDate>='+test+',con;