سلام
فض کنیم که شما فاکتور ها را در یک دیتاگریدویو دارید. بعد میتونید بعضی از آنها را انتخاب کنید و به یک دیتاگرید ویو دیگری انتقال دهید. در مرحله تغییرات مورد نظر را انجام میدهید و با یک Buttom میتونید آنها را به یک دیتا بیس منتقل کنید.
برای اینکه فاکتور ها را سطر به سطر از یک دیتاگریدویو به دیتاگریدویو دیگر منتقل کنیم به لینک زیر مراجعه کنید.
http://www.w3-farsi.com/%d8%a7%d9%86%d8%aa%d9%82%d8%a7%d9%84-%db%8c%da%a9-%d8%b3%d8%b7%d8%b1-%d8%a7%d8%b2-%db%8c%da%a9-%d8%af%db%8c%d8%aa%d8%a7%da%af%d8%b1%db%8c%d8%af-%d8%a8%d9%87-%d8%af%db%8c%d8%aa%d8%a7%da%af%d8%b1%db%8c/
من با اکسس کار کردم و اسم دیتابیس را هم Database1.accdb گذاشتم و در فولدر Debug گذاشتمش.
کد زیر مربوط میشه به button1. من کد را امتحان کردم و درست جواب میده
private void button1_Click(object sender, EventArgs e)
{
dataGridView2.Update();
dataGridView2.Refresh();
string StrQuery;
string ConnString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|/Database1.accdb;" +
"Persist Security Info=False";
using (OleDbConnection conn = new OleDbConnection(ConnString))
{
OleDbCommand comm = new OleDbCommand();
comm.Connection = conn;
for (int i = 0; i < dataGridView2.Rows.Count-1; i++)
{
conn.Open();
StrQuery = "INSERT INTO Table1 (Column1, Column2, Column3) VALUES " +
"(@Column1, @Column2, @Column3)";
comm.Parameters.Clear();
comm.Parameters.AddWithValue("@Column1", dataGridView2.Rows[i].Cells["Column1"].Value.ToString());
comm.Parameters.AddWithValue("@Column2", dataGridView2.Rows[i].Cells["Column2"].Value.ToString());
comm.Parameters.AddWithValue("@Column3", dataGridView2.Rows[i].Cells["Column3"].Value.ToString());
comm.CommandText = StrQuery;
comm.ExecuteNonQuery();
conn.Close();
}
}
}