Beispiel #1
0
        private void _Dg_Grid_Clientes_RowHeaderMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            //Variables a Pasar
            var _Str_ccliente = Convert.ToString(_Dg_Grid_Clientes.Rows[_Dg_Grid_Clientes.CurrentCell.RowIndex].Cells["Cliente"].Value);

            //Verificamos si se permite cargar la cobranza del cliente
            if (!_Mtd_EsPermitidoCargarCobranzaCliente(_Str_ccliente, _G_Str_Cguiadesp))
            {
                Cursor = Cursors.Default;
                MessageBox.Show("Disculpe, el documento tiene un pago procesado por parte de su casa matriz, solo puede procesar pagos con el código de la casa matriz... verifique...", "Requerimiento", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            //Llamamos al Formulario de Modo Modal
            var _Frm = new Frm_RC_DocumentosClientes(_G_Str_Cguiadesp, _Str_ccliente, Cobranza.TiposEstadoRelacion.EstadoPagoNueva);

            _Frm.ShowDialog();

            _Frm.Dispose();
            _Frm = null;

            //Recargamos el Grid de Clientes
            _Mtd_CargarClientes(_G_Str_Cguiadesp);

            //Coloreamos
            _Mtd_ColorearClientes(_G_Str_Cguiadesp, true);
        }
Beispiel #2
0
        private void _Dg_Grid_Clientes_RowHeaderMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            //Llamada de Edicion a Formularios desarrollados por Angel
            //Variables a Pasar
            var _Str_ccliente = Convert.ToString(_Dg_Grid_Clientes.Rows[_Dg_Grid_Clientes.CurrentCell.RowIndex].Cells["Cliente"].Value);

            //Verificamos si se permite cargar la cobranza del cliente
            if (!Frm_RC_CobrosContraCamion._Mtd_EsPermitidoCargarCobranzaCliente(_Str_ccliente, _G_Str_Cguiddesp.ToString(CultureInfo.InvariantCulture)))
            {
                Cursor = Cursors.Default;
                MessageBox.Show("Disculpe, el documento tiene un pago procesado por parte de su casa matriz, solo puede procesar pagos con el código de la casa matriz... verifique...", "Requerimiento", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            //Verificamos
            Int64 _Int_ccliente           = 0;
            var   _Bol_ConversionCorrecta = Int64.TryParse(_Str_ccliente, out _Int_ccliente);

            if (!_Bol_ConversionCorrecta)
            {
                return;
            }
            //Llamamos al Formulario de Modo Modal
            var _Frm = new Frm_RC_DocumentosClientes(_G_Str_Cguiddesp.ToString(CultureInfo.InvariantCulture), _Str_ccliente, Cobranza.TiposEstadoRelacion.EstadoPagoEditando);

            _Frm.ShowDialog();
            //Verificamos el estado de la guia
            Cursor = Cursors.WaitCursor;
            var _Bool_GuiaVerificada = Clases._Cls_RutinasGuiasRelacionesCobranza._Mtd_EsValidaCobranza(Frm_Padre._Str_GroupComp, _G_Str_Cguiddesp.ToString(CultureInfo.InvariantCulture));

            if (!_Bool_GuiaVerificada)
            {
                //Desmarcamos la guia como cobrada
                var _Str_Cadena = "update TGUIADESPACHOM set cguiacobrada='0' where ((TGUIADESPACHOM.cgroupcomp='" + Frm_Padre._Str_GroupComp + "') and (TGUIADESPACHOM.cguiadesp='" + _G_Str_Cguiddesp + "'));";
                Program._MyClsCnn._mtd_conexion._Mtd_EjecutarSentencia(_Str_Cadena);
                Cursor = Cursors.Default;
                //Cerramos
                Close();
            }
            else
            {
                Cursor = Cursors.WaitCursor;
                //Asignamos los codigos de vendedor
                _Cls_RutinasGuiasRelacionesCobranza._Mtd_AsignarCodigosDeVendedor(Frm_Padre._Str_GroupComp, _G_Str_Cguiddesp.ToString(CultureInfo.InvariantCulture));

                //Recargamos el resumen
                _Mtd_CargarResumen(_G_Str_Cguiddesp);
                Cursor = Cursors.Default;
            }
        }
Beispiel #3
0
        private void _Btn_Guardar_Click(object sender, EventArgs e)
        {
            double _Dbl_MontoImpuesto       = 0;
            double _Dbl_MontoIntroducido    = 0;
            double _Dbl_MontoPorcentaje     = 0;
            double _Dbl_MontoMaximoImpuesto = 0;
            double _Dbl_MontoTolerancia     = 0;

            if (_Cmb_Factura.SelectedIndex == 0)
            {
                MessageBox.Show
                (
                    "Debe seleccionar una factura.",
                    "Advertencia",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                );

                _Cmb_Factura.Focus();

                return;
            }

            if (_Txt_NumeroControl.Text.Trim() == "")
            {
                MessageBox.Show
                (
                    "Indica el número de control de la factura.",
                    "Advertencia",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                );

                _Txt_NumeroControl.Focus();

                return;
            }
            if (_Txt_NumeroControl.Text.Trim() != _G_Str_NumeroDeControl)
            {
                MessageBox.Show
                (
                    "El número de control que introdujo no corresponde con el de la factura.",
                    "Advertencia",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                );

                _Txt_NumeroControl.Focus();

                return;
            }

            var _Str_Numeroretencion = _Txt_NumeroRetencion_Izquierda.Text + _Txt_NumeroRetencion_Derecha.Text.Trim();

            if (_Str_Numeroretencion == "")
            {
                MessageBox.Show
                (
                    "Indica el número de retención de la factura.",
                    "Advertencia",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                );

                _Txt_NumeroRetencion_Derecha.Focus();

                return;
            }

            if (_Str_Numeroretencion.Length != 14)
            {
                MessageBox.Show
                (
                    "El número de la retención debe tener 14 dígitos.",
                    "Advertencia",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                );

                _Txt_NumeroRetencion_Derecha.Focus();

                return;
            }

            if (_Dtp_Fecha.Value.Date > DateTime.Now.Date)
            {
                MessageBox.Show
                (
                    "La fecha no puede ser posterior al día de hoy.",
                    "Advertencia",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                );

                _Dtp_Fecha.Focus();

                return;
            }

            if ((_Txt_Monto.Tag.ToString() == "") || (_Txt_Monto.Tag.ToString() == "0"))
            {
                MessageBox.Show
                (
                    "El monto es incorrecto o no puede ser cero.",
                    "Advertencia",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                );

                _Txt_Monto.Focus();

                return;
            }

            if ((_G_Enum_EstadoRetencion == TiposEstadoRetencion.EstadoRetencionNuevo) && (Frm_RC_Pago._Mtd_ExisteRetencionGuardada(_G_Str_Compañia, _G_Str_cguia, _Cmb_Factura.SelectedValue.ToString(), _G_Str_IdPago)))
            {
                MessageBox.Show
                (
                    "La factura ya tiene una retención aplicada.",
                    "Advertencia",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                );

                _Cmb_Factura.Focus();

                return;
            }
            if ((_G_Enum_EstadoRetencion == TiposEstadoRetencion.EstadoRetencionNuevo) && (_Mtd_TieneRetencionEnGrid(_Cmb_Factura.SelectedValue.ToString())))
            {
                MessageBox.Show
                (
                    "La factura ya tiene una retención aplicada.",
                    "Advertencia",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                );

                _Cmb_Factura.Focus();

                return;
            }

            //Valores
            _Dbl_MontoImpuesto       = Frm_RC_Pago._Mtd_ObtenerImpuesto(_G_Str_Compañia, _Cmb_Factura.SelectedValue.ToString());
            _Dbl_MontoPorcentaje     = Frm_RC_Pago._Mtd_ObtenerPorcentajeRetencionImpuesto(_G_Str_Compañia);
            _Dbl_MontoMaximoImpuesto = _Dbl_MontoImpuesto * (_Dbl_MontoPorcentaje / 100);
            _Dbl_MontoIntroducido    = Convert.ToDouble(_Txt_Monto.Tag.ToString());
            _Dbl_MontoTolerancia     = Frm_RC_DocumentosClientes._Mtd_ObtenerLimiteFaltante(Frm_Padre._Str_Comp);


            //redondeos
            _Dbl_MontoMaximoImpuesto = Math.Round(_Dbl_MontoMaximoImpuesto, 2);
            _Dbl_MontoTolerancia     = Math.Round(_Dbl_MontoTolerancia, 2);


            if (_Dbl_MontoIntroducido > (_Dbl_MontoMaximoImpuesto + _Dbl_MontoTolerancia))
            {
                MessageBox.Show
                (
                    "El monto de la retención es mayor al monto máximo permitido de retención de impuesto de la factura.",
                    "Advertencia",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error
                );

                _Txt_Monto.Focus();

                return;
            }
            //else if (_Dbl_MontoImpuesto == 0)
            //{
            //    MessageBox.Show
            //    (
            //        "La factura no tiene impuesto, no se puede agregar la retención.",
            //        "Advertencia",
            //        MessageBoxButtons.OK,
            //        MessageBoxIcon.Error
            //    );

            //    _Txt_Monto.Focus();

            //    return;
            //}

            if (_G_Enum_EstadoRetencion == TiposEstadoRetencion.EstadoRetencionNuevo)
            {
                _Mtd_CargarRetencion
                (
                    _Cmb_Factura.SelectedValue.ToString(),
                    _Str_Numeroretencion,
                    _Dtp_Fecha.Value,
                    _Txt_NumeroControl.Text,
                    Convert.ToDouble(_Txt_Monto.Tag.ToString())
                );
            }
            else if (_G_Enum_EstadoRetencion == TiposEstadoRetencion.EstadoRetencionEditar)
            {
                _Mtd_ModificarRetencion
                (
                    _Cmb_Factura.SelectedValue.ToString(),
                    _Str_Numeroretencion,
                    _Dtp_Fecha.Value,
                    Convert.ToDouble(_Txt_Monto.Tag.ToString())
                );
            }
        }