Ejemplo n.º 1
0
        private void CargarFacturas()
        {
            ArrayList facturas = new ArrayList();

            facturas = Datos_Factura.getFacturas(v.Id_venta);
            cbox_factura_num.DataSource    = facturas;
            cbox_factura_num.DisplayMember = "factura_numero";

            cbox_factura_num.Refresh();
        }
Ejemplo n.º 2
0
        private void btn_imprimir_Click(object sender, EventArgs e)
        {
            cantidad_facturas_existentes = 0;
            conteo = 0;

            bool imprime = true;

            if (v.Impreso == 0)
            {
                DialogResult dr = MessageBox.Show(this, "A continuacion se imprimirá una nueva factura, ¿Desea continuar?", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (dr == DialogResult.Yes)
                {
                    factura_numero_conteo = factura.Factura_numero_dato;
                    int conteos;
                    for (conteos = listacarrito.Count; conteos > 0;)
                    {
                        conteos = conteos - factura.Items_max;

                        cant_facturas = cant_facturas + 1;
                    }

                    for (int y = 0; y < cant_facturas; y++)
                    {
                        Factura fa = new Factura(factura.Factura_Prefijo_dato + (factura.Factura_numero_dato + y).ToString(), 0, v.Id_venta);
                        Datos_Factura.NuevaFacura(fa);
                    }
                    v.Factura_numero = " ";
                    v.Venta_numero   = factura.Venta_Prefijo_dato + factura.Venta_numero_dato;
                    DatosVenta.ModificarVenta(this.v);
                    Clases.Configuracion_factura factura_guardar = new Clases.Configuracion_factura();
                    factura_guardar = factura;
                    factura_guardar.Factura_numero_dato = factura.Factura_numero_dato + cant_facturas;
                    factura_guardar.Venta_numero_dato   = factura.Venta_numero_dato + 1;
                    Conex.Modificar_Factura(factura_guardar);
                    cbox_factura_num.Text = v.Factura_numero;
                    txt_venta_num.Text    = v.Venta_numero;
                    v.Impreso             = 1;

                    imprime  = true;
                    es_nuevo = true;
                }
                if (dr == DialogResult.No)
                {
                    imprime = false;
                }
                btn_imprimir.Enabled = false;
            }
            else
            {
                cbox_factura_num.SelectedIndex = 0;
                if (cbox_factura_num.Items.Count == 2)
                {
                    mensaje = cbox_factura_num.Text + " y su siguiente ";
                    cbox_factura_num.SelectedIndex = 1;
                    mensaje = mensaje + cbox_factura_num.Text;
                }
                else if (cbox_factura_num.Items.Count > 2)
                {
                    mensaje = cbox_factura_num.Text + " y su siguientes " + (cbox_factura_num.Items.Count - 1).ToString() + " numeraciones";
                }
                else
                {
                    mensaje = cbox_factura_num.Text + " ";
                }
                DialogResult dr = MessageBox.Show(this, "Se imprimirá en la factura Nº: " + mensaje + ", ¿desea continuar?", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (dr == DialogResult.No)
                {
                    imprime = false;
                }

                es_nuevo = false;
                int conteos;
                for (conteos = listacarrito.Count; conteos > 0;)
                {
                    conteos = conteos - factura.Items_max;

                    cant_facturas = cant_facturas + 1;
                }
            }
            if (imprime == true)
            {
                PrintAString(0);
            }
        }
Ejemplo n.º 3
0
        public void guardar_imprimir(bool imprime)
        {
            //verifico si hay items en el carrito


            if (listacarrito.Count > 0)
            {
                this.Cursor = Cursors.WaitCursor;
                int conteo;
                for (conteo = listacarrito.Count; conteo > 0;)
                {
                    conteo = conteo - factura.Items_max;

                    cant_facturas = cant_facturas + 1;
                }


                factura_numero_conteo = factura.Factura_numero_dato;

                // verifico si el cliente es nuevo
                if (cbox_cliente.SelectedItem == null)
                {
                    if (txt_rut.Text == "")
                    {
                        txt_rut.Text = " ";
                    }


                    id_pais = DatosPais.obtener_id_pais_maximo();


                    Cliente c = new Cliente(0, cbox_cliente.Text, txt_n_documento.Text, " ", " ", " ", " ", id_pais, txt_rut.Text, Convert.ToDateTime("1/1/2000"));
                    DatosCliente.NuevoCliente(c);
                    id_cliente = DatosCliente.obtener_id_cliente_maximo();
                }
                //verifico si hay un cliente seleccionado en el cbox_cliente
                else
                {
                    id_cliente = ((Cliente)cbox_cliente.SelectedItem).Id_cliente;
                }
                int impre = 0;
                //creo una nueva venta en la bdd
                Int64 id_venta;
                if (imprime == true)
                {
                    impre = 1;
                }
                else
                {
                    txt_factura_num.Text = " ";
                    txt_venta_num.Text   = " ";
                }
                if (txt_observaciones.Text == "")
                {
                    txt_observaciones.Text = " ";
                }
                Venta v = new Venta(0, id_cliente, DateTime.Now, Convert.ToDecimal(txt_total_pesos.Text), impre, txt_venta_num.Text, " ", tipo, "Pago", 1, 1, 1, 1, 0, 0, 0, 0, descuento_monto, Convert.ToDecimal(Principal.iva), txt_observaciones.Text, Convert.ToDecimal(txt_enPesos.Text));
                DatosVenta.NuevaVenta(v);


                // obtengo el id max de venta
                try
                {
                    id_venta = DatosVenta.obtener_id_venta();
                }
                catch
                {
                    id_venta = 0;
                }


                //agrego items a Venta_producto en la bdd
                for (int i = 0; i < listacarrito.Count; i++)
                {
                    Venta_Producto vp = new Venta_Producto(0, id_venta, ((Producto)listacarrito[i]).Id_producto, ((Producto)listacarrito[i]).Total, ((Producto)listacarrito[i]).Stock);
                    DatosVenta_Producto.NuevaVentaProducto(vp);
                    for (Int32 h = 0; h < listaInicial.Count; h++)
                    {
                        if (((Producto)listacarrito[i]).Id_producto == ((Producto)listainicial2[h]).Id_producto)
                        {
                            DatosProducto.CambiarStock(((Producto)listacarrito[i]).Id_producto, ((Producto)listainicial2[h]).Stock - ((Producto)listacarrito[i]).Stock);
                        }
                    }
                }
                if (imprime == true)
                {
                    for (int y = 0; y < cant_facturas; y++)
                    {
                        Factura fa = new Factura(factura.Factura_Prefijo_dato + (factura.Factura_numero_dato + y).ToString(), 0, id_venta);
                        Datos_Factura.NuevaFacura(fa);
                    }
                    Clases.Configuracion_factura factura_guardar = new Clases.Configuracion_factura();
                    factura_guardar = factura;
                    factura_guardar.Factura_numero_dato = factura.Factura_numero_dato + cant_facturas;
                    factura_guardar.Venta_numero_dato   = factura.Venta_numero_dato + 1;
                    Conex.Modificar_Factura(factura_guardar);
                    try
                    {
                        PrintAString(0);
                    }
                    catch
                    {
                        MessageBox.Show(this, "Error al imprimir factura", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }


                tipo    = null;
                detalle = null;


                Font   printFont   = null;
                string printString = null;
                clientes      = null;
                listaVacia    = null;
                listaInicial  = null;
                listacarrito  = null;
                listainicial2 = null;
                factura       = null;


                Principal.cerrar_ventana_generar_venta = false;
                this.Close();
            }
            else
            {
                MessageBox.Show(this, "No hay items en el carrito", "¡Aviso!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                txt_codigo2.Focus();
            }
        }
Ejemplo n.º 4
0
        private void btn_imprimir_Click(object sender, EventArgs e)
        {
            DialogResult dr = MessageBox.Show(this, "A continuacion se imprimirá los productos no impresos en facturas, ¿Desea continuar?", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (dr == DialogResult.Yes)
            {
                this.Cursor = Cursors.WaitCursor;
                Cliente cli = new Cliente();
                cli = DatosCliente.getCliente(42);
                nombre_del_cliente = cli.Nombre;
                int conteo;
                for (conteo = listaimprimir.Count; conteo > 0;)
                {
                    conteo = conteo - factura.Items_max;

                    cant_facturas = cant_facturas + 1;
                }


                factura_numero_conteo = factura.Factura_numero_dato;

                for (int y = 0; y < lista.Count; y++)
                {
                    DatosVenta.setBajaVenta(((Venta)lista[y]).Id_venta);
                    DatosVenta_Producto.setBajaVenta_producto(((Venta)lista[y]).Id_venta);
                }


                Venta v = new Venta(0, 42, DateTime.Now, Convert.ToDecimal(txt_pesos.Text), 1, factura.Venta_Prefijo_dato + factura.Venta_numero_dato.ToString(), " ", "Contado", "Pago", 1, 1, 1, 1, 0, 0, 0, 0, 0, Principal.iva, " ", 0);
                DatosVenta.NuevaVenta(v);
                Int64 id_venta = DatosVenta.obtener_id_venta();
                for (int y = 0; y < cant_facturas; y++)
                {
                    Factura fa = new Factura(factura.Factura_Prefijo_dato + (factura.Factura_numero_dato + y).ToString(), 0, id_venta);
                    Datos_Factura.NuevaFacura(fa);
                }
                Clases.Configuracion_factura factura_guardar = new Clases.Configuracion_factura();
                factura_guardar = factura;
                factura_guardar.Factura_numero_dato = factura.Factura_numero_dato + cant_facturas;
                factura_guardar.Venta_numero_dato   = factura.Venta_numero_dato + 1;
                Conex.Modificar_Factura(factura_guardar);


                for (int x = 0; x < listaimprimir.Count; x++)
                {
                    Venta_Producto vp = new Venta_Producto(0, id_venta, ((Venta_Producto)listaimprimir[x]).Id_producto, ((Venta_Producto)listaimprimir[x]).Precio, ((Venta_Producto)listaimprimir[x]).Cantidad);
                    DatosVenta_Producto.NuevaVentaProducto(vp);
                }

                try
                {
                    PrintAString(0);
                }
                catch
                {
                    MessageBox.Show(this, "Error al imprimir", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                Principal.cerrar_venta_no_impresa = false;
                this.Cursor = Cursors.Default;
                this.Close();
            }
        }