/// <summary>
        /// Método Público encargado de Guardar los Conceptos
        /// </summary>
        /// <returns></returns>
        public RetornoOperacion GuardarFacturaConcepto()
        {   //Declarando Objeto de Retorno
            RetornoOperacion result = new RetornoOperacion();

            //Validando que exista una Factura
            if (this.idFactura != 0)
            {
                //Validando que exista una Relación en Facturación Electronica
                if (FacturadoFacturacion.ObtieneFacturacionElectronicaActiva(this.idFactura) == 0)
                {
                    //Validando que exista un Concepto
                    if (gvConceptosFacturaConcepto.SelectedIndex != -1)
                    {
                        //Instanciando Registro
                        using (FacturadoConcepto objFacturadoConcepto = new FacturadoConcepto(Convert.ToInt32(gvConceptosFacturaConcepto.SelectedDataKey["Id"])))
                        {   //Editando Valores del Concepto
                            result = objFacturadoConcepto.EditaFacturaConcepto(objFacturadoConcepto.id_factura, Convert.ToDecimal(txtCantidadFacturaConcepto.Text == "" ? "0" : txtCantidadFacturaConcepto.Text),
                                                                               Convert.ToByte(ddlUnidadFacturaConcepto.SelectedValue), txtIdentificadorFacturaConcepto.Text, Convert.ToInt32(ddlConceptoCobroFacturaConcepto.SelectedValue),
                                                                               Convert.ToDecimal(txtValorUniFacturaConcepto.Text == "" ? "0" : txtValorUniFacturaConcepto.Text), 0, Convert.ToByte(ddlImpuestoRetenido.SelectedValue),
                                                                               Convert.ToDecimal(txtTasaImpRetFacturaConcepto.Text == "" ? "0" : txtTasaImpRetFacturaConcepto.Text), Convert.ToByte(ddlImpuestoTrasladado.SelectedValue),
                                                                               Convert.ToDecimal(txtTasaImpTraFacturaConcepto.Text == "" ? "0" : txtTasaImpTraFacturaConcepto.Text),
                                                                               objFacturadoConcepto.id_cargo_recurrente, ((Usuario)Session["usuario"]).id_usuario);
                        }
                    }
                    else
                    {
                        //Insertando Concepto
                        result = FacturadoConcepto.InsertaFacturaConcepto(this.idFactura, Convert.ToDecimal(txtCantidadFacturaConcepto.Text == "" ? "0" : txtCantidadFacturaConcepto.Text),
                                                                          Convert.ToByte(ddlUnidadFacturaConcepto.SelectedValue), txtIdentificadorFacturaConcepto.Text, Convert.ToInt32(ddlConceptoCobroFacturaConcepto.SelectedValue),
                                                                          Convert.ToDecimal(txtValorUniFacturaConcepto.Text == "" ? "0" : txtValorUniFacturaConcepto.Text), 0, Convert.ToByte(ddlImpuestoRetenido.SelectedValue),
                                                                          Convert.ToDecimal(txtTasaImpRetFacturaConcepto.Text == "" ? "0" : txtTasaImpRetFacturaConcepto.Text), Convert.ToByte(ddlImpuestoTrasladado.SelectedValue),
                                                                          Convert.ToDecimal(txtTasaImpTraFacturaConcepto.Text == "" ? "0" : txtTasaImpTraFacturaConcepto.Text),
                                                                          0, ((Usuario)Session["usuario"]).id_usuario);
                    }
                }
                else
                {
                    //Inicializando Contructor con Excepcion Personalizada
                    result = new RetornoOperacion("La Factura esta Registrada ó Timbrada en Facturación Electronica");
                }
            }
            else
            {
                //Inicializando Contructor con Excepcion Personalizada
                result = new RetornoOperacion("Debe existir la factura");
            }
            //Validando que la Operación haya sido exitosa
            if (result.OperacionExitosa)
            {   //Inicializando Reporte
                inicializaReporteConceptos(this.idFactura);
                //Limpiando Controles
                limpiaControlesConcepto();
            }
            //Devolviendo Resultado Obtenido
            return(result);
        }
Exemple #2
0
        /// <summary>
        /// Método Público encargado de Eliminar los Conceptos
        /// </summary>
        /// <returns></returns>
        public RetornoOperacion EliminaFacturaConcepto()
        {
            //Declarando Objeto de Operacion
            RetornoOperacion resultCon = new RetornoOperacion();

            //Validando que existan Registros
            if (gvConceptosFacturaConcepto.DataKeys.Count > 0)
            {
                //Instanciando Concepto
                using (FacturadoConcepto fc = new FacturadoConcepto(Convert.ToInt32(gvConceptosFacturaConcepto.SelectedDataKey["Id"])))
                {
                    //Validando que exista una Relación en Facturación Electronica 3.3
                    if (FacturadoFacturacion.ObtieneFacturacionElectronicaActivaV3_3(this.idFactura) == 0)
                    {
                        //Validando que exista una Relación en Facturación Electronica
                        if (FacturadoFacturacion.ObtieneFacturacionElectronicaActiva(this.idFactura) == 0)
                        {
                            //Deshabilitando Registro
                            resultCon = fc.DeshabilitaFacturaConcepto(((Usuario)Session["usuario"]).id_usuario);
                        }
                        else
                        {
                            //Inicializando Contructor con Excepcion Personalizada
                            resultCon = new RetornoOperacion("La Factura esta Registrada en Facturación Electronica v3.2");
                        }
                    }
                    else
                    {
                        //Inicializando Contructor con Excepcion Personalizada
                        resultCon = new RetornoOperacion("La Factura esta Registrada en Facturación Electronica v3.3");
                    }

                    //Validando que la Operacion fuera exitosa
                    if (resultCon.OperacionExitosa)
                    {
                        //Limpiando Controles
                        limpiaControlesConcepto();
                        //Obteniendo Conceptos
                        inicializaReporteConceptos(this.idFactura);
                    }
                }
            }
            else
            {
                //Inicializando Parametros
                resultCon = new RetornoOperacion("No hay Conceptos");
            }

            //Actualizando encabezado de Factura
            return(resultCon);
        }