DataSet datare=new dataset1(); //global variable
public partial class main_inherit : sphynx
{
public main_inherit():base(@"Data Source=PC5;Initial Catalog=clinic_Main;User ID=sa")
{
}
string constr;
public override SqlDataReader getval(string query)
{
constr = base.connector();
try
{
sqlcon.Open();
sqlask = new SqlCommand(query, sqlcon);
rdr = sqlask.ExecuteReader();
}
catch { }
sqlcon.Close();
return rdr;
}
public virtual void filldata(string text)
{
Form2 datare=new Form2();
DataRow dr=datare.ds.Tables["details"].NewRow();
dr["id"] = base.valueofstr("select patientid from master_bill1 where transactid='" + text + "' ","patientid");
dr["name"] = base.valueofstr("select name from cust_det where id='"+dr["id"]+"'", "name");
dr["billno"] = datare.textBox1.Text;
dr["paidate"] = base.valueofstr
("select paidate from master_bill1 where transactid='"+text+"'","paidate");
datare.ds.Tables["details"].ImportRow(dr);
}
}
该行没有被添加到表中以显示水晶报告有人可以帮助我,我已经尝试在gridview中查看它也显示空行。
答案 0 :(得分:1)
问题是这一行:
datare.ds.Tables["details"].ImportRow(dr);
没有做任何事情。引用MSDN,
"如果作为参数传递的DataRow处于分离状态,则会被忽略,并且不会抛出任何异常。"
Detatched表示它尚未添加到DataTable中。可能你根本不想要ImportRow
,而是在表的行集上使用Add。
datare.ds.Tables["details"].Rows.Add(dr);
基本上,ImportRow
用于复制现有行并将其附加到表中,而不是添加新行。