Exemplo n.º 1
0
        protected void GridViewDatosFactura_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {
            string idFactura    = GridViewDatosFactura.DataKeys[e.RowIndex].Values["id_factura"].ToString();
            string numero       = ((TextBox)GridViewDatosFactura.Rows[e.RowIndex].FindControl("txbNumeroFacturaEditar")).Text;
            string fechaEmision = ((TextBox)GridViewDatosFactura.Rows[e.RowIndex].FindControl("txbEmisionFacturaEditar")).Text;
            string fechaEntrega = ((TextBox)GridViewDatosFactura.Rows[e.RowIndex].FindControl("txbEntregaFacturaEditar")).Text;
            string monto        = ((TextBox)GridViewDatosFactura.Rows[e.RowIndex].FindControl("txbMontoFacturaEditar")).Text;
            string moneda       = ((DropDownList)GridViewDatosFactura.Rows[e.RowIndex].FindControl("ddlMonedaFacturaEditar")).SelectedItem.Value;

            long     idFactura_    = Convert.ToInt64(idFactura);
            long     numero_       = Convert.ToInt64(numero);
            DateTime fechaEmision_ = DateTime.ParseExact(fechaEmision, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture);
            DateTime fechaEntrega_ = DateTime.ParseExact(fechaEntrega, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture);
            double   monto_        = Convert.ToDouble(monto);
            Int16    moneda_       = Convert.ToInt16(moneda);

            double tipo_cambio_ = 1.0;

            double.TryParse(txbTipoCambio.Text, out tipo_cambio_);

            LiquidacionICRL.TipoLiquidacion001Factura factura = new LiquidacionICRL.TipoLiquidacion001Factura();
            int.TryParse(Request.QueryString["idflujo"], out IdFlujo);
            factura.id_flujo       = IdFlujo;
            factura.id_factura     = idFactura_;
            factura.numero_factura = numero_;
            factura.fecha_emision  = fechaEmision_;
            factura.fecha_entrega  = fechaEntrega_;
            factura.monto          = monto_;
            factura.id_moneda      = moneda_;
            factura.tipo_cambio    = tipo_cambio_;
            bool operacionExitosa = LiquidacionICRL.ActualizarLiquidacion001Factura(factura);

            if (operacionExitosa)
            {
                //string numeroViejo = e.OldValues[""]

                GridViewDatosFactura.EditIndex = -1;
                ActualizarAjusteMenor("0");                                                                                      //cada vez que se actualiza una factura se actualiza el dato de ajuste
                ActualizarDatosOrden(((Label)GridViewDatosFactura.Rows[e.RowIndex].FindControl("lblNumeroFacturaEditar")).Text); //cada vez que se actualiza una factura, se actualiza la orden asociada
                RecuperarDatosFacturas();
                RecuperarDatosOrdenes();
                LlenarMenuFacturas();
                RecuperarDatosLiquidacion();

                LabelMensaje.Visible = false;
            }
            else
            {
                LabelMensaje.Visible = true;
                LabelMensaje.Text    = "Error al guardar la factura!";
            }
        }
Exemplo n.º 2
0
        private void ActualizarAjusteMenor(string monto)
        {
            LiquidacionICRL.TipoTraerLiquidacion001Factura facturas            = LiquidacionICRL.TraerLiquidacion001Factura(IdFlujo);
            LiquidacionICRL.TipoLiquidacion001Factura      registroAjusteMenor = facturas.Facturas.Find(x => x.numero_factura == 0);
            double monto_ = Convert.ToDouble(monto);

            if (registroAjusteMenor == null)
            {//Se crea el registro de AJUSTE MENOR
                registroAjusteMenor               = new LiquidacionICRL.TipoLiquidacion001Factura();
                registroAjusteMenor.id_flujo      = IdFlujo;
                registroAjusteMenor.monto         = monto_;
                registroAjusteMenor.observaciones = "(ajuste menor)";
                registroAjusteMenor.asociada      = true;
                LiquidacionICRL.RegistrarLiquidacion001Factura(registroAjusteMenor);
            }
            else
            {//Se actualiza el registro de AJUSTE MENOR
                registroAjusteMenor.monto = monto_;
                LiquidacionICRL.ActualizarLiquidacion001Factura(registroAjusteMenor);
            }
        }
Exemplo n.º 3
0
        protected void btnGuardarLiquidacion_Click(object sender, EventArgs e)
        {
            bool operacionExitosa = true;

            foreach (GridViewRow row in GridViewDatosLiquidacion.Rows)
            {
                if (row.RowType == DataControlRowType.DataRow)
                {
                    int.TryParse(Request.QueryString["idflujo"], out IdFlujo);
                    string idFactura     = ((Label)row.FindControl("lblId")).Text;
                    string numero        = ((Label)row.FindControl("lblNumero")).Text;
                    string fechaEmision  = ((Label)row.FindControl("lblFechaEmision")).Text;
                    string fechaEntrega  = ((Label)row.FindControl("lblFechaRecepcion")).Text;
                    string monto         = ((Label)row.FindControl("lblLiquidacionBs")).Text;
                    string moneda        = ((Label)row.FindControl("lblMoneda")).Text;
                    string observaciones = ((TextBox)row.FindControl("txbObservaciones")).Text;
                    bool   asociada      = true;
                    double tipo_cambio_  = 1.0;
                    double.TryParse(txbTipoCambio.Text, out tipo_cambio_);

                    if (!string.IsNullOrWhiteSpace(idFactura))
                    {//actualizar facturas liquidadas
                        long     idFactura_    = Convert.ToInt64(idFactura);
                        long     numero_       = Convert.ToInt64(numero);
                        DateTime fechaEmision_ = DateTime.ParseExact(fechaEmision, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture);
                        DateTime fechaEntrega_ = DateTime.ParseExact(fechaEntrega, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture);
                        double   monto_        = Convert.ToDouble(monto);
                        Int16    moneda_       = Convert.ToInt16(moneda);

                        LiquidacionICRL.TipoLiquidacion001Factura factura = new LiquidacionICRL.TipoLiquidacion001Factura();
                        factura.id_flujo       = IdFlujo;
                        factura.id_factura     = idFactura_;
                        factura.numero_factura = numero_;
                        factura.fecha_emision  = fechaEmision_;
                        factura.fecha_entrega  = fechaEntrega_;
                        factura.monto          = monto_;
                        factura.id_moneda      = moneda_;
                        factura.observaciones  = observaciones;
                        factura.asociada       = asociada;
                        factura.tipo_cambio    = tipo_cambio_;

                        operacionExitosa = LiquidacionICRL.ActualizarLiquidacion001Factura(factura);

                        if (!operacionExitosa)
                        {
                            break;
                        }
                    }
                    else
                    {//actualizar ajuste menor
                        ActualizarAjusteMenor(monto);
                    }
                }
            }

            LabelMensaje.Visible = true;
            if (operacionExitosa)
            {
                btnGuardarLiquidacion.Enabled = false;
                btnAjusteMenor.Enabled        = false;
                btnLiquidacionTotal.Enabled   = true;
                LabelMensaje.Text             = "Liquidación guardada exitosamente!";
            }
            else
            {
                btnGuardarLiquidacion.Enabled = true;
                LabelMensaje.Text             = "Error al guardar la liquidación!";
            }
        }