Hi Jonel

Thank you for your response. I use ODBC instead of Npgsql because the
program can use with MS Access, MS SQL and PostgreSQL.

Here is the code.


int n = this.BindingContext[dataView1].Count - 1;
string _Journal;
DataRowView DataRowView1;
this.cmdInsert.Transaction = _Transaction;
this.cmdDelete.Transaction = _Transaction;
this.cmdDelete1.Transaction = _Transaction;
this.cmdUpdate1.Transaction = _Transaction;
this.cmdUpdate2.Transaction = _Transaction;

for(i=0; i<=n; i++)
{
        this.BindingContext[dataView1].Position = i;
        DataRowView1 = (DataRowView) this.BindingContext[dataView1].Current;
        this.cmdInsert.Parameters["CustomerID"].Value = string.Empty;
        this.cmdInsert.Parameters["Employee_id"].Value =
DataRowView1["Employee_id"];
        this.cmdInsert.Parameters["GJournal"].Value =
DataRowView1["GJournal"];
        this.cmdInsert.Parameters["GJournalDT"].Value =
DataRowView1["GJournalDT"];
                this.cmdInsert.Parameters["TransactionDate"].Value =
dateTimeNow;

                this.cmdDelete.Parameters["ID"].Value =
DataRowView1["ID"];
        try
        {
             this.cmdInsert.ExecuteNonQuery();
        }
        catch (System.Exception ex)
        {
              this.RollBack(ex.Message);
        }
        try
        {
              this.cmdDelete.ExecuteNonQuery();
        }
        catch (System.Exception ex)
        {
              this.RollBack(ex.Message);
        }

        _Journal = DataRowView1["GJournal"].ToString().Trim();
        if (_Journal == "JP" | _Journal == "JR" )
        {
              this.cmdDelete1.Parameters["GLTran"].Value =
DataRowView1["GLTran"];
        try
        {
              this.cmdDelete1.ExecuteNonQuery();
        }
        catch (System.Exception ex)
        {
              this.RollBack(ex.Message);
        }

        this.cmdUpdate1.Parameters["Posted"].Value = true;
        this.cmdUpdate1.Parameters["GLTran"].Value = DataRowView1["GLTran"];

        try
        {
                this.cmdUpdate1.ExecuteNonQuery();
        }
        catch (System.Exception ex)
        {
                this.RollBack(ex.Message);
        }               
}


---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
       choose an index scan if your joining column's datatypes do not
       match

Reply via email to