private void Imprimir_Click(object sender, EventArgs e)
        {
            bool   flag2       = true;
            bool   flag        = true;
            string descripcion = String.Empty;

            if (MessageBox.Show("Desea Imprimir el comprobante?", "Confirmar", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                string carpeta = Global.getDire();
                printer = Global.getImpresora();
                // genera las carpetas a guardar
                string nombreExceldia = @carpeta + "\\Diario\\" + dateTimePicker1.Value.ToString("yyyyMMdd");
                string savedia        = nombreExceldia + ".xlsx";
                string nombreExcelmes = @carpeta + "\\Mensual\\" + dateTimePicker1.Value.ToString("yyyyMMMM");
                string savemes        = nombreExcelmes + ".xlsx";

                Clase claseaux2 = new Clase();
                var   number    = claseaux2.LastNumberServerRecibos();
                claseaux.IncrementServerRecibosNumber();
                string     fecha   = "Fecha " + DateTime.Today.ToString("d");
                string     hora    = "Hora " + DateTime.Now.ToString("HH:mm");
                CreaTicket Ticket1 = new CreaTicket();
                //CREA EL PRIMER TICKET


                Ticket1.impresora = printer;
                Ticket1.AgregaLinea(2);
                Ticket1.TextoExtremos(fecha, hora);
                Ticket1.AgregaLinea(1);
                Ticket1.TextoIzquierda("Nro Comprobante: " + number.ToString(fmt));
                Ticket1.AgregaLinea(1);
                Ticket1.TextoIzquierda(name);
                Ticket1.AgregaLinea(1);
                Ticket1.LineasGuion();


                foreach (var clase in ClasesListFiniShed)
                {
                    if (!(string.IsNullOrEmpty(clase.Diferencia_Comprobante_Numero)))
                    {
                        claseaux.Diferencia_Comprobante_Numero = clase.Diferencia_Comprobante_Numero;
                        flag2 = false;
                    }
                    else
                    {
                        claseaux.Diferencia_Comprobante_Numero = string.Empty;
                    }



                    makeRecipeByClase(clase, dateTimePicker1.Value.ToString("yyyy/MM/dd"), Ticket1, flag);

                    string resp = string.Empty;
                    if (IsForNext)
                    {
                        DateTime date = DateTime.Now;
                        DateTime aux  = date.AddMonths(1);
                        if (!(aux.ToString("MMMM") == "enero"))
                        {
                            resp = aux.ToString("yyyy MMMM");
                        }
                        else
                        {
                            DateTime aux2 = aux.AddYears(1);
                            resp = aux2.ToString("yyyy MMMM");
                        }
                    }
                    else
                    {
                        resp = (DateTime.Now).ToString("yyyy MMMM");
                    }

                    clase.InsertMonthListRegular(resp, name);
                    claseaux.Profesor += clase.Profesor + " ";
                }

                Ticket1.TextoExtremos("Total", claseaux.Total);
                Ticket1.AgregaLinea(1);
                Ticket1.LineasAsterisco();
                Ticket1.AgregaLinea(2);
                Ticket1.TextoCentro("Las clases abonadas vencen");
                Ticket1.TextoCentro("el dia " + creaTextoFinal());
                Ticket1.AgregaLinea(2);
                try
                {
                    Ticket1.TextoIzquierda(UppercaseFirst(Usuario.getUsuarioActual()));
                }
                catch { }
                Ticket1.CortaTicket();

                flag = false;

                //CREA EL PRIMER TICKET


                Ticket1.impresora = printer;
                Ticket1.AgregaLinea(2);
                Ticket1.TextoExtremos(fecha, hora);
                Ticket1.AgregaLinea(1);
                Ticket1.TextoIzquierda("Nro Comprobante: " + number.ToString(fmt));
                Ticket1.AgregaLinea(1);
                Ticket1.TextoIzquierda(name);
                Ticket1.AgregaLinea(1);
                Ticket1.LineasGuion();

                foreach (var clase in ClasesListFiniShed)
                {
                    makeRecipeByClase(clase, dateTimePicker1.Value.ToString("yyyy/MM/dd"), Ticket1, flag);
                }

                Ticket1.TextoExtremos("Total", claseaux.Total);
                Ticket1.AgregaLinea(1);
                Ticket1.LineasAsterisco();
                Ticket1.AgregaLinea(2);
                Ticket1.TextoCentro("Las clases abonadas vencen");
                Ticket1.TextoCentro("el dia " + creaTextoFinal());
                Ticket1.AgregaLinea(2);
                try
                {
                    string Usuarioaux = Usuario.getUsuarioActual();
                    claseaux.Usuario = Usuarioaux;
                    Ticket1.TextoIzquierda(UppercaseFirst(Usuarioaux));
                }
                catch { }

                Ticket1.CortaTicket();


                claseaux.CargaExcelDia(nombreExceldia, Global, savedia, DateTime.Now.ToString("dd/MM/yyyy"), number.ToString(fmt), name);
                claseaux.CargaExcelMes(nombreExcelmes, Global, savemes, DateTime.Now.ToString("dd/MM/yyyy"), number.ToString(fmt), name);
                claseaux.addComprobante(ClasesListFiniShed, name, number.ToString(fmt), DateTime.Now.ToString("dd/MM/yyyy"));
                if (flag2 == false)
                {
                    claseaux.addComprobanteDiferencia(number.ToString(fmt));
                }
                ClasesListFiniShed.Clear();
                this.DialogResult = DialogResult.OK;
            }
        }