public static bool EsValidoElMovimiento(Valor valor, tfi_MovimientosDeCajaExDataset.tfi_PagosMovimientosCajasRow rowPagos)
        {
            string IdTDComTesoreria = valor.IdTDCompTesoreria;
            string IdMoneda         = valor.IdMoneda;

            tfi_InstanciasCajaDataset.tfi_InstanciasCajaRow InstanciaRow = tfi_InstanciasCaja.GetByPk(rowPagos.IdInstanciaCaja);
            string IdCaja = Convert.ToString(InstanciaRow["IdCaja"]);

            decimal importeEnCaja = tfi_Cajas.GetImportePorTipoDeComprobante(IdTDComTesoreria, IdMoneda, IdCaja);

            return(importeEnCaja >= System.Math.Abs(valor.Monto));
        }
        public static tfi_MovimientosDeCajaExDataset Commit(tfi_MovimientosDeCajaExDataset data, MovimientoDeCaja movimiento, System.Data.DataSet valoresEx)
        {
            data = (tfi_MovimientosDeCajaExDataset)mz.erp.businessrules.data.tfi_ValoresEx.Commit(movimiento.Valores, valoresEx, data);

            tfi_MovimientosDeCajaExDataset.tfi_MovimientosDeCajaDataTable TableDeMov = data.tfi_MovimientosDeCaja;
            tfi_MovimientosDeCajaExDataset.tfi_MovimientosDeCajaRow       RowDeMov   = (tfi_MovimientosDeCajaExDataset.tfi_MovimientosDeCajaRow)TableDeMov.Rows[0];
            SetRowValues(RowDeMov, movimiento);
            tfi_MovimientosDeCajaExDataset.tfi_PagosMovimientosCajasDataTable tablaPagos = data.tfi_PagosMovimientosCajas;
            foreach (Valor valor in movimiento.Valores)
            {
                tfi_MovimientosDeCajaExDataset.tfi_PagosMovimientosCajasRow rowPagos = tablaPagos.Newtfi_PagosMovimientosCajasRow();

                SetRowDefaultValues(rowPagos);
                rowPagos.IdValor            = valor.IdValor;
                rowPagos.IdMovimiento       = RowDeMov.IdMovimiento;
                rowPagos.IdInstanciaCaja    = RowDeMov.IdInstanciaCaja;
                rowPagos.Numero             = RowDeMov.Numero;
                rowPagos.IdTipoDeMovimiento = RowDeMov.IdTipoDeMovimiento;

                tablaPagos.Addtfi_PagosMovimientosCajasRow(rowPagos);
            }
            return(data);
        }
        public static bool RowIsValid(tfi_MovimientosDeCajaExDataset.tfi_PagosMovimientosCajasRow row)
        {
            ApplicationAssert.Check(row != null, "El argumento row no debe ser nulo.", ApplicationAssert.LineNumber);
            bool   isValid = true;
            string mensaje;


            if (!IdMovimientoIsValid(row.IdMovimiento, out mensaje))
            {
                row.SetColumnError("IdMovimiento", mensaje);
                isValid = false;
            }

            if (!IdEmpresaIsValid(row.IdEmpresa, out mensaje))
            {
                row.SetColumnError("IdEmpresa", mensaje);
                isValid = false;
            }

            if (!IdSucursalIsValid(row.IdSucursal, out mensaje))
            {
                row.SetColumnError("IdSucursal", mensaje);
                isValid = false;
            }

            if (!IdInstanciaCajaIsValid(row.IdInstanciaCaja, out mensaje))
            {
                row.SetColumnError("IdInstanciaCaja", mensaje);
                isValid = false;
            }

            if (!IdTipoDeMovimientoIsValid(row.IdTipoDeMovimiento, out mensaje))
            {
                row.SetColumnError("IdTipoDeMovimiento", mensaje);
                isValid = false;
            }

            if (!NumeroIsValid(row.Numero, out mensaje))
            {
                row.SetColumnError("Numero", mensaje);
                isValid = false;
            }

            if (!IdValorIsValid(row.IdValor, out mensaje))
            {
                row.SetColumnError("IdValor", mensaje);
                isValid = false;
            }

            if (!FechaCreacionIsValid(row.FechaCreacion, out mensaje))
            {
                row.SetColumnError("FechaCreacion", mensaje);
                isValid = false;
            }

            if (!IdConexionCreacionIsValid(row.IdConexionCreacion, out mensaje))
            {
                row.SetColumnError("IdConexionCreacion", mensaje);
                isValid = false;
            }

            /*if ( !UltimaModificacionIsValid( row.UltimaModificacion, out mensaje) )
             * {
             *      row.SetColumnError( "UltimaModificacion" , mensaje);
             *      isValid=false;
             *
             * }*/

            if (!IdConexionUltimaModificacionIsValid(row.IdConexionUltimaModificacion, out mensaje))
            {
                row.SetColumnError("IdConexionUltimaModificacion", mensaje);
                isValid = false;
            }

            if (!IdReservadoIsValid(row.IdReservado, out mensaje))
            {
                row.SetColumnError("IdReservado", mensaje);
                isValid = false;
            }

            if (!RowIdIsValid(row.RowId, out mensaje))
            {
                row.SetColumnError("RowId", mensaje);
                isValid = false;
            }
            ;

            return(isValid);
        }
        public static tfi_MovimientosDeCajaExDataset.tfi_PagosMovimientosCajasRow SetRowDefaultValues(tfi_MovimientosDeCajaExDataset.tfi_PagosMovimientosCajasRow row)
        {
            row.IdMovimiento       = Util.NewStringId();
            row.IdEmpresa          = Convert.ToString(Security.IdEmpresa);
            row.IdSucursal         = Convert.ToString(Security.IdSucursal);
            row.IdInstanciaCaja    = string.Empty;
            row.IdTipoDeMovimiento = string.Empty;
            row.Numero             = Util.NewStringId();
            row.IdValor            = Util.NewStringId();
            row.FechaCreacion      = mz.erp.businessrules.Sistema.DateTime.Now;
            row.IdConexionCreacion = Security.IdConexion;
            //row.UltimaModificacion = null;
            row.IdConexionUltimaModificacion = Security.IdConexion;
            row.IdReservado = 0;
            row.RowId       = Guid.Empty;

            return(row);
        }