public Class_Pedido(string idPedido)
        {
            ImageLogo = null;///iNCLUIR iMAGEN
            if (SiLogoTick)
            {
                try
                {
                    //obtiene la imagen almacenada en la clase logo
                    Class_logo Cls_logo = new Class_logo();
                    ImageLogo = Image.FromHbitmap(Cls_logo.getLogo().GetHbitmap());
                }
                catch (Exception)
                {
                    ImageLogo = null;
                }
            }
            if (ImageLogo != null)
            {
                if (ImageLogo.Width > MaxWithlogo)
                {
                    int NewHeight = (ImageLogo.Height * MaxWithlogo) / ImageLogo.Width;
                    int NewWidth  = MaxWithlogo;

                    System.Drawing.Image NewImage = ImageLogo.GetThumbnailImage(NewWidth, NewHeight, null, IntPtr.Zero);
                    ImageLogo.Dispose();
                    ImageLogo = NewImage;
                }
            }

            sb = new StringBuilder();

            DataTable dtPedido = ClsPedido.getLista(" AND P.iidPedido = " + idPedido);

            if (dtPedido.Rows.Count == 0)
            {
                return;
            }
            DataRow   RowPedido = dtPedido.Rows[0];
            DataTable dtDetalle = ClsDetallePedido.getDetallePedido(idPedido);

            string MensajeTop   = "";
            string MensajePie   = "";
            string ShowTelefono = "";
            string SubMesa      = ClsPedido.getSubMesaId(RowPedido["iidMesa"].ToString(), RowPedido["iidPedido"].ToString());

            DataRow[] RowVal;
            if (Classes.Class_Session.dtParamConf != null)
            {
                RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Dirección local'");
                if (RowVal.Count() > 0)
                {
                    if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                    {
                        MensajeTop = RowVal[0]["vchConfiguracion"].ToString();
                    }
                }

                RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Telefono'");
                if (RowVal.Count() > 0)
                {
                    if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                    {
                        ShowTelefono = RowVal[0]["vchConfiguracion"].ToString();
                    }
                }

                ///Caracteres por linea
                try
                {
                    RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Caracteres x Linea'");
                    if (RowVal.Count() > 0)
                    {
                        if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                        {
                            charMaximoXLinea = Convert.ToInt32(RowVal[0]["vchConfiguracion"].ToString());
                        }
                    }
                }
                catch { }

                try
                {
                    RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Tamaño Fuente'");
                    if (RowVal.Count() > 0)
                    {
                        if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                        {
                            fontSize = Convert.ToInt32(RowVal[0]["vchConfiguracion"].ToString());
                        }
                    }
                }
                catch { }
            }


            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado("Av. Vallarta 5145. Local L15, Iconia, Camino Real, 45040 Zapopan, Jal.");
            if (MensajeTop.Trim() != "")
            {
                DatosJustificado(" ");
            }
            if (ShowTelefono.Trim() != "")
            {
                DatosJustificado("  TELEFONO: " + ShowTelefono.Trim());
            }

            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado("Numero de Pedido: " + Convert.ToInt32(RowPedido["iidPedido"].ToString()).ToString("000000"));
            DatosJustificado("");
            DatosJustificado("DOCUMENTO: Nota de Venta");

            LineasGuiones("-");
            TextosExtremos(RowPedido["dfechaIn103"].ToString(), RowPedido["dfechaIn108"].ToString());
            DatosJustificado("Le atendio: " + RowPedido["Mesero"].ToString());

            LineasGuiones("-");
            TextoCentro("DETALLE COMPRA");
            LineasGuiones("-");

            DatosJustificado(" CANTIDAD  / PRODUCTO / PRECIO ");
            LineasGuiones("-");


            foreach (DataRow Row in dtDetalle.Rows)
            {
                try
                {
                    AgregarProductos(Convert.ToDouble(Row["fCantidad"].ToString()), Row["vchDescripcion"].ToString(), Convert.ToDouble(Row["fPrecio"].ToString()), Convert.ToDouble(Row["fImporte"].ToString()));
                }catch {}
            }

            double fSubtotal  = 0;
            double fDescuento = 0;
            double fTotal     = 0;
            double fPropina   = 0;

            double totalComida = 0;
            double totalBebida = 0;

            try
            {
                fSubtotal  = Convert.ToDouble(RowPedido["fSubtotal"].ToString());
                fDescuento = Convert.ToDouble(RowPedido["fDescuento"].ToString());
                fTotal     = Convert.ToDouble(RowPedido["fTotal"].ToString());
                fPropina   = Convert.ToDouble(RowPedido["fPropina"].ToString());
            }
            catch { }

            LineasGuiones("-");
            TextosExtremos("Subtotal", string.Format("{0:c}", fSubtotal));
            if (fDescuento > 0)
            {
                TextosExtremos("Descuento", string.Format("{0:c}", fDescuento));
            }

            TextosExtremos("Total", string.Format("{0:c}", fTotal));

            /*if (fPropina > 0)
             * {
             *  DatosJustificado(" ");
             *  DatosJustificado(" ");
             *  TextosExtremos("Propina sugerida", string.Format("{0:c}", fPropina));
             *  DatosJustificado(" ");
             *  DatosJustificado(" ");
             * }*/
            /*
             * LineasGuiones("-");
             * LineasGuiones("-");
             * TextoCentro("RESUMEN SECCIONADO:");
             *
             * if (totalComida > 0)
             *  TextosExtremos("En Comida", string.Format("{0:c}", fPropina));
             * if (totalBebida > 0)
             *  TextosExtremos(" En Bebida", string.Format("{0:c}", totalBebida));*/

            LineasGuiones("-");
            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado(" ");
            if (Classes.Class_Session.dtParamConf != null)
            {
                RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Ticket Msg L1'");
                if (RowVal.Count() > 0)
                {
                    if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                    {
                        TextoCentro(RowVal[0]["vchConfiguracion"].ToString());
                    }
                }

                RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Ticket Msg L2'");
                if (RowVal.Count() > 0)
                {
                    if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                    {
                        TextoCentro(RowVal[0]["vchConfiguracion"].ToString());
                    }
                }

                RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Ticket Msg L3'");
                if (RowVal.Count() > 0)
                {
                    if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                    {
                        TextoCentro(RowVal[0]["vchConfiguracion"].ToString());
                    }
                }
            }
            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado(" ");
            cortarTicket();
        }
        public Class_Corte(string idCorte)
        {
            ImageLogo = null;///iNCLUIR iMAGEN
            if (SiLogoTick)
            {
                try
                {
                    //obtiene la imagen almacenada en la clase logo
                    Class_logo Cls_logo = new Class_logo();
                    ImageLogo = Image.FromHbitmap(Cls_logo.getLogo().GetHbitmap());
                }
                catch (Exception)
                {
                    ImageLogo = null;
                }
            }
            if (ImageLogo != null)
            {
                if (ImageLogo.Width > MaxWithlogo)
                {
                    int NewHeight = (ImageLogo.Height * MaxWithlogo) / ImageLogo.Width;
                    int NewWidth  = MaxWithlogo;

                    System.Drawing.Image NewImage = ImageLogo.GetThumbnailImage(NewWidth, NewHeight, null, IntPtr.Zero);
                    ImageLogo.Dispose();
                    ImageLogo = NewImage;
                }
            }

            sb = new StringBuilder();

            DataTable dtCorte = ClsCorte.getListaWhere(" WHERE iidCorte = " + idCorte);

            if (dtCorte.Rows.Count == 0)
            {
                return;
            }


            string MensajeTop   = "";
            string MensajePie   = "";
            string ShowTelefono = "";



            DataRow[] RowVal;
            if (Classes.Class_Session.dtParamConf != null)
            {
                RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Dirección local'");
                if (RowVal.Count() > 0)
                {
                    if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                    {
                        MensajeTop = RowVal[0]["vchConfiguracion"].ToString();
                    }
                }

                RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Telefono'");
                if (RowVal.Count() > 0)
                {
                    if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                    {
                        ShowTelefono = RowVal[0]["vchConfiguracion"].ToString();
                    }
                }

                ///Caracteres por linea
                try
                {
                    RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Caracteres x Linea'");
                    if (RowVal.Count() > 0)
                    {
                        if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                        {
                            charMaximoXLinea = Convert.ToInt32(RowVal[0]["vchConfiguracion"].ToString());
                        }
                    }
                }
                catch { }

                try
                {
                    RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Tamaño Fuente'");
                    if (RowVal.Count() > 0)
                    {
                        if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                        {
                            fontSize = Convert.ToInt32(RowVal[0]["vchConfiguracion"].ToString());
                        }
                    }
                }
                catch { }
            }


            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado("Av. Vallarta 5145. Local L15, Iconia, Camino Real, 45040 Zapopan, Jal.");
            if (MensajeTop.Trim() != "")
            {
                DatosJustificado("");
            }
            if (ShowTelefono.Trim() != "")
            {
                DatosJustificado("  TELEFONO: " + ShowTelefono.Trim());
            }



            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado("No Corte: " + Convert.ToInt32(idCorte).ToString("000000"));
            TextosExtremos(dtCorte.Rows[0]["dfechaIn103"].ToString(), dtCorte.Rows[0]["dfechaIn108"].ToString());
            DatosJustificado(" ");
            TextoCentro(" V E N T A   T O T A L ");
            TextoCentro(string.Format("{0:c}", Convert.ToDouble(dtCorte.Rows[0]["fVentaTotal"].ToString())));
            DatosJustificado(" ");
            DatosJustificado(" ");
            Totales("Venta", Convert.ToDouble(dtCorte.Rows[0]["fVentaTotal"].ToString()));
            Totales("Salidas", Convert.ToDouble(dtCorte.Rows[0]["fMontoSalidaDinero"].ToString()));
            Totales("Entrada", Convert.ToDouble(dtCorte.Rows[0]["fMontoEntradaDinero"].ToString()));
            Totales("Inicial", Convert.ToDouble(dtCorte.Rows[0]["fMontoInicial"].ToString()));
            LineasGuiones("-");

            double fTotalFinal = Convert.ToDouble(dtCorte.Rows[0]["fTotalFinal"].ToString()) + Convert.ToDouble(dtCorte.Rows[0]["fMontoInicial"].ToString());

            Totales("Total Final", fTotalFinal);
            Totales("Entregado", Convert.ToDouble(dtCorte.Rows[0]["fTotalEntregado"].ToString()));



            if (fTotalFinal > Convert.ToDouble(dtCorte.Rows[0]["fTotalEntregado"].ToString()))
            {
                double Faltante = fTotalFinal - Convert.ToDouble(dtCorte.Rows[0]["fTotalEntregado"].ToString());
                Totales("Faltante", Faltante);
            }
            else
            {
                if (Convert.ToDouble(dtCorte.Rows[0]["fTotalEntregado"].ToString()) > fTotalFinal)
                {
                    double Sobrante = Convert.ToDouble(dtCorte.Rows[0]["fTotalEntregado"].ToString()) - fTotalFinal;
                    Totales("Sobrante", Sobrante);
                }
            }
            DatosJustificado(" ");
            DatosJustificado(" ");
            TextoCentro("ENTREGAS");
            DatosJustificado(" ");
            Totales("Efectivo", Convert.ToDouble(dtCorte.Rows[0]["fEntregaEfectivo"].ToString()));
            Totales("Credito", Convert.ToDouble(dtCorte.Rows[0]["fEntregaCreditoTC"].ToString()));
            Totales("Debito", Convert.ToDouble(dtCorte.Rows[0]["fEntregaDebito"].ToString()));
            Totales("Vales", Convert.ToDouble(dtCorte.Rows[0]["fEntregaVales"].ToString()));
            Totales("Cheque", Convert.ToDouble(dtCorte.Rows[0]["fEntregaCheque"].ToString()));
            Totales("Otro", Convert.ToDouble(dtCorte.Rows[0]["fEntregaOtro"].ToString()));

            DatosJustificado(" ");
            DatosJustificado(" ");
            TextoCentro("VENTAS X FORMA DE PAGO");
            DatosJustificado(" ");
            Totales("Efectivo", Convert.ToDouble(dtCorte.Rows[0]["fVentaEfectivo"].ToString()));
            Totales("Credito", Convert.ToDouble(dtCorte.Rows[0]["fVentaCreditoTC"].ToString()));
            Totales("Debito", Convert.ToDouble(dtCorte.Rows[0]["fVentaDebito"].ToString()));
            Totales("Vales", Convert.ToDouble(dtCorte.Rows[0]["fVentaVales"].ToString()));
            Totales("Cheque", Convert.ToDouble(dtCorte.Rows[0]["fVentaCheque"].ToString()));
            Totales("Otro", Convert.ToDouble(dtCorte.Rows[0]["fVentaOtro"].ToString()));

            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado(" ");

            cortarTicket();
        }
        public Class_CorteMesero(string idCorte)
        {
            ImageLogo = null;///iNCLUIR iMAGEN
            if (SiLogoTick)
            {
                try
                {
                    //obtiene la imagen almacenada en la clase logo
                    Class_logo Cls_logo = new Class_logo();
                    ImageLogo = Image.FromHbitmap(Cls_logo.getLogo().GetHbitmap());
                }
                catch (Exception)
                {
                    ImageLogo = null;
                }
            }
            if (ImageLogo != null)
            {
                if (ImageLogo.Width > MaxWithlogo)
                {
                    int NewHeight = (ImageLogo.Height * MaxWithlogo) / ImageLogo.Width;
                    int NewWidth  = MaxWithlogo;

                    System.Drawing.Image NewImage = ImageLogo.GetThumbnailImage(NewWidth, NewHeight, null, IntPtr.Zero);
                    ImageLogo.Dispose();
                    ImageLogo = NewImage;
                }
            }

            sb = new StringBuilder();

            DataTable dtCorte = ClsCorteMesero.getListaWhere(" WHERE iidCorteMesero = " + idCorte);

            if (dtCorte.Rows.Count == 0)
            {
                return;
            }


            DataRow[] RowVal;
            if (Classes.Class_Session.dtParamConf != null)
            {
                ///Caracteres por linea
                try
                {
                    RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Caracteres x Linea'");
                    if (RowVal.Count() > 0)
                    {
                        if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                        {
                            charMaximoXLinea = Convert.ToInt32(RowVal[0]["vchConfiguracion"].ToString());
                        }
                    }
                }
                catch { }
                try
                {
                    RowVal = Classes.Class_Session.dtParamConf.Select("vchtipo = 'Tamaño Fuente'");
                    if (RowVal.Count() > 0)
                    {
                        if (RowVal[0]["vchTipo"].ToString().Trim() != "")
                        {
                            fontSize = Convert.ToInt32(RowVal[0]["vchConfiguracion"].ToString());
                        }
                    }
                }
                catch { }
            }


            DatosJustificado(" ");
            DatosJustificado(" ");



            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado("No Corte: " + Convert.ToInt32(idCorte).ToString("000000"));
            TextosExtremos(dtCorte.Rows[0]["dfechaIn103"].ToString(), dtCorte.Rows[0]["dfechaIn108"].ToString());
            DatosJustificado(" No Pedidos: " + dtCorte.Rows[0]["iNumPedidos"].ToString());
            DatosJustificado(" Personas Promedio por Mesa: " + dtCorte.Rows[0]["iNumPedidos"].ToString());
            DatosJustificado(" ");
            TextoCentro(" V E N T A   T O T A L ");
            DatosJustificado(" ");
            TextoCentro(string.Format("{0:c}", Convert.ToDouble(dtCorte.Rows[0]["fVentaTotal"].ToString())));
            DatosJustificado(" ");
            TextoCentro("P R O P I N A   O B J E  T I V O");
            DatosJustificado(" ");
            TextoCentro(string.Format("{0:c}", Convert.ToDouble(dtCorte.Rows[0]["fPropinaObjetivo"].ToString())));
            DatosJustificado(" ");
            TextoCentro("P R O P I N A   O P T E  N I D A");
            DatosJustificado(" ");
            TextoCentro(string.Format("{0:c}", Convert.ToDouble(dtCorte.Rows[0]["fPropinaReal"].ToString())));
            LineasGuiones("-");
            LineasGuiones("-");

            DataTable dtDet = ClsDetCorteMesero.getLista(" AND D.iidCorteMesero = " + idCorte);

            if (dtDet.Rows.Count > 0)
            {
                foreach (DataRow RowDet in dtDet.Rows)
                {
                    Totales(RowDet["vchNombre"].ToString(), Convert.ToDouble(RowDet["fPropinaObtenida"].ToString()));
                }
            }

            DatosJustificado(" ");
            DatosJustificado(" ");
            DatosJustificado(".");
            cortarTicket();
        }