private void btnimprimir_Click(object sender, EventArgs e)
        {
            frmFacturar facturalista = new frmFacturar();

            facturalista.Id            = int.Parse(lblid.Text);
            facturalista.Cliente       = lblnombre.Text;
            facturalista.Tipopago      = lblpago.Text;
            facturalista.Codigofactura = lblid.Text;
            facturalista.ShowDialog();
        }
        private void button8_Click(object sender, EventArgs e)
        {
            try
            {
                if (cn.ESTADO() == true)
                {
                    if (verificarcombos() == true)
                    {
                        string[] CLIENTEID = combocliente.Text.Split('-');



                        if (dgvfactura.Rows.Count > 0)
                        {
                            lblimprimiendo.Visible = true;

                            for (int x = 0; x < dgvfactura.Rows.Count; x++)
                            {
                                int[]    codigo   = new int[dgvfactura.Rows.Count];
                                string[] producto = new string[dgvfactura.Rows.Count];
                                int[]    precio   = new int[dgvfactura.Rows.Count];
                                int[]    cantidad = new int[dgvfactura.Rows.Count];
                                int[]    total    = new int[dgvfactura.Rows.Count];


                                codigo[x]   = int.Parse(dgvfactura.Rows[x].Cells["COLUMCODIGO"].Value.ToString());
                                producto[x] = dgvfactura.Rows[x].Cells["DESCRIPCION"].Value.ToString();
                                precio[x]   = int.Parse(dgvfactura.Rows[x].Cells["PRECIO"].Value.ToString());
                                cantidad[x] = int.Parse(dgvfactura.Rows[x].Cells["CANTIDAD"].Value.ToString());
                                total[x]    = int.Parse(dgvfactura.Rows[x].Cells["columtotal"].Value.ToString());

                                int     totalfactura = int.Parse(lbltotal.Text);
                                double  impuesto     = double.Parse(lbliva.Text);
                                decimal subtotal     = decimal.Parse(lblsubtotal.Text);

                                if (x == 0)
                                {
                                    Facturas factura = new Facturas();
                                    factura.FECHA        = DateTime.Now;
                                    factura.FK_IdCliente = int.Parse(CLIENTEID[0]);
                                    factura.FK_IdUsuario = LoadData.ID;
                                    factura.Tipo_Pago    = combopago.Text;
                                    cn.GUARDARFACTURA(factura);
                                }

                                DetalleFactura detalles = new DetalleFactura();
                                detalles.Id_Factura      = cn.ULTIMOREGISTRO();
                                detalles.Codigo_Producto = codigo[x];
                                detalles.Nombre_Producto = producto[x].ToString();
                                detalles.Precio          = precio[x];
                                detalles.Cantidad        = cantidad[x];
                                detalles.Total           = total[x];
                                cn.GUARDARDETALLES(detalles);
                                cn.DESCONTAR(cantidad[x], codigo[x]);
                            }

                            try
                            {
                                frmFacturar facturalista = new frmFacturar();
                                facturalista.Id            = cn.ULTIMOREGISTRO();
                                facturalista.Cliente       = CLIENTEID[1].ToString();
                                facturalista.Tipopago      = combopago.Text;
                                facturalista.Codigofactura = cn.ULTIMOREGISTRO().ToString();
                                facturalista.ShowDialog();
                            }
                            catch
                            {
                                metodos.Mensajes("Este ordenador no puede imprimir facturas", "error");
                            }



                            limpiar();
                        }

                        else
                        {
                            metodos.Mensajes("No se ha realizado la pre-facturación", "error");
                        }

                        lblimprimiendo.Visible = false;
                    }
                }
                else
                {
                    metodos.Mensajes("El estado del sistema es [CERRADO] No se puede facturar", "error");
                }
            }

            catch {
            }
        }