大家帮忙呀在DataSet 中有了一个table,在外面有一个Table,结构同DataSet中是一样的,怎样把外面的表中的内容一次赋给DataSet中的那张表呀
解决方案 »
- asp.net生成静态的新闻列表,可以分页【顶了就有分】 在线等
- 我写的全文关键字变超链。关于图片alt有关键词问题
- 高分求创智数据控件 Powerplr在网页中的使用方法
- GirdView是否可以隐藏 header和footer?
- 请教:引用的功能是怎么实现的??
- 高分求救UItraChart画图,急,我在线等!
- asp.net入门数据库问题
- asp.net页面之间传递参数怎么老是少一个字?????????????急急急!!!!
- DataGrid问题!up有分数!
- 怎樣實現部分頁面刷新﹐類似WebCombo那樣的功能﹐請給思路﹐謝謝﹗
- 怎么在客户端阻止回发事件?
- aspx的webform只能提交给自己,能不能提交给别的aspx
{
ComLogOutput.WriteLogFile("prtMisc_Click begin");
rpt_Miscsouv rpt = new rpt_Miscsouv();
ReportDocument rptS = rpt.OpenSubreport("rpt_Souvenir.rpt");
ReportDocument rptO = rpt.OpenSubreport("rpt_Other.rpt");
ReportDocument rptH = rpt.OpenSubreport("rpt_Header.rpt"); // get tirp misc expenses
DataSet dsExc = new TripReportDB().GetTripMisc(is_serial.Value,gs_cmpy.Value); DataTable dtMisc = dsExc.Tables[0]; DataTable dtOther = new DataTable();
dtOther.Columns.Add("NUMBER");
dtOther.Columns.Add("TRIP_DATE");
dtOther.Columns.Add("COUNTRY");
dtOther.Columns.Add("PARTICULAR");
dtOther.Columns.Add("PURPOSE");
dtOther.Columns.Add("CURR");
dtOther.Columns.Add("AMT");
dtOther.Columns.Add("LOCAL_AMT");
dtOther.Columns.Add("ATTACHMENT"); if (dtMisc.Rows.Count > 0)
{
TextObject txtRe = (TextObject)rptO.ReportDefinition.ReportObjects["txtRe"];
TextObject txtSumLocalAmt = (TextObject)rptO.ReportDefinition.ReportObjects["txtSumLocalAmt"]; txtRe.Text = dtMisc.Rows[0]["REMARK"].ToString();
double sumLocalAmt = 0;
for (int i = 1; i < dtMisc.Rows.Count+1; i++)
{
sumLocalAmt += ComStyleCheck.IsDecimail(dtMisc.Rows[i-1]["LOCAL_AMT"].ToString())? Math.Round(double.Parse(dtMisc.Rows[i-1]["LOCAL_AMT"].ToString()), 1):0; DataRow dr = dtOther.NewRow();
dr["NUMBER"] = i.ToString();
dr["TRIP_DATE"] = dtMisc.Rows[i-1]["TRIP_DATE"].ToString();
dr["COUNTRY"] = dtMisc.Rows[i-1]["COUNTRY"].ToString();
dr["PARTICULAR"] = dtMisc.Rows[i-1]["PARTICULAR"].ToString();
dr["PURPOSE"] = dtMisc.Rows[i-1]["PURPOSE"].ToString();
dr["CURR"] = dtMisc.Rows[i-1]["CURR"].ToString();
dr["AMT"] = dtMisc.Rows[i-1]["AMT"].ToString();
dr["LOCAL_AMT"] = dtMisc.Rows[i-1]["LOCAL_AMT"].ToString();
dr["ATTACHMENT"] = dtMisc.Rows[i-1]["ATTACHMENT"].ToString();
dtOther.Rows.Add(dr);
}
txtSumLocalAmt.Text = sumLocalAmt.ToString();
}
rptO.SetDataSource(dtOther); DataTable dtSouvenir = new TripReportDB().GetTripSouvenir(is_serial.Value,gs_cmpy.Value).Tables[0]; DataTable dtSouvenirFinal = new DataTable();
dtSouvenirFinal.Columns.Add("NUMBER");
dtSouvenirFinal.Columns.Add("TRIP_DATE");
dtSouvenirFinal.Columns.Add("CUST_NAME");
dtSouvenirFinal.Columns.Add("REMARK");
dtSouvenirFinal.Columns.Add("QTY");
dtSouvenirFinal.Columns.Add("CURR");
dtSouvenirFinal.Columns.Add("AMT");
dtSouvenirFinal.Columns.Add("LOCAL_AMT");
dtSouvenirFinal.Columns.Add("ATTACHMENT"); TextObject title = (TextObject)rptH.ReportDefinition.ReportObjects["Text11"];
title.Text = new TripReportDB().GetCmpyName(this.UserInfo.CompCode,UserInfo.EmpNum); if (dtSouvenir.Rows.Count > 0)
{
TextObject txtCharacter = (TextObject)rptH.ReportDefinition.ReportObjects["txtCharacter"];
TextObject txtSerialNo = (TextObject)rptH.ReportDefinition.ReportObjects["txtSerialNo"];
TextObject txtFullName = (TextObject)rptH.ReportDefinition.ReportObjects["txtFullName"];
TextObject txtToday = (TextObject)rptH.ReportDefinition.ReportObjects["txtToday"]; TextObject txtRe = (TextObject)rptS.ReportDefinition.ReportObjects["txtRe"];
TextObject txtSumLocalAmt = (TextObject)rptS.ReportDefinition.ReportObjects["txtSumLocalAmt"]; txtRe.Text = dtSouvenir.Rows[0]["REMARK2"].ToString();
txtCharacter.Text = "(d)";
txtSerialNo.Text = dtSouvenir.Rows[0]["SERIAL_NO"].ToString();
// txtFullName.Text = dtSouvenir.Rows[0]["FULL_NAME"].ToString();
txtToday.Text = DateTime.Now.ToString("yyyy/MM/dd"); double sumLocalAmt = 0;
for (int i = 1; i < dtSouvenir.Rows.Count+1; i++)
{
sumLocalAmt += ComStyleCheck.IsDecimail(dtSouvenir.Rows[i-1]["LOCAL_AMT"].ToString())? Math.Round(double.Parse(dtSouvenir.Rows[i-1]["LOCAL_AMT"].ToString()), 1):0; DataRow dr = dtSouvenirFinal.NewRow();
dr["NUMBER"] = i.ToString();
dr["TRIP_DATE"] = dtSouvenir.Rows[i-1]["TRIP_DATE"].ToString();
dr["CUST_NAME"] = dtSouvenir.Rows[i-1]["CUST_NAME"].ToString();
dr["REMARK"] = dtSouvenir.Rows[i-1]["REMARK"].ToString();
dr["QTY"] = dtSouvenir.Rows[i-1]["QTY"].ToString();
dr["CURR"] = dtSouvenir.Rows[i-1]["CURR"].ToString();
dr["AMT"] = dtSouvenir.Rows[i-1]["AMT"].ToString();
dr["LOCAL_AMT"] = dtSouvenir.Rows[i-1]["LOCAL_AMT"].ToString();
dr["ATTACHMENT"] = dtSouvenir.Rows[i-1]["ATTACHMENT"].ToString();
dtSouvenirFinal.Rows.Add(dr);
}
txtSumLocalAmt.Text = sumLocalAmt.ToString();
}
rptS.SetDataSource(dtSouvenirFinal); ComLogOutput.WriteLogFile("prtMisc_Click end");
return rpt;
}
就是我定义了一个DataSet
DataSet mySet=new DataSet();
DataTable myTable=new DataTable("tableOne");
//这儿添加myTable的列等信息,但是没有值。
mySet.Tables.Add(myTable);现在,我得到了一个Table,table的结构同myTable的结构一样的,我要怎样才能把table的内容一次传给mySet.Tables["tableOne"]
当然,不能先把mySet.clear(),再mySet.Tables.Add(table);
也不要一个一个值传,这样row比较多的时候,效率底,有没有办法一次就把table传给mySet
DataTable dt = ds.Tables["tbl"];
foreach(DataRow dataRow in myTable.Rows)
{
DataRow dr = ds.Tables["tbl"].NewRow();
for(int i=0;i<myTable.Columns.Count;i++)
{
dr[i] = dataRow[i];
}
ds.Tables["tbl"].Rows.Add(dr);
}没测试!
数据table和DataSet中的table结构一摸一样..为什么就不能直接将数据table加入到DataSet中呢???
mySet.Merge(myTable)
其实我也查找了DataSet的属性和方法 但是没有找到 ,还是不够仔细。
然后mySet.Tables.add(myTable);2.你可以尝试楼上hchxxzx(NET?摸到一点门槛) 所建议的使用数据集的Merge方法看看;再说说
就是我定义了一个DataSet
DataSet mySet=new DataSet();
DataTable myTable=new DataTable("tableOne");
//这儿添加myTable的列等信息,但是没有值。
mySet.Tables.Add(myTable);现在,我得到了一个Table,table的结构同myTable的结构一样的,我要怎样才能把table的内容一次传给mySet.Tables["tableOne"]
当然,不能先把mySet.clear(),再mySet.Tables.Add(table);
也不要一个一个值传,这样row比较多的时候,效率底,有没有办法一次就把table传给mySet
就是我定义了一个DataSet
DataSet mySet=new DataSet();
DataTable myTable=new DataTable("tableOne");
//这儿添加myTable的列等信息,但是没有值。
mySet.Tables.Add(myTable);现在,我得到了一个Table,table的结构同myTable的结构一样的,我要怎样才能把table的内容一次传给mySet.Tables["tableOne"]
当然,不能先把mySet.clear(),再mySet.Tables.Add(table);
也不要一个一个值传,这样row比较多的时候,效率底,有没有办法一次就把table传给mySet--------------------------
首先我觉得楼主你的思路有问题,呵呵 :)1。你可以先得到你的myTable,接着定义DataSet mySet=new DataSet(),
然后mySet.Tables.add(myTable);2.你可以尝试楼上hchxxzx(NET?摸到一点门槛) 所建议的使用数据集的Merge方法看看;