foreach (DataRow dr in ds1.Tables["py01"].Rows)
{
slipno = dr["p1_slipno"].ToString().Trim();
sql2=" SELECT DISTINCT p2_skno, p2_precode, p2_kqty, p2_unit, p2_zqty, p2_sumqty, p2_ydate, p2_seq FROM py02 ";
sql2 +=" WHERE ((p2_skno is not null) OR (p2_precode is not null)) AND p2_slipno = '"+slipno+"' ";
sql3="SELECT DISTINCT p6_skno,p6_precode,p6_qty,p6_unit,p6_wdate,p6_re,p6_seq,p6_slipno FROM py06 ";
sql3+=" WHERE ((py06.p6_skno is not null) OR (py06.p6_precode is not null)) AND p6_slipno = '"+slipno+"' AND p6_seq <= 26 ";
ds2 = conntodatabase.rtnds(sql2,"py02");
ds3 = conntodatabase.rtnds(sql3,"py06");}这个ds2,ds3取数据是否只有最后一个循环有效?达不到显示子报表的效果吧?
{
slipno = dr["p1_slipno"].ToString().Trim();
sql2=" SELECT DISTINCT p2_skno, p2_precode, p2_kqty, p2_unit, p2_zqty, p2_sumqty, p2_ydate, p2_seq FROM py02 ";
sql2 +=" WHERE ((p2_skno is not null) OR (p2_precode is not null)) AND p2_slipno = '"+slipno+"' ";
sql3="SELECT DISTINCT p6_skno,p6_precode,p6_qty,p6_unit,p6_wdate,p6_re,p6_seq,p6_slipno FROM py06 ";
sql3+=" WHERE ((py06.p6_skno is not null) OR (py06.p6_precode is not null)) AND p6_slipno = '"+slipno+"' AND p6_seq <= 26 ";
ds2 = conntodatabase.rtnds(sql2,"py02");
ds3 = conntodatabase.rtnds(sql3,"py06");}这个ds2,ds3取数据是否只有最后一个循环有效?达不到显示子报表的效果吧?
解决方案 »
- 国家质检监督局的数据问题(急求,感谢好心人)
- 界面控制问题,大哥们帮帮忙~~~~~~~~~~~~~~~~
- 怎么用时间事件啊?
- 一个hashtable和arraylist的问题
- winform使用大侠们axWindowsMediaPlayer播放音乐的问题!!!!
- 关于占用内存不能释放的问题!
- DateTimePicker绑定数据时(datagrid也绑定到相同的数据源),如果在生成的应用程序中快速的用键盘的上下键在datagrid中选择数据,就会引起数
- Application的问题
- 求助关于Datagridview外观的设置?一直困扰了好久
- 拖放一个文件到form得到他的path,如何做呢?
- 请问如果我调用outlook来发送和接收邮件,我可以把邮件的信息保存到数据库中吗?如果在.net下调用outlook用那种方法?我的是office2000!
- 40分,求一个sql语句,在线等
{
this.checkdata();
string sql ="exec usp_pypy908z1 '"+textBox1.Text+"','"+textBox2.Text+"','"+textBox3.Text+"','"+textBox4.Text+"','"+textBox5.Text+"','"+textBox6.Text+"'";
DataSet ds1 = new DataSet();
try
{
ds1=conntodatabase.rtnd(sql);
}
catch (System.Exception ex)
{
MessageBox.Show(ex.ToString());
}
if (ds1.Tables[0].Rows.Count==0 )
{
MessageBox.Show("無數據可供你查詢,請重新輸入查詢條件");
return;
}
DataTable dt2 = new DataTable();
dt2 = ds1.Tables[1];
DataTable dt3 = new DataTable();
dt3= ds1.Tables[2];
DataTable dt4 = new DataTable();
dt4 = ds1.Tables[3];
DataTable dt5 = new DataTable();
dt5 = ds1.Tables[4];
DataTable dt6 = new DataTable();
dt6 = ds1.Tables[5];
DataTable dt7 = new DataTable();
dt7 = ds1.Tables[6];
DataTable dt8 = new DataTable();
dt8 =ds1.Tables[7];
DataTable dt9 = new DataTable();
dt9 =ds1.Tables[8];
d_bypy908z1 cp= new d_bypy908z1();
cp.SetDataSource(ds1.Tables[0]);
cp.OpenSubreport("d_bypy908z1_1.rpt").SetDataSource(dt2);
cp.OpenSubreport("d_bypy908z1_2.rpt").SetDataSource(dt3);
cp.OpenSubreport("d_bypy908z1_2_1.rpt").SetDataSource(dt4);
cp.OpenSubreport("d_bypy908z1_3.rpt").SetDataSource(dt5);
cp.OpenSubreport("d_bypy908z1_4.rpt").SetDataSource(dt6);
cp.OpenSubreport("d_bypy908z1_5.rpt").SetDataSource(dt7);
cp.OpenSubreport("d_bypy908z1_6.rpt").SetDataSource(dt9);
cp.OpenSubreport("d_bypy908z1_7.rpt").SetDataSource(dt8);
report rpt = new report();
rpt.SetReportSouce(cp);
rpt.Show();
this.Cursor =Cursors.Default;
}
搞定了,主要是子報表的相關聯的字段問題,上面說得對,只能得到最後一個徨的數據,後來改為存儲過程可以了