Example #1
0
        public static void Update(tfi_CajasDataset.tfi_CajasDataTable dataTable, SqlTransaction trx)
        {
            SqlDataAdapter adapter = new SqlDataAdapter();

            adapter.TableMappings.AddRange(
                new System.Data.Common.DataTableMapping[] {
                new System.Data.Common.DataTableMapping("Table", "tfi_Cajas",
                                                        new System.Data.Common.DataColumnMapping[] {
                    new System.Data.Common.DataColumnMapping("IdCaja", "IdCaja"),
                    new System.Data.Common.DataColumnMapping("IdEmpresa", "IdEmpresa"),
                    new System.Data.Common.DataColumnMapping("IdSucursal", "IdSucursal"),
                    new System.Data.Common.DataColumnMapping("Descripcion", "Descripcion"),
                    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")
                }
                                                        )
            }
                );

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

            sqlCommandUpdate.Transaction = trx;
            sqlCommandUpdate.CommandType = CommandType.StoredProcedure;
            sqlCommandUpdate.Parameters.Add(new SqlParameter("@IdCaja", SqlDbType.VarChar, 20, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdCaja", 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("@Descripcion", SqlDbType.VarChar, 50, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Descripcion", 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("@OldIdCaja", SqlDbType.VarChar, 20, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdCaja", DataRowVersion.Original, null));

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

            sqlCommandDelete.Transaction = trx;
            sqlCommandDelete.CommandType = CommandType.StoredProcedure;
            sqlCommandDelete.Parameters.Add(new SqlParameter("@IdCaja", SqlDbType.VarChar, 20, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdCaja", 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_tfi_Cajas_Insert", trx.Connection);

            sqlCommandInsert.Transaction = trx;
            sqlCommandInsert.CommandType = CommandType.StoredProcedure;
            sqlCommandInsert.Parameters.Add(new SqlParameter("@IdCaja", SqlDbType.VarChar, 20, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "IdCaja", 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));
            sqlCommandInsert.Parameters.Add(new SqlParameter("@Descripcion", SqlDbType.VarChar, 50, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "Descripcion", 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));

            adapter.UpdateCommand = sqlCommandUpdate;
            adapter.DeleteCommand = sqlCommandDelete;
            adapter.InsertCommand = sqlCommandInsert;
            adapter.Update(dataTable);
        }
Example #2
0
        public static DataSet ActualizaVariablesCajas(tfi_CajasDataset.tfi_CajasDataTable dataTable, ArrayList CajasAgregadas, ArrayList CajasEliminadas)
        {
            string  IdCajaTemporal = Variables.GetValueString("Cajas.CajaTemporalDefault");
            DataSet data           = mz.erp.businessrules.sy_Variables.GetListByCola(".Cajas");

            foreach (DataRow row in data.Tables[0].Rows)
            {
                string    valor   = Convert.ToString(row["ValorDefault"]);
                ArrayList valores = mz.erp.systemframework.Util.Parse(valor);
                //Excluye a las variables que solo se configuran con la caja Temporal Default
                if (!valores.Contains(IdCajaTemporal))
                {
                    foreach (string IdCaja in CajasAgregadas)
                    {
                        if (!valores.Contains(IdCaja))
                        {
                            valores.Add(IdCaja);
                        }
                    }
                    foreach (string IdCaja in CajasEliminadas)
                    {
                        if (valores.Contains(IdCaja))
                        {
                            valores.Remove(IdCaja);
                        }
                    }
                    row["ValorDefault"] = mz.erp.systemframework.Util.PackString(valores);
                }
            }
            return(data);
        }
Example #3
0
        /// <summary>
        /// Envia los cambios del tfi_CajasDataset.tfi_CajasDataTable a la base de datos.
        /// </summary>
        public static void Update(tfi_CajasDataset.tfi_CajasDataTable 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);

            if (TableIsValid(dataTable))
            {
                ArrayList CajasAAgregar  = ObtenerCajasAAgregar(dataTable);
                ArrayList CajasAEliminar = ObtenerCajasAEliminar(dataTable);
                DataSet   dataVariables  = ActualizaVariablesCajas(dataTable, CajasAAgregar, CajasAEliminar);

                mz.erp.dataaccess.tfi_Cajas.Update(dataTable, dataVariables.Tables[0]);
            }
        }
Example #4
0
        public static ArrayList ObtenerCajasAAgregar(tfi_CajasDataset.tfi_CajasDataTable dataTable)
        {
            ArrayList res = new ArrayList();

            foreach (DataRow row in dataTable.Rows)
            {
                if (row.RowState.Equals(DataRowState.Added))
                {
                    res.Add(Convert.ToString(row["IdCaja"]));
                }
            }


            return(res);
        }
Example #5
0
        public static ArrayList ObtenerCajasAEliminar(tfi_CajasDataset.tfi_CajasDataTable dataTable)
        {
            ArrayList res = new ArrayList();

            foreach (DataRow row in dataTable.Rows)
            {
                if (row.RowState.Equals(DataRowState.Deleted))
                {
                    res.Add(Convert.ToString(row["IdCaja", DataRowVersion.Original]));
                }
            }


            return(res);
        }
Example #6
0
        public static bool TableIsValid(tfi_CajasDataset.tfi_CajasDataTable dataTable)
        {
            foreach (DataRow row in dataTable.Rows)
            {
                if (row.RowState.Equals(DataRowState.Modified) || row.RowState.Equals(DataRowState.Added))
                {
                    string Caja = Convert.ToString(row["Descripcion"]);
                    if (Caja.Trim().Equals(string.Empty))
                    {
                        row.SetColumnError("Descripcion", "La Descripción de la Caja no puede ser vacía");
                        return(false);
                    }
                }
            }

            foreach (DataRow row in dataTable.Rows)
            {
                if (row.RowState.Equals(DataRowState.Deleted))
                {
                    string  IdCaja = Convert.ToString(row["IdCaja", DataRowVersion.Original]);
                    DataSet data   = mz.erp.businessrules.tfi_InstanciasCaja.GetListByIdCaja(IdCaja);
                    if (data.Tables[0].Rows.Count > 0)
                    {
                        row.SetColumnError("IdCaja", "La Caja " + IdCaja + " no se puede eliminar porque ha sido usada");
                        return(false);
                    }
                }
            }
            foreach (DataRow row in dataTable.Rows)
            {
                if (row.RowState.Equals(DataRowState.Modified))
                {
                    string IdCaja       = Convert.ToString(row["IdCaja", DataRowVersion.Original]);
                    string IdCajaActual = Convert.ToString(row["IdCaja", DataRowVersion.Current]);
                    if (!IdCaja.Equals(IdCajaActual))
                    {
                        row.SetColumnError("IdCaja", "No se puede modificar el IdCaja. Elimine y Vuelva a crear la Caja");
                        return(false);
                    }
                }
            }

            return(true);
        }