Exemple #1
0
        private void ImprimirFactura(int idFactura)
        {
            List <EPI_SP_LISTARFACTURAEDICIONResult> lstFactura = BLFacturacion.GetListaFacturaEdicion(idFactura);

            //if (lstFactura.Count < 1) return;

            string mensaje = "";

            if (lstFactura[0].BIT_ANULADA == true)
            {
                mensaje = "El documento está anulado, no puede imprimir";
            }
            if (lstFactura[0].BIT_IMPRESA == true)
            {
                mensaje = "El documento ya se encuentra impreso, no puede imprimir, solo visualizar B01 y B03";
            }


            XR_FacturaVenta XR_Factura = new XR_FacturaVenta();

            foreach (Parameter p in XR_Factura.Parameters)
            {
                p.Visible = false;
            }


            List <BEFacturaDetalle> lstDetalleFactura = (from df in lstFactura
                                                         where df.EPI_NUM_IDFACTURADETALLE != null
                                                         select new BEFacturaDetalle
            {
                EPI_NUM_IDFACTURADETALLE = Convert.ToInt32(df.EPI_NUM_IDFACTURADETALLE ?? 0),
                EPI_INT_ITEM = df.EPI_INT_ITEM ?? 0,
                EPI_INT_IDPRODUCTO = df.EPI_INT_IDPRODUCTO ?? 0,
                EPI_NUM_CANTIDAD = df.EPI_NUM_CANTIDAD ?? 0,
                EPI_VCH_DESCRIPCION = df.EPI_VCH_DESCRIPCION,
                EPI_INT_IDUNIDADMEDIDA = df.EPI_INT_IDUNIDADMEDIDA ?? 0,
                EPI_VCH_UNIDADMEDIDA = df.EPI_VCH_UNIDADMEDIDA,
                EPI_INT_IDIMPUESTO = df.EPI_INT_IDIMPUESTO ?? 0,
                EPI_NUM_VALORUNITARIO = Math.Round(Convert.ToDecimal(df.EPI_NUM_VALORUNITARIO), 2, MidpointRounding.AwayFromZero),
                EPI_NUM_SUBTOTAL = Math.Round(Convert.ToDecimal(df.EPI_NUM_SUBTOTAL), 2, MidpointRounding.AwayFromZero),
                EPI_NUM_IGVVENTA = Math.Round(Convert.ToDecimal(df.EPI_NUM_IGVVENTA), 2, MidpointRounding.AwayFromZero),
                EPI_NUM_IMPORTETOTAL = Math.Round(Convert.ToDecimal(df.EPI_NUM_IMPORTETOTAL), 2, MidpointRounding.AwayFromZero),
                EPI_BIT_ACTIVO = df.EPI_BIT_ACTIVO ?? false,
                EPI_VCH_CLIENTEENTIDAD = lstFactura[0].PERSONAFACTURARAZONSOCIAL,
                EPI_VCH_DIRECCIONENTIDAD = lstFactura[0].PERSONAFACTURADIRECCION,
                EPI_VCH_RUC = lstFactura[0].PERSONAFACTURANUMERODOCUMENTO,
                EPI_VCH_NUMEROENLETRAS = lstFactura[0].TOTALENLETRAS,
                EPI_DAT_FECHAEMISION = Convert.ToDateTime(lstFactura[0].FECHADESDE.ToString()),
            }).ToList();

            XR_Factura.InitData(lstDetalleFactura);

            ReportPrintTool tool = new ReportPrintTool(XR_Factura);

            //tool.Print();
            tool.ShowPreview();


            BLFacturacion.MarcaImpresa(idFactura, true);
        }
Exemple #2
0
        private void AnularFactura(int currentIdFactura)
        {
            TBL_EPI_FACTURA objFac = BLFacturacion.GetFactura(currentIdFactura);

            if (objFac.EPI_BIT_ANULADA == true)
            {
                XtraMessageBox.Show("El documento está anulado, no puede volver anular", "SISTEMAS");
                return;
            }

            if (objFac.EPI_BIT_IMPRESA == false)
            {
                XtraMessageBox.Show("El documento no está impreso, no puede anular", "SISTEMAS");
                return;
            }

            if (objFac.EPI_BIT_ANULADA == false)
            {
                DialogResult result = XtraMessageBox.Show("Seguro de anular el documento " + objFac.EPI_VCH_SERIEFACTURA + '-' + objFac.EPI_VCH_NUMERODOCUMENTO + " ?", "Confirmar", MessageBoxButtons.YesNo);

                if (result == DialogResult.Yes)
                {
                    XtraMessageBox.Show(BLFacturacion.AnulaFactura(Convert.ToInt32(currentIdFactura)));
                }
            }
        }
Exemple #3
0
        private void BuscarFactura()
        {
            int idTipoDoc = Convert.ToInt32(searchLookUpTipoDocumento.EditValue);
            int idCliente = Convert.ToInt32(searchLookUpCliente.EditValue);

            List <EPI_SP_LISTAFACTURAResult> lstFactura = BLFacturacion.GetListaFactura(idTipoDoc, idCliente, txtSerie.Text, txtCriterio.Text, Convert.ToDateTime(deFechaDesde.EditValue), Convert.ToDateTime(deFechaHasta.EditValue));

            BaseForm.CargarGridControl(gridControl1, lstFactura);
        }
        private void InicializaEdicion(int idFactura)
        {
            List <EPI_SP_LISTARFACTURAEDICIONResult> lstFactura = BLFacturacion.GetListaFacturaEdicion(idFactura);

            if (lstFactura.Count <= 0)
            {
                return;
            }

            searchLookUpTipoDocumento.EditValue = lstFactura[0].IDTIPODOCUMENTOCONTABLE;
            //txtSerie.Text = lstFactura[0].SERIEFACTURA;
            //txtCorrelativo.Text = lstFactura[0].NUMERODOCUMENTO.PadLeft(7, '0');
            searchLookUpMoneda.EditValue   = Convert.ToInt32(lstFactura[0].IDMONEDA);
            searchLookUpTipoPago.EditValue = Convert.ToInt32(lstFactura[0].IDTIPOPAGO);
            deFechaEmision.EditValue       = Convert.ToDateTime(lstFactura[0].FECHADESDE);
            deFechaVencimiento.EditValue   = Convert.ToDateTime(lstFactura[0].FECHAHASTA);
            searchLookUpCliente.EditValue  = lstFactura[0].PERSONAFACTURAIDENTIDAD;
            txtObservaciones.Text          = lstFactura[0].OBSERVACIONES;
            txtReferencia1.Text            = lstFactura[0].REFERENCIA1;
            txtReferencia2.Text            = lstFactura[0].REFERENCIA2;


            List <BEFacturaDetalle> lstDetalleFactura = (from df in lstFactura
                                                         where df.EPI_NUM_IDFACTURADETALLE != null
                                                         select new BEFacturaDetalle {
                EPI_NUM_IDFACTURADETALLE = Convert.ToInt32(df.EPI_NUM_IDFACTURADETALLE ?? 0),
                EPI_INT_ITEM = df.EPI_INT_ITEM ?? 0,
                EPI_INT_IDPRODUCTO = df.EPI_INT_IDPRODUCTO ?? 0,
                EPI_NUM_CANTIDAD = df.EPI_NUM_CANTIDAD ?? 0,
                EPI_VCH_DESCRIPCION = df.EPI_VCH_DESCRIPCION,
                EPI_INT_IDUNIDADMEDIDA = df.EPI_INT_IDUNIDADMEDIDA ?? 0,
                EPI_VCH_UNIDADMEDIDA = df.EPI_VCH_UNIDADMEDIDA,
                EPI_INT_IDIMPUESTO = df.EPI_INT_IDIMPUESTO ?? 0,
                EPI_NUM_VALORUNITARIO = Math.Round(Convert.ToDecimal(df.EPI_NUM_VALORUNITARIO), 2, MidpointRounding.AwayFromZero),
                EPI_NUM_SUBTOTAL = Math.Round(Convert.ToDecimal(df.EPI_NUM_SUBTOTAL), 2, MidpointRounding.AwayFromZero),
                EPI_NUM_IGVVENTA = Math.Round(Convert.ToDecimal(df.EPI_NUM_IGVVENTA), 2, MidpointRounding.AwayFromZero),
                EPI_NUM_IMPORTETOTAL = Math.Round(Convert.ToDecimal(df.EPI_NUM_IMPORTETOTAL), 2, MidpointRounding.AwayFromZero),
                EPI_BIT_ACTIVO = df.EPI_BIT_ACTIVO ?? false
            }).ToList();

            BaseForm.CargarGridControl(gridControl2, lstDetalleFactura);
        }
        private void btnGuardarImprimir_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            XtraReport1 XReport = new XtraReport1();

            foreach (Parameter p in XReport.Parameters)
            {
                p.Visible = false;
            }


            List <EPI_SP_LISTARFACTURAEDICIONResult> lstFactura = BLFacturacion.GetListaFacturaEdicion(IdFactura);

            List <BEFacturaDetalle> lstDetalleFactura = (from df in lstFactura
                                                         where df.EPI_NUM_IDFACTURADETALLE != null
                                                         select new BEFacturaDetalle
            {
                EPI_NUM_IDFACTURADETALLE = Convert.ToInt32(df.EPI_NUM_IDFACTURADETALLE ?? 0),
                EPI_INT_ITEM = df.EPI_INT_ITEM ?? 0,
                EPI_INT_IDPRODUCTO = df.EPI_INT_IDPRODUCTO ?? 0,
                EPI_NUM_CANTIDAD = df.EPI_NUM_CANTIDAD ?? 0,
                EPI_VCH_DESCRIPCION = df.EPI_VCH_DESCRIPCION,
                EPI_INT_IDUNIDADMEDIDA = df.EPI_INT_IDUNIDADMEDIDA ?? 0,
                EPI_VCH_UNIDADMEDIDA = df.EPI_VCH_UNIDADMEDIDA,
                EPI_INT_IDIMPUESTO = df.EPI_INT_IDIMPUESTO ?? 0,
                EPI_NUM_VALORUNITARIO = Math.Round(Convert.ToDecimal(df.EPI_NUM_VALORUNITARIO), 2, MidpointRounding.AwayFromZero),
                EPI_NUM_SUBTOTAL = Math.Round(Convert.ToDecimal(df.EPI_NUM_SUBTOTAL), 2, MidpointRounding.AwayFromZero),
                EPI_NUM_IGVVENTA = Math.Round(Convert.ToDecimal(df.EPI_NUM_IGVVENTA), 2, MidpointRounding.AwayFromZero),
                EPI_NUM_IMPORTETOTAL = Math.Round(Convert.ToDecimal(df.EPI_NUM_IMPORTETOTAL), 2, MidpointRounding.AwayFromZero),
                EPI_BIT_ACTIVO = df.EPI_BIT_ACTIVO ?? false
            }).ToList();

            XReport.InitData(lstDetalleFactura);

            ReportPrintTool tool = new ReportPrintTool(XReport);

            //tool.Print();
            tool.ShowPreview();
        }
        private void btnGuardar_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            try
            {
                StringBuilder sb = ValidaDatosFactura();
                if (!sb.ToString().Equals(""))
                {
                    XtraMessageBox.Show(sb.ToString(), "ERRORES A CORREGIR");
                    return;
                }



                TBL_EPI_FACTURA oFac = new TBL_EPI_FACTURA();

                oFac.EPI_INT_IDTIPODOCUMENTOCONTABLE = Convert.ToInt32(searchLookUpTipoDocumento.EditValue);
                oFac.EPI_VCH_SERIEFACTURA            = this.txtSerie.Text;
                oFac.EPI_VCH_NUMERODOCUMENTO         = this.txtCorrelativo.Text;

                oFac.EPI_INT_IDMONEDA   = Convert.ToInt32(searchLookUpMoneda.EditValue);
                oFac.EPI_INT_IDTIPOPAGO = Convert.ToInt32(searchLookUpTipoPago.EditValue);

                oFac.EPI_DAT_FECHACREA  = Convert.ToDateTime(deFechaEmision.EditValue);
                oFac.EPI_DAT_FECHADESDE = Convert.ToDateTime(deFechaEmision.EditValue);
                oFac.EPI_DAT_FECHAHASTA = Convert.ToDateTime(deFechaVencimiento.EditValue);
                oFac.EPI_INT_PERSONAFACTURAIDENTIDAD = Convert.ToInt32(searchLookUpCliente.EditValue);
                oFac.EPI_VCH_OBSERVACIONES           = txtObservaciones.Text;
                oFac.EPI_VCH_REFERENCIA1             = txtReferencia1.Text;
                oFac.EPI_VCH_REFERENCIA2             = txtReferencia2.Text;
                oFac.EPI_NUM_BASEIPONIBLE            = Convert.ToDecimal(lblBaseImponible.Text == "" ? "0" : lblBaseImponible.Text);
                //oFac.EPI_NUM_BASEEXPONERADO =
                oFac.EPI_NUM_IMPUESTO      = Convert.ToDecimal(lblIgv.Text == "" ? "0" : lblIgv.Text);
                oFac.EPI_NUM_IMPORTETOTAL  = Convert.ToDecimal(lblImporteTotal.Text == "" ? "0" : lblImporteTotal.Text);
                oFac.EPI_VCH_TOTALENLETRAS = new BaseForm().DevuelveNumeroEnLetras(oFac.EPI_NUM_IMPORTETOTAL.ToString(), "PEN");
                //oFac.EPI_NUM_TIPOVENTA
                oFac.EPI_BIT_ACTIVO  = true;
                oFac.EPI_BIT_ANULADA = false;
                oFac.EPI_BIT_IMPRESA = false;

                List <TBL_EPI_FACTURADETALLE> olFacDetalle = new List <TBL_EPI_FACTURADETALLE>();
                TBL_EPI_FACTURADETALLE        oFacDetalle  = new TBL_EPI_FACTURADETALLE();

                for (int i = 0; i < gridViewDetalle.RowCount; i++)
                {
                    oFacDetalle = new TBL_EPI_FACTURADETALLE();
                    //oFacDetalle.EPI_INT_ITEM
                    oFacDetalle.EPI_NUM_CANTIDAD = Convert.ToDecimal(gridViewDetalle.GetRowCellValue(i, "EPI_NUM_CANTIDAD"));

                    oFacDetalle.EPI_INT_IDPRODUCTO    = Convert.ToInt32(gridViewDetalle.GetRowCellValue(i, "EPI_INT_IDPRODUCTO"));
                    oFacDetalle.EPI_VCH_DESCRIPCION   = gridViewDetalle.GetRowCellValue(i, "EPI_VCH_DESCRIPCION").ToString();
                    oFacDetalle.EPI_INT_IDIMPUESTO    = Convert.ToInt32(gridViewDetalle.GetRowCellValue(i, "EPI_INT_IDIMPUESTO").ToString());
                    oFacDetalle.EPI_NUM_VALORUNITARIO = Math.Round(Convert.ToDecimal(gridViewDetalle.GetRowCellValue(i, "EPI_NUM_VALORUNITARIO")), 2, MidpointRounding.AwayFromZero);
                    oFacDetalle.EPI_NUM_IGVVENTA      = Math.Round(Convert.ToDecimal(gridViewDetalle.GetRowCellValue(i, "EPI_NUM_IGVVENTA")), 2, MidpointRounding.AwayFromZero);
                    oFacDetalle.EPI_NUM_SUBTOTAL      = Math.Round(Convert.ToDecimal(gridViewDetalle.GetRowCellValue(i, "EPI_NUM_SUBTOTAL")), 2, MidpointRounding.AwayFromZero);
                    oFacDetalle.EPI_NUM_IMPORTETOTAL  = Math.Round(Convert.ToDecimal(gridViewDetalle.GetRowCellValue(i, "EPI_NUM_IMPORTETOTAL")), 2, MidpointRounding.AwayFromZero);
                    oFacDetalle.EPI_BIT_ACTIVO        = true;
                    olFacDetalle.Add(oFacDetalle);
                }

                if (IdFactura == 0)
                {
                    oFac.EPI_DAT_FECHACREA     = DateTime.Now;
                    oFac.EPI_INT_IDUSUARIOCREA = BaseForm.VariablesGlobales.IdUsuario;
                    XtraMessageBox.Show(BLFacturacion.InsertaFactura(oFac, olFacDetalle), "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Information);

                    this.Close();
                }
                else
                {
                    oFac.EPI_DAT_FECHAMODIFICA     = DateTime.Now;
                    oFac.EPI_INT_IDUSUARIOMODIFICA = BaseForm.VariablesGlobales.IdUsuario;
                    oFac.EPI_NUM_IDFACTURA         = IdFactura;

                    XtraMessageBox.Show(BLFacturacion.ActualizaFactura(oFac, olFacDetalle), "SISTEMAS");
                    this.Close();
                }
            }
            catch (Exception)
            {
                throw;
            }
        }