public bool IsValidFlush(ArrayList Tasks)
        {
            bool ok     = true;
            bool activo = Variables.GetValueBool("Fiscal.Activo");

            if (activo)
            {
                foreach (TaskDynamicInfo task in Tasks)
                {
                    object instance = task.TaskInstance;
                    if (instance.GetType().Equals(typeof(mz.erp.businessrules.comprobantes.ComprobanteDeVenta)))
                    {
                        ComprobanteDeVenta comp   = (ComprobanteDeVenta)instance;
                        string             Numero = comp.Numero;
                        string             IdTipoDeComprobante = comp.TipoComprobanteDestino;
                        decimal            Total = comp.Total;
                        ok = mz.erp.businessrules.tsa_Comprobantes.ExistsNumeration(Numero, IdTipoDeComprobante);
                        if (!ok)
                        {
                            ItemDatasetError error = new ItemDatasetError("Comprobante", "El Comprobante NO se ha Grabado", "El comprobante " + IdTipoDeComprobante + " Nº " + Numero + " No se ha Grabado. Se ha enviado un Mail a sus Supervisores. Tendrá un Sobrante de $" + Total);
                            _flushErrors.Add(error);
                            Build_Content(comp);
                        }
                    }
                }
            }
            return(ok);
        }
Пример #2
0
        public override bool IsValid()
        {
            _errores.Clear();
            bool    isvalid     = true;
            DataRow row         = mz.erp.businessrules.tsa_JerarquiaAgrupCuentas.GetByPk(IdNomenclatura);
            string  Descripcion = string.Empty;

            if (row != null)
            {
                Descripcion = Convert.ToString(row["Descripcion"]);
            }
            if (this.Elementos != null)
            {
                foreach (CuentaView cuenta in this.Elementos)
                {
                    if (!IsValidJerarquia(cuenta))
                    {
                        ItemDatasetError error = new ItemDatasetError("Cuenta", "Cliente Seleccionado", "El cliente " + cuenta.Nombre + " ya pertenece a la jerarquía seleccionada");
                        _errores.Add(error);
                        isvalid = false;
                    }
                }
            }
            return(isvalid);
        }
Пример #3
0
        public override bool IsValid()
        {
            _errores.Clear();
            bool    isvalid     = true;
            DataRow row         = mz.erp.businessrules.tpu_JerarquiaAgrupProveedores.GetByPk(IdNomenclatura);
            string  Descripcion = string.Empty;

            if (row != null)
            {
                Descripcion = Convert.ToString(row["Descripcion"]);
            }
            if (this.Elementos != null)
            {
                foreach (ProveedorView prov in this.Elementos)
                {
                    if (!IsValidJerarquia(prov))
                    {
                        ItemDatasetError error = new ItemDatasetError("Proveedor", "Proveedor Seleccionado", "El proveedor " + prov.Nombre + " ya pertenece a la jerarquía seleccionada");
                        _errores.Add(error);
                        isvalid = false;
                    }
                }
            }
            return(isvalid);
        }
Пример #4
0
        public bool IsValid()
        {
            _errores.Clear();
            bool isvalid = true;

            if (!IsValidPersona())
            {
                ItemDatasetError error = new ItemDatasetError("Responsable", "Responsable", "Debe selccionar el Responsable");
                _errores.Add(error);
                isvalid = false;
            }
            if (!IsValidDescripcion())
            {
                ItemDatasetError error = new ItemDatasetError("Descripcion", "Descripcion", "La descripcion no puede ser vacia");
                _errores.Add(error);
                isvalid = false;
            }
            if (!IsValidTransporte())
            {
                ItemDatasetError error = new ItemDatasetError("Transporte", "Transporte", "Debe seleccionar el transporte");
                _errores.Add(error);
                isvalid = false;
            }
            return(isvalid);
        }
Пример #5
0
 public void PutErrorOnDataSet(System.Data.DataRow row)
 {
     _errors.Clear();
     if (_rowProductos.HasErrors)
     {
         System.Data.DataColumn[] columnasConError = row.GetColumnsInError();
         for (int i = 0; columnasConError.Length < i; i++)
         {
             ItemDatasetError error = new ItemDatasetError(((System.Data.DataColumn)columnasConError[i]).Table.TableName, ((System.Data.DataColumn)columnasConError[i]).ColumnName, row.GetColumnError(columnasConError[i]));
             _errors.Add(error);
         }
     }
 }
Пример #6
0
        public override bool IsValid()
        {
            _errores.Clear();
            bool isvalid = true;

            foreach (ProductoView prod in this.Elementos)
            {
                if (!IsValidJerarquia(prod))
                {
                    ItemDatasetError error = new ItemDatasetError("Producto", "Producto Seleccionado", "El producto " + prod.Descripcion + " ya pertenece a la jerarquia");
                    _errores.Add(error);
                    isvalid = false;
                }
            }
            return(isvalid);
        }
Пример #7
0
        public bool IsValid()
        {
            _errores.Clear();
            bool isvalid = true;

            if (this.GenerariaPagoACuenta())
            {
                ItemDatasetError error = new ItemDatasetError("Importe", "Se generaría un Pago a Cuenta.", "El importe de la forma de pago es mayor al importe de la factura. Funcionalidad no permitida.");
                _errores.Add(error);
                isvalid = false;
            }
            if (!IsValidMonto())
            {
                ItemDatasetError error = new ItemDatasetError("Importe", "Monto Insuficiente", "El Total es menor que el total del Comprobante De Venta");
                _errores.Add(error);
                isvalid = false;
            }
            if (!IsValidValores())
            {
                ItemDatasetError error = new ItemDatasetError("Valores", "Datos Insuficientes", "Falta completar información para 'Medio de Pago' especificado.");
                _errores.Add(error);
                isvalid = false;
            }
            if (!IsValidFormaDePago())
            {
                ItemDatasetError error = new ItemDatasetError("Formas de Pagos", "Recargos", "No se puede seleccionar una forma de pago con recargos para este proceso. El recargo debe estar en la condición de venta.");
                _errores.Add(error);
                isvalid = false;
            }

            /* Silvina 20111212 - Tarea 0000232 */
            if (!IsValidMontoReserva())
            {
                ItemDatasetError error = new ItemDatasetError("Seña", "Seña", "El monto de la seña debe ser mayor a cero.");
                _errores.Add(error);
                isvalid = false;
            }
            /* Fin Silvina 20111212 - Tarea 0000232 */

            return(isvalid);
        }
Пример #8
0
 /// <summary>
 /// Agrega un nuevo mensaje de error en la colección de errores del dataset.
 /// </summary>
 /// <param name="item"></param>
 public virtual void Add(ItemDatasetError item)
 {
     List.Add(item);
 }
        public bool IsValid()
        {
            bool isvalid = true;

            _errores.Clear();
            if (_comprobante.IdInstanciaCaja != null && _comprobante.IdInstanciaCaja != string.Empty)
            {
                if (true)               // Variable q indica si se realiza la validacion
                {
                    Hashtable table = new Hashtable();
                    foreach (Valor valor in this._comprobante.Valores)
                    {
                        if (valor.Agrupado)
                        {
                            string key = valor.IdTDCompTesoreria + '-' + valor.IdMoneda + '-' + valor.Comprobante + '-' + valor.Moneda;
                            if (!table.ContainsKey(key))
                            {
                                table.Add(key, 0);
                            }
                            decimal monto = Convert.ToDecimal(table[key]);
                            monto      = monto + valor.Monto;
                            table[key] = monto;
                        }
                    }
                    foreach (string key in table.Keys)
                    {
                        string[] partes   = key.Split(new char[] { '-' });
                        string   IdTDcomp = partes[0];
                        string   IdM      = partes[1];
                        string   Comp     = partes[2];
                        string   Mon      = partes[3];
                        decimal  total    = Convert.ToDecimal(table[key]);
                        //decimal totalPorTDComp = tfi_Cajas.GetImportePorTipoDeComprobanteAnterior( dvm.IdTDCompTesoreria, dvm.IdMoneda , tfi_InstanciasCaja.GetByPk(IdCaja).IdCaja);
                        decimal totalPorTDComp = tfi_Cajas.GetImportePorTipoDeComprobante(IdTDcomp, IdM, _comprobante.IdInstanciaCaja);
                        if (totalPorTDComp < total)                         //dvm.MontoCotizado)
                        {
                            _errores.Add(new ItemDatasetError(this.GetProcessManagerParent().Process.ProcessName, "Valor", "El importe ingresado en " + Comp + " " + Mon + " supera el saldo disponible." +
                                                              "El Monto actual en la caja es de " + totalPorTDComp));
                            isvalid = false;
                        }
                    }
                }
            }
            if (!IsValidProveedor)
            {
                ItemDatasetError error = new ItemDatasetError("Proveedor", "Proveedor Seleccionado", "El Proveedor seleccionado no puede ser nulo");
                _errores.Add(error);
                isvalid = false;
            }
            if (!IsValidResponsable)
            {
                ItemDatasetError error = new ItemDatasetError("Responsable", "Responsable de Emision", "El responsable de emisión no puede ser nulo");
                _errores.Add(error);
                isvalid = false;
            }
            if (!IsValidInstanciaDeCaja)
            {
                string           _errorCaja = string.Empty;
                string           msj        = _errorCaja.Equals(string.Empty)? "Debe seleccionar una caja abierta en donde imputar el pago" : _errorCaja;
                ItemDatasetError error      = new ItemDatasetError("Caja", "Instancia de Caja", msj);
                _errores.Add(error);
                isvalid = false;
            }
            if (!IsValidMonto)
            {
                ItemDatasetError error = new ItemDatasetError("Total", "Total", "El Total del comprobante debe ser mayor que 0");
                _errores.Add(error);
                isvalid = false;
            }
            if (!IsValidMontoConImputacion)
            {
                ItemDatasetError error = new ItemDatasetError("Total", "Total", "El Total del comprobante debe ser mayor o igual que el monto imputado a el/los comprobante/s a imputar");
                _errores.Add(error);
                isvalid = false;
            }
            if (!this.IsValidNumeration)
            {
                isvalid = false;
                _errores.Add(new ItemDatasetError("Comprobante", "Numeración", "La numeración del comprobante no es válida o ya existe"));
            }

            /*
             * if(_validarValoresExistentes)
             * {
             *      foreach(Valor valor in this.Valores.MisValores)
             *      {
             *              if (!valor.Agrupado && ((valor.IdInstanciaCaja != _idInstanciaCaja && valor.State.ToUpper().Equals("EDIT"))|| valor.State.ToUpper().Equals("NEW")))
             *              {
             *                      string message = "El valor " + valor.Comprobante + " Nro " + valor.Numero + " No pertenece a la caja de la cual se desea hacer el egreso. Debe transferirlo.";
             *                      _errores.Add( new ItemDatasetError( this._processParent.Process.ProcessName,"Valor",message));
             *                      isvalid = false;
             *              }
             *      }
             * }
             * if(_validarSignoValoresExistentes)
             * {
             *      int signo = int.MinValue;
             *      DataRow rowTC = mz.erp.businessrules.tsy_TiposDeComprobantes.GetByPk(this._tipoComprobanteDestino);
             *      if(rowTC != null)
             *              signo = Convert.ToInt32(rowTC["Signo"]);
             *      foreach(Valor valor in this.Valores.MisValores)
             *      {
             *              if (!valor.Agrupado && valor.State.ToUpper().Equals("EDIT") && valor.Signo.Equals(signo))
             *              {
             *                      string message = "El valor " + valor.Comprobante + " Nro " + valor.Numero + " No puede usarse en este tipo de comprobante";
             *                      _errores.Add( new ItemDatasetError( this._processParent.Process.ProcessName,"Valor",message));
             *                      isvalid = false;
             *              }
             *      }
             * }
             */

            if (!this._comprobante.IsValidRetencionesAplicadas)
            {
                isvalid = false;
                _errores.Add(new ItemDatasetError("Retenciones", "Retenciones", "Se deben recalcular las retenciones"));
            }
            //German 20091120
            if (!this._comprobante.IsValidCajaAbierta())
            {
                _errores.Add(new ItemDatasetError("Caja", "Caja", "La Caja seleccionada para este proceso ha sido cerrada. Debe reiniciar el proceso."));
                isvalid = false;
            }
            //Fin German 20091120

            return(isvalid);
        }