Пример #1
0
        //Editar
        protected void btnEdit_Click(object sender, System.EventArgs e)
        {
            if (ddlCreditoEditar.Items.Count == 0 || ddlCuentaEditar.Items.Count == 0)
            {
                Response.Write("<script language:javascript>alert('Debe seleccionar el número y la cuenta');</script>");
                return;
            }
            pnlCredito.Visible      = true;
            pnlSeleccion.Visible    = false;
            btnEdit.Enabled         = false;
            ddlCuenta.SelectedIndex = ddlCuenta.Items.IndexOf(ddlCuenta.Items.FindByValue(ddlCuentaEditar.SelectedValue));
            ddlCuenta.Enabled       = false;
            txtNumero.Text          = ddlCreditoEditar.SelectedValue;
            txtNumero.Enabled       = false;

            ObligacionFinanciera obligacion = new ObligacionFinanciera(ddlCuentaEditar.SelectedValue, ddlCreditoEditar.SelectedValue);

            obligacion.ConsultarObligacion();
            txtFechaDesemb.Text          = obligacion.fechaDesembolso.ToString("yyyy-MM-dd");
            ddlDocumento.SelectedIndex   = ddlDocumento.Items.IndexOf(ddlDocumento.Items.FindByValue(obligacion.documento));
            ddlDocumento.Enabled         = false;
            lblNumDocumento.Text         = obligacion.numDocumento;
            ddlAlmacen.SelectedIndex     = ddlAlmacen.Items.IndexOf(ddlAlmacen.Items.FindByValue(obligacion.almacen));
            txtMontoPesos.Text           = obligacion.montoPesos.ToString("#,##0.##");
            txtMontoDolares.Text         = obligacion.montoDolares.ToString("#,##0.##");
            txtNumCuotas.Text            = obligacion.numCuotas.ToString("#,##0.##");
            txtMontoPagado.Text          = obligacion.montoPagado.ToString("#,##0.##");
            txtInteresCausado.Text       = obligacion.interesCausado.ToString("#,##0.##");
            txtInteresPagado.Text        = obligacion.interesPagado.ToString("#,##0.##");
            ddlTipoCredito.SelectedIndex = ddlTipoCredito.Items.IndexOf(ddlTipoCredito.Items.FindByValue(obligacion.tipoCredito));
            ddlTipoTasa.SelectedIndex    = ddlTipoTasa.Items.IndexOf(ddlTipoTasa.Items.FindByValue(obligacion.tasaCredito));
            txtInteresCredito.Text       = obligacion.tasaInteres.ToString("#,##0.##");
            ddlCondicion.SelectedIndex   = ddlCondicion.Items.IndexOf(ddlCondicion.Items.FindByValue(obligacion.condicion));
            txtDetalle.Text      = obligacion.detalle;
            txtAutoriza.Text     = obligacion.autoriza;
            txtCuentaDesemP.Text = obligacion.montoACuenta.ToString("#,##0.##");

            dtPagos       = obligacion.dtPagos;
            dtDesembolsos = obligacion.dtDesembolsos;
            Bind();
        }
Пример #2
0
        protected void btnAceptar_Click(object sender, System.EventArgs e)
        {
            int ano = 0, mes = 0;

            //Validaciones
            try{
                ano = Convert.ToInt32(ddlAno.SelectedValue);
                mes = Convert.ToInt32(ddlMes.SelectedValue);
            }
            catch {
                Utils.MostrarAlerta(Response, "Año o mes no válido");
                return;
            }
            for (int n = 0; n < dtObligaciones.Rows.Count; n++)
            {
                if (DBFunctions.RecordExist(
                        "SELECT MOBL_NUMERO FROM DOBLIGACIONFINANCIERACAUSACION " +
                        "WHERE MOBL_NUMERO='" + dtObligaciones.Rows[n]["MOBL_NUMERO"] + "' AND " +
                        "PANO_ANO=" + ddlAno.SelectedValue + " AND PMES_MES=" + ddlMes.SelectedValue + ";"
                        ))
                {
                    Utils.MostrarAlerta(Response, "Ya ha sido causada la obligación número " + dtObligaciones.Rows[n]["MOBL_NUMERO"] + " para el periodo especificado");
                    return;
                }
            }

            ObligacionFinanciera obligacion = new ObligacionFinanciera();

            obligacion.CausarInteres(ano, mes, ddlTipoDocumento.SelectedValue, txtObservacion.Text, ddlAlmacen.SelectedValue, dtObligaciones);
            if (obligacion.error.Length > 0)
            {
                Utils.MostrarAlerta(Response, "No se pudo realizar el proceso");
                lblError.Text = obligacion.error;
                return;
            }
            else
            {
                Response.Redirect(ConfigurationManager.AppSettings["MainIndexPage"] + "?process=Tesoreria.CausacionObligacionesFinancieras&path=" + Request.QueryString["path"] + "&upd=1");
            }
        }
Пример #3
0
        protected void btnAceptar_Click(object sender, System.EventArgs e)
        {
            //Validaciones
            string   numero = txtNumero.Text.Trim();
            string   observacion = txtDetalle.Text.Trim();
            string   autoriza = txtAutoriza.Text.Trim();
            double   montoPeso = 0, montoDolar = 0, montoPagado = 0, intereses = 0, aCuenta = 0;
            int      numCuotas = 0;
            DateTime dtFecha;

            if (numero.Length == 0)
            {
                Response.Write("<script language:javascript>alert('Debe ingresar el número del pagaré');</script>");
                return;
            }
            if (autoriza.Length == 0)
            {
                Response.Write("<script language:javascript>alert('Debe ingresar el nombre de la persona que autoriza');</script>");
                return;
            }
            try{
                dtFecha = Convert.ToDateTime(txtFechaDesemb.Text);
            }
            catch {
                Response.Write("<script language:javascript>alert('Fecha no válida');</script>");
                return;
            }
            try{ montoPeso = Convert.ToDouble(txtMontoPesos.Text); }
            catch { Response.Write("<script language:javascript>alert('El monto en pesos no es válido');</script>"); return; }
            try{ montoDolar = Convert.ToDouble(txtMontoDolares.Text); }
            catch { Response.Write("<script language:javascript>alert('El monto en dólares no es válido');</script>"); return; }
            try{ numCuotas = Convert.ToInt16(txtNumCuotas.Text); }
            catch { Response.Write("<script language:javascript>alert('El número de cuotas no es válido');</script>"); return; }
            try{ intereses = Convert.ToDouble(txtInteresCredito.Text); }
            catch { Response.Write("<script language:javascript>alert('El interés no es válido');</script>"); return; }
            try{ aCuenta = Convert.ToDouble(txtCuentaDesemP.Text); }
            catch { Response.Write("<script language:javascript>alert('El valor a la cuenta en los desembolsos no es válido');</script>"); return; }
            if (intereses > 100)
            {
                Response.Write("<script language:javascript>alert('El interés no es válido');</script>");
                return;
            }
            if (dtPagos.Rows.Count != numCuotas)
            {
                Response.Write("<script language:javascript>alert('El número de pagos registrados no es igual al número de cuotas');</script>");
                return;
            }
            double totalCapital = 0;

            for (int n = 0; n < dtPagos.Rows.Count; n++)
            {
                totalCapital += Convert.ToDouble(dtPagos.Rows[n]["MOBL_MONTPESOS"]);
            }
            if (Math.Abs(totalCapital - montoPeso) > 0.01)
            {
                Response.Write("<script language:javascript>alert('La sumatoria de los capitales de los pagos no es igual al monto en pesos');</script>");
                return;
            }
            double totalDebitos = 0, totalCreditos = 0;

            for (int n = 0; n < dtDesembolsos.Rows.Count; n++)
            {
                totalDebitos  += Convert.ToDouble(dtDesembolsos.Rows[n]["DOBL_VALODEBI"]);
                totalCreditos += Convert.ToDouble(dtDesembolsos.Rows[n]["DOBL_VALOCRED"]);
            }
            if (Math.Abs((totalDebitos - totalCreditos + aCuenta) - montoPeso) > 0.01)
            {
                Response.Write("<script language:javascript>alert('Los débitos menos los créditos mas el saldo a la cuenta en los desembolsos deben ser iguales al monto en pesos');</script>");
                return;
            }
            ObligacionFinanciera obligacion = new ObligacionFinanciera(
                ddlCuenta.SelectedValue, numero, dtFecha, ddlDocumento.SelectedValue, lblNumDocumento.Text, ddlAlmacen.SelectedValue,
                montoPeso, montoDolar, numCuotas, montoPagado, 0, 0, ddlTipoCredito.SelectedValue, ddlTipoTasa.SelectedValue,
                intereses, ddlCondicion.SelectedValue, observacion, autoriza, aCuenta, dtPagos, dtDesembolsos
                );

            if (!btnNuevo.Enabled)
            {
                if (DBFunctions.RecordExist("SELECT * FROM MOBLIGACIONFINANCIERA " +
                                            "WHERE MOBL_NUMERO='" + numero + "';"))
                {
                    Response.Write("<script language:javascript>alert('Ya fue registrado el número de crédito');</script>");
                    return;
                }
                obligacion.GuardarObligacion();
            }
            else
            {
                if (DBFunctions.RecordExist("SELECT * FROM DOBLIGACIONFINANCIERACAUSACION " +
                                            "WHERE MOBL_NUMERO='" + numero + "';") ||
                    DBFunctions.RecordExist("SELECT * FROM DOBLIGACIONFINANCIERAPAGOOBLI " +
                                            "WHERE MOBL_NUMERO='" + numero + "';"))
                {
                    Response.Write("<script language:javascript>alert('Ya se han realizado causaciones de la obligación o comprobantes no puede editar la obligación');</script>");
                    return;
                }
                obligacion.ActualizarObligacion();
            }

            if (obligacion.error.Length > 0)
            {
                lblInfo.Text = obligacion.error;
            }
            else
            {
                // contabilización ON LINE
                contaOnline.contabilizarOnline(obligacion.documento.ToString(), Convert.ToInt32(obligacion.numDocumento.ToString()), Convert.ToDateTime(obligacion.fechaDesembolso), "");
                Response.Redirect(ConfigurationManager.AppSettings["MainIndexPage"] + "?process=Tesoreria.ObligacionesFinancieras&path=" + Request.QueryString["path"] + "&upd=1&prf=" + obligacion.documento + "&num=" + obligacion.numDocumento);
            }
        }