private void upd_soluong(string sql) { DataRow r2; DataRow [] dr; //foreach(DataRow r1 in d.get_data(sql).Tables[0].Rows) foreach (DataRow r1 in m.get_data_mmyy(sql, tu.Text.Substring(0, 10), den.Text.Substring(0, 10), true).Tables[0].Rows) { r = d.getrowbyid(ds.Tables[0], "mabn='" + r1["mabn"].ToString() + "'"); if (r == null) { r2 = ds.Tables[0].NewRow(); r2["tenkp"] = r1["tenkp"].ToString(); r2["stt"] = d.get_stt(ds.Tables[0]).ToString(); r2["mabn"] = r1["mabn"].ToString(); r2["hoten"] = r1["hoten"].ToString(); foreach (DataRow r3 in dsmabd.Tables[0].Rows) { r2["C_" + r3["mabd"].ToString().Trim()] = 0; } r2["C_" + r1["mabd"].ToString().Trim()] = r1["slyeucau"].ToString(); ds.Tables[0].Rows.Add(r2); } else { dr = ds.Tables[0].Select("mabn='" + r1["mabn"].ToString() + "'"); if (dr != null) { dr[0]["C_" + r1["mabd"].ToString().Trim()] = decimal.Parse(dr[0]["C_" + r1["mabd"].ToString().Trim()].ToString()) + decimal.Parse(r1["slyeucau"].ToString()); } } dr = dsmabd.Tables[0].Select("mabd=" + int.Parse(r1["mabd"].ToString())); if (dr != null) { dr[0]["soluong"] = decimal.Parse(dr[0]["soluong"].ToString()) + decimal.Parse(r1["slyeucau"].ToString()); } } }