Beispiel #1
0
        /// <summary>
        /// Envia los cambios del tsh_PersonasDataset.tsh_PersonasDataTable a la base de datos.
        /// </summary>
        public static void Update(tsh_PersonasDataset.tsh_PersonasDataTable dataTable)
        {
            ApplicationAssert.Check(dataTable != null, "El argumento dataTable no debe ser nulo.", ApplicationAssert.LineNumber);
            ApplicationAssert.Check(dataTable.Rows.Count > 0, "El argumento dataTable debe poseer alguna fila.", ApplicationAssert.LineNumber);

            //Nuevo
            SentenciasReplicacion replication = new SentenciasReplicacion();

            replication.IdConexion    = Security.IdConexion;
            replication.SucGeneradora = Security.IdSucursal;
            //Para todas las sucursales
            replication.Destino     = null;
            replication.VersionBD   = null;
            replication.NombreTabla = "dataaccess.tsa_Cuentas";
            mz.erp.dataaccess.tsh_Personas.Replicacion = replication;


            mz.erp.dataaccess.tsh_Personas.Update(dataTable);
        }
Beispiel #2
0
        public static void Update(tsh_PersonasDataset.tsh_PersonasDataTable dataTable, SqlTransaction trx)
        {
            string         IdSentenciaReplicacion = "-1";
            SqlDataAdapter adapter = new SqlDataAdapter();

            adapter.TableMappings.AddRange(
                new System.Data.Common.DataTableMapping[] {
                new System.Data.Common.DataTableMapping("Table", "tsh_Personas",
                                                        new System.Data.Common.DataColumnMapping[] {
                    new System.Data.Common.DataColumnMapping("IdPersona", "IdPersona"),
                    new System.Data.Common.DataColumnMapping("Nombre", "Nombre"),
                    new System.Data.Common.DataColumnMapping("Comentarios", "Comentarios"),
                    new System.Data.Common.DataColumnMapping("Telefonos", "Telefonos"),
                    new System.Data.Common.DataColumnMapping("Email", "Email"),
                    new System.Data.Common.DataColumnMapping("InstantMesseger", "InstantMesseger"),
                    new System.Data.Common.DataColumnMapping("Observaciones", "Observaciones"),
                    new System.Data.Common.DataColumnMapping("Activo", "Activo"),
                    new System.Data.Common.DataColumnMapping("FechaCreacion", "FechaCreacion"),
                    new System.Data.Common.DataColumnMapping("IdConexionCreacion", "IdConexionCreacion"),
                    new System.Data.Common.DataColumnMapping("UltimaModificacion", "UltimaModificacion"),
                    new System.Data.Common.DataColumnMapping("IdConexionUltimaModificacion", "IdConexionUltimaModificacion"),
                    new System.Data.Common.DataColumnMapping("IdReservado", "IdReservado"),
                    new System.Data.Common.DataColumnMapping("RowId", "RowId"),
                    new System.Data.Common.DataColumnMapping("IdTratamiento", "IdTratamiento"),
                    new System.Data.Common.DataColumnMapping("IdEmpresa", "IdEmpresa"),
                    new System.Data.Common.DataColumnMapping("IdSucursal", "IdSucursal"),
                    new System.Data.Common.DataColumnMapping("IdGenerado", "IdGenerado"),
                    new System.Data.Common.DataColumnMapping("RowIdGenerado", "RowIdGenerado")
                }
                                                        )
            }
                );

            SqlCommand sqlCommandUpdate = new SqlCommand("Pr_tsh_Personas_Update", trx.Connection);

            sqlCommandUpdate.Transaction = trx;
            sqlCommandUpdate.CommandType = CommandType.StoredProcedure;
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@IdPersona", SqlDbType.VarChar, 20, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdPersona", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@Nombre", SqlDbType.VarChar, 50, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Nombre", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@Comentarios", SqlDbType.VarChar, 100, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Comentarios", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@Telefonos", SqlDbType.VarChar, 100, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Telefonos", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@Email", SqlDbType.VarChar, 100, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Email", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@InstantMesseger", SqlDbType.VarChar, 100, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "InstantMesseger", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@Observaciones", SqlDbType.VarChar, 1000, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Observaciones", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@Activo", SqlDbType.Bit, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Activo", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@UltimaModificacion", SqlDbType.Timestamp, 8, ParameterDirection.InputOutput, false, ((System.Byte)(0)), ((System.Byte)(0)), "UltimaModificacion", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@IdConexionUltimaModificacion", SqlDbType.BigInt, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdConexionUltimaModificacion", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@IdReservado", SqlDbType.BigInt, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdReservado", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@IdTratamiento", SqlDbType.BigInt, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdTratamiento", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@IdEmpresa", SqlDbType.BigInt, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdEmpresa", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@IdSucursal", SqlDbType.BigInt, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdSucursal", DataRowVersion.Current, null));
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@OldIdPersona", SqlDbType.VarChar, 20, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdPersona", DataRowVersion.Original, null));

            /*SqlParameter parametroIOU = new SqlParameter();
             * parametroIOU.ParameterName = "@IdSentenciaReplicacion";
             * parametroIOU.SqlDbType = SqlDbType.BigInt;
             * parametroIOU.Size = 0;
             * parametroIOU.Direction = ParameterDirection.InputOutput;
             * parametroIOU.Value = IdSentenciaReplicacion;
             * sqlCommandUpdate.Parameters.Add (parametroIOU);
             * sqlCommandUpdate.Parameters.Add("@NombreTabla", SqlDbType.VarChar, 300).Value = "dataaccess.tsh_Personas";
             * sqlCommandUpdate.Parameters.Add("@GeneraReplicacion", SqlDbType.Bit).Value = 1;*/

            SqlCommand sqlCommandDelete = new SqlCommand("Pr_tsh_Personas_Delete", trx.Connection);

            sqlCommandDelete.Transaction = trx;
            sqlCommandDelete.CommandType = CommandType.StoredProcedure;
            sqlCommandDelete.Parameters.Add(new SqlParameter("@IdPersona", SqlDbType.VarChar, 20, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdPersona", DataRowVersion.Original, null));
            sqlCommandDelete.Parameters.Add(new SqlParameter("@UltimaModificacion", SqlDbType.Timestamp, 8, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "UltimaModificacion", DataRowVersion.Original, null));

            SqlCommand sqlCommandInsert = new SqlCommand("Pr_tsh_Personas_Insert", trx.Connection);

            sqlCommandInsert.Transaction = trx;
            sqlCommandInsert.CommandType = CommandType.StoredProcedure;
            sqlCommandInsert.Parameters.Add(new SqlParameter("@IdPersona", SqlDbType.VarChar, 20, ParameterDirection.InputOutput, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdPersona", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@Nombre", SqlDbType.VarChar, 50, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Nombre", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@Comentarios", SqlDbType.VarChar, 100, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Comentarios", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@Telefonos", SqlDbType.VarChar, 100, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Telefonos", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@Email", SqlDbType.VarChar, 100, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Email", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@InstantMesseger", SqlDbType.VarChar, 100, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "InstantMesseger", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@Observaciones", SqlDbType.VarChar, 1000, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Observaciones", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@Activo", SqlDbType.Bit, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Activo", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@FechaCreacion", SqlDbType.DateTime, 0, ParameterDirection.InputOutput, false, ((System.Byte)(0)), ((System.Byte)(0)), "FechaCreacion", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@IdConexionCreacion", SqlDbType.BigInt, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdConexionCreacion", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@IdReservado", SqlDbType.BigInt, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdReservado", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@IdTratamiento", SqlDbType.BigInt, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdTratamiento", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@IdEmpresa", SqlDbType.BigInt, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdEmpresa", DataRowVersion.Current, null));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@IdSucursal", SqlDbType.BigInt, 0, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdSucursal", DataRowVersion.Current, null));

            /*SqlParameter parametroIOI = new SqlParameter();
             * parametroIOI.ParameterName = "@IdSentenciaReplicacion";
             * parametroIOI.SqlDbType = SqlDbType.BigInt;
             * parametroIOI.Size = 0;
             * parametroIOI.Direction = ParameterDirection.InputOutput;
             * parametroIOI.Value = IdSentenciaReplicacion;
             * sqlCommandInsert.Parameters.Add (parametroIOI);
             * sqlCommandInsert.Parameters.Add("@NombreTabla", SqlDbType.VarChar, 300).Value = "dataaccess.tsh_Personas";*/

            //Parametros adicionales para las modificaciones de replicacion
            sqlCommandInsert.Parameters.Add("@IdGenerado", SqlDbType.VarChar, 300).Value = System.DBNull.Value;
            sqlCommandInsert.Parameters["@IdGenerado"].Direction = ParameterDirection.InputOutput;
            sqlCommandInsert.Parameters.Add("@RowIdGenerado", SqlDbType.UniqueIdentifier).Value = System.DBNull.Value;
            sqlCommandInsert.Parameters["@RowIdGenerado"].Direction = ParameterDirection.InputOutput;
            //sqlCommandInsert.Parameters.Add("@GeneraReplicacion", SqlDbType.Bit).Value = 1;

            adapter.RowUpdated += new SqlRowUpdatedEventHandler(OnRowUpdated);



            adapter.UpdateCommand = sqlCommandUpdate;
            adapter.DeleteCommand = sqlCommandDelete;
            adapter.InsertCommand = sqlCommandInsert;



            adapter.Update(dataTable);
        }