Esempio n. 1
0
        private void Btn_Aceptar_Click(object sender, EventArgs e)
        {
            try
            {
                if (!ControlValores())
                {
                    return;
                }

                Datos.Factura         F  = new Datos.Factura();
                Datos.Factura_detalle FD = new Datos.Factura_detalle();
                FD.ListaFactura_detalle = new List <Datos.Factura_detalle>();
                Datos.Couta C = new Datos.Couta();
                C.ListaCouta = new List <Datos.Couta>();

                F.Id_Factura      = (Txt_Id.Text == "") ? 0 : Convert.ToInt32(Txt_Id.Text);
                F.Id_Factura_Tipo = _TipoFactura;
                F.Id_Tercero      = Convert.ToInt32(id_TerceroTextBox.Text);

                F.Fecha_Factura             = fecha_FacturaDateTimePicker.Value;
                F.Fecha_Vencimiento_Factura = fecha_Vencimiento_FacturaDateTimePicker.Value;
                F.Puesto_Factura            = Convert.ToInt32(puesto_FacturaTextBox.Text);
                F.Numero_Factura            = Convert.ToInt32(numero_Comprobante_FacturaTextBox.Text);
                F.Clase_Factura             = clase_FacturacomboBox.Text;
                F.Neto_Factura          = neto_FacturaTextBox.Value - (neto_FacturaTextBox.Value * 0.21M);
                F.IVA_105_Factura       = iva_1_FacturaTextBox.Value;
                F.IVA_21_Factura        = neto_FacturaTextBox.Value * 0.21M;
                F.IVA_27_Factura        = iva_27_FacturaTextBox.Value;
                F.Percepcion_Factura    = percep_FacturaTextBox.Value;
                F.Exentos_Factura       = exentos_FacturaTextBox.Value;
                F.Otros_Factura         = otros_FacturaTextBox.Value;
                F.Total_Factura         = total_FacturaTextBox.Value;
                F.Retencion_Factura     = retencion_FacturaTextBox.Value;
                F.Anulado_Factura       = anulado_facturaCheckBox.Checked;
                F.Observaciones_Factura = ObservacionestextBox.Text;
                F.Interes_Factura       = Interes_numericUpDown2.Value;

                foreach (DataGridViewRow Fila in DG_Productos.Rows)
                {
                    Datos.Factura_detalle TEMP = new Datos.Factura_detalle();

                    TEMP.Cantidad_Factura_Detalle        = Convert.ToInt32(Fila.Cells["Clm_Cantidad"].Value);
                    TEMP.Articulo_Factura_Detalle        = Fila.Cells["Clm_Descripcion"].Value.ToString();
                    TEMP.Precio_Unitario_Factura_Detalle = Convert.ToDecimal(Fila.Cells["Clm_Precio"].Value);
                    TEMP.Bonifica_Factura_Detalle        = 0;

                    FD.ListaFactura_detalle.Add(TEMP);
                }

                for (int i = 0; i < NumeroCuotas_numericUpDown1.Value; i++)
                {
                    Datos.Couta TEMP = new Datos.Couta();
                    TEMP.Numero_Couta_Couta = i + 1;

                    TEMP.Fecha_Vencimineto_Couta = dateTimePicker_PrimeraCuotaDesde.Value.AddMonths(i);
                    TEMP.Observaciones_Couta     = "";

                    TEMP.Importe_Couta = NUD_ValorCuota.Value;
                    C.ListaCouta.Add(TEMP);
                }

                if (Txt_Id.Text == "")
                {
                    AcomodarNumeroComprobante();
                    if (FD.ListaFactura_detalle.Count == 0)
                    {
                        if (MessageBox.Show("Esta agregando una factura sin articulos, ¿Desea continuar?", "Factura sin articulos!", MessageBoxButtons.YesNo) != System.Windows.Forms.DialogResult.Yes)
                        {
                            return;
                        }
                    }

                    MDI.FrmDialogoFactura FDF = new FrmDialogoFactura(TipoComprobanteAnterior, clase_FacturacomboBox.Text, puesto_FacturaTextBox.Text, numero_Comprobante_FacturaTextBox.Text);
                    if (FDF.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        this.numero_Comprobante_FacturaTextBox.Text = FDF._NumeroComprobante;

                        F.Numero_Factura = Convert.ToInt32(FDF._NumeroComprobante);

                        if (Chk_Imprimir.Checked)
                        {
                            ImprimirDocumento.Print();
                        }

                        Datos.Factura.AddFactura_detalle(F, FD, C);

                        if (_TipoFactura == 1 || _TipoFactura == 2)
                        {
                            AcomodarNumeroComprobante();
                            Datos.Series.DesbloquearSumar(TipoComprobanteAnterior);
                        }
                        MessageBox.Show("Se ha agregado un nuevo registro.");
                    }
                    else
                    {
                        return;
                    }
                }
                else
                {
                    if (_TipoFactura != 1)
                    {
                        if (MessageBox.Show("Al modificar esta comprobante, borra las cuotas y las creará de nuevo, ¿desea continuar?", "Modificación", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes)
                        {
                            Datos.Factura.SetFactura_detalle(F, FD, C);
                            MessageBox.Show("Se ha modificado correctamente el registro.");
                        }
                    }
                    else
                    {
                        Datos.Factura.SetFactura_detalle(F, FD, C);
                        MessageBox.Show("Se ha modificado correctamente el registro.");
                    }
                }
                CerrarVentana = true;
                Close();
            }
            catch (Exception Error)
            {
                MessageBox.Show(Error.Message);
            }
        }
Esempio n. 2
0
        private void Btn_Aceptar_Click(object sender, EventArgs e)
        {
            try
            {
                ControlValores();

                Datos.Factura F      = new Datos.Factura();
                Datos.Couta   Cuotas = new Datos.Couta();
                Cuotas.ListaCouta = new List <Datos.Couta>();

                decimal TotalInteres = 0;
                foreach (DataGridViewRow Fila in DG_Facturas.Rows)
                {
                    try
                    {
                        TotalInteres += Convert.ToDecimal(Fila.Cells["Clm_Interes"].Value);
                    }
                    catch
                    {
                        //none
                    }
                }

                Datos.Caja ObjCaja = new Datos.Caja();
                ObjCaja.ListaCaja = new List <Datos.Caja>();

                F.Id_Factura      = (Txt_Id.Text == "") ? 0 : Convert.ToInt32(Txt_Id.Text);
                F.Id_Factura_Tipo = 3;
                F.Id_Tercero      = Convert.ToInt32(id_TerceroTextBox.Text);

                F.Fecha_Factura             = DateTime.Now;
                F.Fecha_Vencimiento_Factura = DateTime.Now;
                F.Puesto_Factura            = Convert.ToInt32(puesto_FacturaTextBox.Text);
                F.Numero_Factura            = Convert.ToInt32(numero_Comprobante_FacturaTextBox.Text);
                F.Clase_Factura             = "X";
                F.Neto_Factura          = 0;
                F.IVA_105_Factura       = 0;
                F.IVA_21_Factura        = 0;
                F.IVA_27_Factura        = 0;
                F.Percepcion_Factura    = 0;
                F.Exentos_Factura       = 0;
                F.Otros_Factura         = TotalInteres;
                F.Total_Factura         = NUD_Total.Value - TotalInteres;
                F.Retencion_Factura     = 0;
                F.Anulado_Factura       = false;
                F.Observaciones_Factura = "";
                F.Interes_Factura       = 0;

                foreach (DataGridViewRow Fila in DG_Facturas.Rows)
                {
                    Datos.Couta TEMP = Datos.Couta.GetCouta(Fila.Tag.ToString(), "", "0");
                    TEMP.ListaCouta[0].Pagado_Couta          = ((TEMP.ListaCouta[0].Importe_Couta - TEMP.ListaCouta[0].Asignacion_Cuota) - Convert.ToDecimal(Fila.Cells["Clm_Importe1"].Value) <= 0) ? true : false;
                    TEMP.ListaCouta[0].Fecha_Pago_Couta      = DateTime.Now;
                    TEMP.ListaCouta[0].Importe_Interes_Couta = Convert.ToDecimal(Fila.Cells["Clm_Interes"].Value);
                    TEMP.ListaCouta[0].Asignacion_Cuota     += Convert.ToDecimal(Fila.Cells["Clm_Importe1"].Value);
                    TEMP.ListaCouta[0].Observaciones_Couta   = Fila.Cells["Clm_Observaciones"].Value.ToString();
                    Cuotas.ListaCouta.Add(TEMP.ListaCouta[0]);
                }

                foreach (DataGridViewRow Fila in DG_Efectivo.Rows)
                {
                    Datos.Caja TEMP = new Datos.Caja();
                    TEMP.Id_Caja_Tipo = 1;
                    TEMP.Fecha_Caja   = DateTime.Now;
                    TEMP.Importe_Caja = Convert.ToDecimal(Fila.Cells["Clm_Importe"].Value);
                    TEMP.Tag_Caja     = Txt_NombreTercero.Text;

                    if (TEMP.Importe_Caja != 0 || TEMP.Importe_Caja != 0)
                    {
                        ObjCaja.ListaCaja.Add(TEMP);
                    }
                }

                if (Txt_Id.Text == "")
                {
                    if (_TipoTercero == 1)
                    {
                        numero_Comprobante_FacturaTextBox.Text = Datos.Series.Bloquear("RECIBOS").ToString("00000000");
                        Datos.Series.Desbloquear("RECIBOS");
                    }
                    else if (_TipoTercero == 2)
                    {
                        numero_Comprobante_FacturaTextBox.Text = Datos.Series.Bloquear("RECIBOS").ToString("00000000");
                        Datos.Series.Desbloquear("RECIBOS");
                    }

                    string TipoComprobanteAnterior = "";
                    if (_TipoTercero == 1)
                    {
                        TipoComprobanteAnterior = "RECIBOS";
                    }
                    else if (_TipoTercero == 2)
                    {
                        TipoComprobanteAnterior = "RECIBOS";
                    }

                    MDI.FrmDialogoFactura FDF = new FrmDialogoFactura(TipoComprobanteAnterior, "X", puesto_FacturaTextBox.Text, numero_Comprobante_FacturaTextBox.Text);
                    if (FDF.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        if (_TipoTercero == 1)
                        {
                            numero_Comprobante_FacturaTextBox.Text = Datos.Series.Bloquear("RECIBOS").ToString("00000000");
                            Datos.Series.Desbloquear("RECIBOS");
                        }
                        else if (_TipoTercero == 2)
                        {
                            numero_Comprobante_FacturaTextBox.Text = Datos.Series.Bloquear("RECIBOS").ToString("00000000");
                            Datos.Series.Desbloquear("RECIBOS");
                        }

                        if (Chk_ImprimirComprobante.Checked)
                        {
                            ImprimirDocumento.Print();
                        }

                        Datos.Factura.AddRecibo_OrdenPago(F, Cuotas, CHECARTE, ObjCaja);

                        if (_TipoTercero == 1)
                        {
                            Datos.Series.DesbloquearSumar("RECIBOS");
                        }
                        else if (_TipoTercero == 2)
                        {
                            Datos.Series.DesbloquearSumar("RECIBOS");
                        }
                        MessageBox.Show("Se ha agregado un nuevo registro.");
                    }
                    else
                    {
                        return;
                    }
                }
                else
                {
                    //Datos.Factura.SetRecibo_OrdenPago(F, Facturas, ObjChequePropio, ObjDeposito, ObjTransferencia, ObjCheque_Cartera, ObjCaja, ObjTarjeta);
                    //MessageBox.Show("Se ha modificado correctamente el registro.");
                }
                CerrarVentana = true;
                Close();
            }
            catch (Exception Error)
            {
                MessageBox.Show(Error.Message);
            }
        }