Este ser�a el proceso que implementa las clases anteriores

 

Imports System.enterpriseservices

Public Class Form1

Inherits System.Windows.Forms.Form

 

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim c As New COMdesdeNE.clsTrans1() ' -- clase anterior

c.EjecutaTransaccion( _

"insert into region (regionid,regiondescription) values (38,'regioncualquiera')", _

"insert into region (regionid,regiondescription) values (40,'regionotra')")

End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub

End Class



[EMAIL PROTECTED] wrote:

Alguien esta usando OLEDB para conectarse al AS400.  Os cuento,  estamos accediendo
por OLEDB con .NET a la base de datos correctamente. Pero el problema lo tenemos con
las transacciones que no las esta ejecutando o deshaciendo tanto en el ROLLBACK como
con el COMMIT.

No se si el problema esta en la conexi�n  o con alg�n par�metro que no tenemos definido
correctamente el  As400 (tenemos  v5.2).

Las cadenas de conexi�n son -->

PRIMERA
cn.ConnectionString="Provider=IBMDA400;Autocommit=0;Data Source=RECORDDE.recordrentacar.net;User id=PERE;Password=elpere;";

SEGUNDO
cn.ConnectionString="Provider=IBMDA400.DataSource.1;Persist Security Info=False;User ID=PERE;Password=elpere;Data Source=RECORDDE;Protection Level=None;Extended Properties='';Initial Catalog=RECORDDE;Transport Product=Client Access;SSL=DEFAULT;Force Translate=65535;Default Collection=PERE;Convert Date Time To Char=TRUE;Catalog Library List=RECFSQL;Cursor Sensitivity=3";


Si os sirve tb de referencia este es un ejemplo TRANSACCI�N


private void Button1_Click(object sender, System.EventArgs e)
                {
                        //iniciamos la conexion
                        cn.ConnectionString="Provider=IBMDA400;Autocommit=0;Data                                                                           Source=RECORDDE.recordrentacar.net;User id=PERE;Password=elpere;";                                         cn.Open();
                        //Creamos transaccion y comando
                        System.Data.OleDb.OleDbCommand cmd = new OleDbCommand();
                        System.Data.OleDb.OleDbTransaction transaccion;
                        //iniciamos la transaccion
                        transaccion = cn.BeginTransaction();
                        try
                        {
                                string strSQL = "INSERT INTO RECFSQL.AUT_SIS" +
                                        "(SISTEMA_ID, SISTEMA) " +
                                        " VALUES ('"+TextBox1.Text+"','prueba')";
           
                                //Asignamos Conexion, SQL y transaccion
                                cmd.Connection = cn;
                                cmd.CommandText = strSQL;
             ! ;                   cmd.Transaction = transaccion;
                                //Realizamos la inserci�n
                                int kk = (int)cmd.ExecuteNonQuery();

                                throw new Exception();

                                //finalizamos la transaccion
                                transaccion.Commit();
                        }
                        catch (Exception err)
                        {
!                                 Response.Write("ERROR-->" + err.Message);
                                transaccion.Rollback();

                                Response.Write("<BR> ha ejectuado el ROLLBACK");
                        }
                        cn.Close();
                }
!         }


Gracias  NET.


=======================================================
 La originalidad no esta en el "HECHO", esta en la"SOLUCI�N"
=======================================================
  .~.
 /V\   L   I   N   U   X
// \\ >Phear the Penguin<
/(   )\
^^-^^
Pon un Pinguino en TU VIDA.COM
Pere Soria
Dpto. de Inform�tica
Telf.    +34 964343008
E-mail: [EMAIL PROTECTED]
http://www.recordrentacar.com
Record Rent a Car S.A.



��� Antivirus � Filtros antispam � 6 MB gratis
��� �Todav�a no tienes un correo inteligente?

Responder a