private void ImprimirNotaCompra()
        {
            Configuracione empre = new EmpeñosDC(new clsConeccionDB().StringConn()).Configuraciones.First();

            string empresa = new clsModificarConfiguracion().configGetValue("Empresa");
            string razonSocial = new clsModificarConfiguracion().configGetValue("RazonSocial");
            string rfc = new clsModificarConfiguracion().configGetValue("RFC");
            string curp = new clsModificarConfiguracion().configGetValue("CURP");
            string dirc = String.Format("{0} CP {1}", empre.Direccion, empre.CodigoPostal);
            int padRe = ((40 - empresa.Length) / 2) + empresa.Length;
            int padRrs = ((40 - razonSocial.Length) / 2) + razonSocial.Length;
            int padRrfc = ((40 - rfc.Length) / 2) + rfc.Length;
            int padRcurp = ((40 - curp.Length) / 2) + curp.Length;

            Ticket ticket = new Ticket(5);
            ticket.AddHeaderLine("            CASA  DE  EMPEÑOS           ");
            ticket.AddHeaderLine("                                        ");
            ticket.AddHeaderLine(empresa.PadLeft(padRe));
            ticket.AddHeaderLine(razonSocial.PadLeft(padRrs));
            ticket.AddHeaderLine(rfc.PadLeft(padRrfc));
            ticket.AddHeaderLine(curp.PadLeft(padRcurp));
            if (dirc.Length > 40)
            {
                int currentChar = 0;
                int itemLenght = dirc.Length;

                while (itemLenght > 40)
                {
                    ticket.AddHeaderLine(dirc.Substring(currentChar, 40));
                    currentChar += 40;
                    itemLenght -= 40;
                }
                ticket.AddHeaderLine(dirc.Substring(currentChar));

            }
            else
            {
                ticket.AddHeaderLine(dirc);
            }
            ticket.AddHeaderLine(empre.Municipio);
            ticket.AddHeaderLine("             TICKET DE VENTA            ");
            Usuario usu = new EmpeñosDC(new clsConeccionDB().StringConn()).Usuarios.Single(u => u.CveUsuario == Convert.ToInt32(new clsModificarConfiguracion().configGetValue("IDUsuarioApp")));
            ticket.AddSubHeaderLine("ATENDIO: " + usu.Nombre);
            ticket.AddSubHeaderLine("FOLIO COMPRA: " + txtCveCompra.Text);
            ticket.AddSubHeaderLine(String.Format("FECHA VENTA: {0} {1}", DateTime.Today.ToString("dd/MMM/yyyy"), DateTime.Now.ToShortTimeString()));

            foreach (DataRow pRow in _dtArticulos.Rows)
            {
                ticket.AddItem(pRow[1].ToString(),SacarTipo( pRow[0].ToString()), Convert.ToDecimal(pRow[2]).ToString("C"), Convert.ToDecimal(pRow[3]).ToString("C"),"");
            }
            ticket.AddTotal("TOTAL VENTA: ",Convert.ToDecimal(txtTotalCompra.EditValue).ToString("C"));
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.PrintTicket(new clsModificarConfiguracion().configGetValue("ImpresoraTickets"));
        }
        void ImprimirTicketsAbono()
        {
            _entidades.Connection.ConnectionString = new clsConeccionDB().StringConn();
            Configuracione empre = (from em in _entidades.Configuraciones
                                   select em).FirstOrDefault();

            string empresa = new clsModificarConfiguracion().configGetValue("Empresa");
            string razonSocial = new clsModificarConfiguracion().configGetValue("RazonSocial");
            string rfc = new clsModificarConfiguracion().configGetValue("RFC");
            string curp = new clsModificarConfiguracion().configGetValue("CURP");
            if (empre != null)
            {
                string dirc = String.Format("{0} CP {1}", empre.Direccion, empre.CodigoPostal);

                int padRe = ((40 - empresa.Length) / 2) + empresa.Length;
                int padRrs = ((40 - razonSocial.Length) / 2) + razonSocial.Length;
                int padRrfc = ((40 - rfc.Length) / 2) + rfc.Length;
                int padRcurp = ((40 - curp.Length) / 2) + curp.Length;

                Ticket ticket = new Ticket(1);
                ticket.AddHeaderLine("            CASA  DE  EMPEÑOS           ");
                ticket.AddHeaderLine("                                        ");
                ticket.AddHeaderLine(empresa.PadLeft(padRe));
                ticket.AddHeaderLine(razonSocial.PadLeft(padRrs));
                ticket.AddHeaderLine(rfc.PadLeft(padRrfc));
                ticket.AddHeaderLine(curp.PadLeft(padRcurp));
                if (dirc.Length > 40)
                {
                    int currentChar = 0;
                    int itemLenght = dirc.Length;

                    while (itemLenght > 40)
                    {
                        ticket.AddHeaderLine(dirc.Substring(currentChar, 40));
                        currentChar += 40;
                        itemLenght -= 40;
                    }
                    ticket.AddHeaderLine(dirc.Substring(currentChar));

                }
                else
                {
                    ticket.AddHeaderLine(dirc);
                }
                ticket.AddHeaderLine(empre.Municipio);
                ticket.AddHeaderLine("            TICKET DE ABONO              ");

                ticket.AddSubHeaderLine("CLAVE PAGO: # " + txtCveAbono.Text);
                ticket.AddSubHeaderLine("CLAVE VENTA: # " + txtCveVenta.Text);
                Usuario usu = _entidades.Usuarios.FirstOrDefault(u => u.CveUsuario == Convert.ToInt32(new clsModificarConfiguracion().configGetValue("IDUsuarioApp")));
                if (usu != null) ticket.AddSubHeaderLine("ATENDIO: " + usu.Nombre);
                ticket.AddSubHeaderLine("CLIENTE: " + txtCliente.Text);
                ticket.AddSubHeaderLine("SALDO ANTERIOR: " + double.Parse(txtSaldo.EditValue.ToString()).ToString("C"));
                ticket.AddSubHeaderLine("ABONO: " + double.Parse(txtAbono.EditValue.ToString()).ToString("C"));
                ticket.AddSubHeaderLine(String.Format("Fecha: {0} {1}", DateTime.Today.ToString("dd/MMM/yyyy"), DateTime.Now.ToShortTimeString()));

                for (int x = 0; x < _artic.Rows.Count; x++)
                    ticket.AddItem(_artic.Rows[x][0].ToString(), _artic.Rows[x][1].ToString(), double.Parse(_artic.Rows[x][4].ToString()).ToString("C"));
                decimal saldo = Convert.ToDecimal(txtSaldo.EditValue) - Convert.ToDecimal(txtAbono.EditValue);
                ticket.AddTotal("SALDO ACTUAL", double.Parse(saldo.ToString()).ToString("C"));

                ticket.AddFooterLine("          GRACIAS POR SU PAGO            ");
                ticket.AddFooterLine("");
                ticket.AddFooterLine("");
                ticket.AddFooterLine("");
                ticket.AddFooterLine("");
                ticket.PrintTicket(new clsModificarConfiguracion().configGetValue("ImpresoraTickets"));
            }
        }
        private void ImprimirTikets()
        {
            Configuracione empre = new EmpeñosDC(new clsConeccionDB().StringConn()).Configuraciones.First();

            string empresa = new clsModificarConfiguracion().configGetValue("Empresa");
            string razonSocial = new clsModificarConfiguracion().configGetValue("RazonSocial");
            string rfc = new clsModificarConfiguracion().configGetValue("RFC");
            string curp = new clsModificarConfiguracion().configGetValue("CURP");
            string dirc = String.Format("{0} CP {1} {2}", empre.Direccion, empre.CodigoPostal,empre.Municipio);

            int padRe = ((40 - empresa.Length) / 2) + empresa.Length;
            int padRrs = ((40 - razonSocial.Length) / 2) + razonSocial.Length;
            int padRrfc = ((40 - rfc.Length) / 2) + rfc.Length;
            int padRcurp = ((40 - curp.Length) / 2) + curp.Length;

            Ticket ticket = new Ticket(2);
            ticket.AddHeaderLine("            CASA  DE  EMPEÑOS           ");
            ticket.AddHeaderLine("                                        ");
            ticket.AddHeaderLine(empresa.PadLeft(padRe));
            ticket.AddHeaderLine(razonSocial.PadLeft(padRrs));
            ticket.AddHeaderLine(rfc.PadLeft(padRrfc));
            ticket.AddHeaderLine(curp.PadLeft(padRcurp));
            if (dirc.Length > 40)
            {
                int currentChar = 0;
                int itemLenght = dirc.Length;

                while (itemLenght > 40)
                {
                    ticket.AddHeaderLine(dirc.Substring(currentChar, 40));
                    currentChar += 40;
                    itemLenght -= 40;
                }
                ticket.AddHeaderLine(dirc.Substring(currentChar));

            }
            else
            {
                ticket.AddHeaderLine(dirc);
            }
            ticket.AddHeaderLine("           TICKET DE " + cboTipo.Text.ToUpper());

            ticket.AddSubHeaderLine("CLAVE: " + txtCLave.Text);
            ticket.AddSubHeaderLine("REALIZO: " + new clsModificarConfiguracion().configGetValue("UsuarioAPP"));
            ticket.AddSubHeaderLine(String.Format("FECHA: {0} {1}", DateTime.Today.ToString("dd/MMM/yyyy").ToUpper(), DateTime.Now.ToShortTimeString()));
            string[] lineas = txtConcepto.Text.Split(new[] {"\r\n"}, StringSplitOptions.RemoveEmptyEntries);
            foreach (var linea in lineas )
            {
                ticket.AddItem("", linea, "");
            }
            //ticket.AddItem("", txtConcepto.Text, "");
            ticket.AddTotal("CANTIDAD:", Convert.ToDecimal(txtCantidad.EditValue).ToString("$ #,##0.00"));
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("________________________________________");
            ticket.AddFooterLine("                AUTORIZO                ");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");

            ticket.PrintTicket(new clsModificarConfiguracion().configGetValue("ImpresoraTickets"));
        }
        private void ImprimirTickets(int cveDesempeño)
        {
            Configuracione empre = new EmpeñosDC(new clsConeccionDB().StringConn()).Configuraciones.First();

            string empresa = new clsModificarConfiguracion().configGetValue("Empresa");
            string razonSocial = new clsModificarConfiguracion().configGetValue("RazonSocial");
            string rfc = new clsModificarConfiguracion().configGetValue("RFC");
            string curp = new clsModificarConfiguracion().configGetValue("CURP");
            string dirc = String.Format("{0} CP {1}", empre.Direccion, empre.CodigoPostal);
            int padRe = ((40 - empresa.Length) / 2) + empresa.Length;
            int padRrs = ((40 - razonSocial.Length) / 2) + razonSocial.Length;
            int padRrfc = ((40 - rfc.Length) / 2) + rfc.Length;
            int padRcurp = ((40 - curp.Length) / 2) + curp.Length;

            Ticket ticket = new Ticket(0);
            ticket.AddHeaderLine("            CASA  DE  EMPEÑOS           ");
            ticket.AddHeaderLine("                                        ");
            ticket.AddHeaderLine(empresa.PadLeft(padRe));
            ticket.AddHeaderLine(razonSocial.PadLeft(padRrs));
            ticket.AddHeaderLine(rfc.PadLeft(padRrfc));
            ticket.AddHeaderLine(curp.PadLeft(padRcurp));
            if (dirc.Length > 40)
            {
                int currentChar = 0;
                int itemLenght = dirc.Length;

                while (itemLenght > 40)
                {
                    ticket.AddHeaderLine(dirc.Substring(currentChar, 40));
                    currentChar += 40;
                    itemLenght -= 40;
                }
                ticket.AddHeaderLine(dirc.Substring(currentChar));

            }
            else
            {
                ticket.AddHeaderLine(dirc);
            }
            ticket.AddHeaderLine(empre.Municipio);
            ticket.AddHeaderLine("          TICKET DE DESEMPEÑO           ");
            Usuario usu = new EmpeñosDC(new clsConeccionDB().StringConn()).Usuarios.Single(u => u.CveUsuario == Convert.ToInt32(new clsModificarConfiguracion().configGetValue("IDUsuarioApp")));
            ticket.AddSubHeaderLine("ATENDIO: " + usu.Nombre);
            ticket.AddSubHeaderLine("FOLIO BOLETA: " + txtFolioBoleta.Text);
            ticket.AddSubHeaderLine("DESEMPEÑO NUM: " + cveDesempeño);
            ticket.AddSubHeaderLine("CLIENTE: " + txtNomCliente.Text);
            ticket.AddSubHeaderLine(String.Format("FECHA DESEMPEÑO:{0} {1}", DateTime.Today.ToString("dd/MMM/yyyy").ToUpper(), DateTime.Now.ToShortTimeString()));
            ticket.AddSubHeaderLine("----------------------------------------");
            ticket.AddSubHeaderLine("         ARTICULOS A DESEMPEÑAR         ");
            string prendas = _dtprenda.Rows.Cast<DataRow>().Aggregate("", (current, pRow) => current + pRow[0] + ",");
            ticket.AddSubHeaderLine(prendas);
            for (int x = 0; x < _dtIntereses.Rows.Count; x++)
                ticket.AddItem(
                    txtClave.Text,
                    Convert.ToDecimal(_dtIntereses.Rows[x][3]).ToString("C2"),
                    Convert.ToDecimal(_dtIntereses.Rows[x][5]).ToString("C2"),
                    Convert.ToDecimal(_dtIntereses.Rows[x][6]).ToString("C2"),
                    Convert.ToDateTime(_dtIntereses.Rows[x][1]).ToString("dd-MMM-yyyy") + " al " + Convert.ToDateTime(_dtIntereses.Rows[x][2]).ToString("dd-MMM-yyyy"));
            ticket.AddTotal("MESES PAGADOS: ", txtMeses.EditValue.ToString());
            ticket.AddTotal("INTERES TOTAL: ", double.Parse(txtInteresGenererado.EditValue.ToString()).ToString("C2"));
            ticket.AddTotal("RECARGOS: ", double.Parse(txtRecargoGenerado.EditValue.ToString()).ToString("C2"));
            ticket.AddTotal("RECARGO POR DÍA: ", double.Parse(txtRecargoDia.EditValue.ToString()).ToString("C2"));
            ticket.AddTotal("DIAS RECARGO: ", txtDiasRecargo.EditValue.ToString());
            ticket.AddTotal("TOTAL A PAGAR: ", double.Parse(txtTotalPago.EditValue.ToString()).ToString("C2"));
            ticket.AddFooterLine("");
            ticket.AddFooterLine("FECHA DE EMPEÑO: "+ dtpFechaEmpeño.DateTime.Date.ToString("dd-MMMM-yyyy").ToUpper());
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.PrintTicket(new clsModificarConfiguracion().configGetValue("ImpresoraTickets"));
        }
        void ImprimirTicketsVenta()
        {
            _entidades.Connection.ConnectionString = new clsConeccionDB().StringConn();
            Configuracione empre = (from em in _entidades.Configuraciones
                                     select em).First();

            string empresa = new clsModificarConfiguracion().configGetValue("Empresa");
            string razonSocial = new clsModificarConfiguracion().configGetValue("RazonSocial");
            string rfc = new clsModificarConfiguracion().configGetValue("RFC");
            string curp = new clsModificarConfiguracion().configGetValue("CURP");
            string dirc = String.Format("{0} CP {1}", empre.Direccion, empre.CodigoPostal);//new clsModificarConfiguracion().configGetValue("Direccion");
            //string mun = String.Format("C.P: {0} {1}", conf.Single().CodigoPostal, conf.Single().Municipio);
            int padRe = ((40 - empresa.Length) / 2) + empresa.Length;
            int padRrs = ((40 - razonSocial.Length) / 2) + razonSocial.Length;
            int padRrfc = ((40 - rfc.Length) / 2) + rfc.Length;
            int padRcurp = ((40 - curp.Length) / 2) + curp.Length;
            //int padRE = ((40 - empresa.Length) / 2) + empresa.Length;

            Ticket ticket = new Ticket(1);
            ticket.AddHeaderLine("            CASA  DE  EMPEÑOS           ");
            ticket.AddHeaderLine("                                        ");
            ticket.AddHeaderLine(empresa.PadLeft(padRe));
            ticket.AddHeaderLine(razonSocial.PadLeft(padRrs));
            ticket.AddHeaderLine(rfc.PadLeft(padRrfc));
            ticket.AddHeaderLine(curp.PadLeft(padRcurp));
            if (dirc.Length > 40)
            {
                int currentChar = 0;
                int itemLenght = dirc.Length;

                while (itemLenght > 40)
                {
                    ticket.AddHeaderLine(dirc.Substring(currentChar, 40));
                    currentChar += 40;
                    itemLenght -= 40;
                }
                ticket.AddHeaderLine(dirc.Substring(currentChar));

            }
            else
            {
                ticket.AddHeaderLine(dirc);
            }
            ticket.AddHeaderLine(empre.Municipio);
            ticket.AddHeaderLine("            TICKET DE COMPRA             ");

            ticket.AddSubHeaderLine("COMPRA: # " + txtCveVenta.Text);
            Usuario usu = _entidades.Usuarios.First(u => u.CveUsuario == Convert.ToInt32(new clsModificarConfiguracion().configGetValue("IDUsuarioApp")));
            ticket.AddSubHeaderLine("ATENDIO: " + usu.Nombre);
            ticket.AddSubHeaderLine("CLIENTE: " + txtCliente.Text);
            ticket.AddSubHeaderLine(String.Format("Fecha: {0} {1}", DateTime.Today.ToString("dd/MMM/yyyy"), DateTime.Now.ToShortTimeString()));

            for (int x = 0; x < _dtartic.Rows.Count; x++)
                ticket.AddItem(_dtartic.Rows[x][0].ToString(), _dtartic.Rows[x][1].ToString(), double.Parse(_dtartic.Rows[x][4].ToString()).ToString("C"));//; gridProductos.Rows[x].Cells[0].Value.ToString(), gridProductos.Rows[x].Cells[0].Value.ToString(), gridProductos.Rows[x].Cells[0].Value.ToString());
            ticket.AddTotal("TOTAL COMPRA ", double.Parse(txtTotalVenta.EditValue.ToString()).ToString("C"));
            if (cboTipoVenta.Text == "Apartado")
            {
                ticket.AddTotal("ENGANCHE ", double.Parse(txtEnganche.EditValue.ToString()).ToString("C"));
                ticket.AddTotal("SALDO ", double.Parse(txtSaldo.EditValue.ToString()).ToString("C"));
            }
            ticket.AddFooterLine("          GRACIAS POR SU COMPRA           ");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.PrintTicket(new clsModificarConfiguracion().configGetValue("ImpresoraTickets"));
        }
        void ImprimirTicketPago()
        {
            //mapeoVentas.Connection.ConnectionString = new clsConeccionDB().StringConn();
            Configuracione empre = (from em in new EmpeñosDC(new clsConeccionDB().StringConn()).Configuraciones
                                    select em).FirstOrDefault();

            string empresa = new clsModificarConfiguracion().configGetValue("Empresa");
            string razonSocial = new clsModificarConfiguracion().configGetValue("RazonSocial");
            string rfc = new clsModificarConfiguracion().configGetValue("RFC");
            string curp = new clsModificarConfiguracion().configGetValue("CURP");
            if (empre != null)
            {
                string dirc = String.Format("{0} CP {1}", empre.Direccion, empre.CodigoPostal);//new clsModificarConfiguracion().configGetValue("Direccion");
                //string mun = String.Format("C.P: {0} {1}", conf.Single().CodigoPostal, conf.Single().Municipio);
                int padRe = ((40 - empresa.Length) / 2) + empresa.Length;
                int padRrs = ((40 - razonSocial.Length) / 2) + razonSocial.Length;
                int padRrfc = ((40 - rfc.Length) / 2) + rfc.Length;
                int padRcurp = ((40 - curp.Length) / 2) + curp.Length;
                //int padRE = ((40 - empresa.Length) / 2) + empresa.Length;

                Ticket ticket = new Ticket(4);
                ticket.AddHeaderLine("            CASA  DE  EMPEÑOS           ");
                ticket.AddHeaderLine("                                        ");
                ticket.AddHeaderLine(empresa.PadLeft(padRe));
                ticket.AddHeaderLine(razonSocial.PadLeft(padRrs));
                ticket.AddHeaderLine(rfc.PadLeft(padRrfc));
                ticket.AddHeaderLine(curp.PadLeft(padRcurp));
                if (dirc.Length > 40)
                {
                    int currentChar = 0;
                    int itemLenght = dirc.Length;

                    while (itemLenght > 40)
                    {
                        ticket.AddHeaderLine(dirc.Substring(currentChar, 40));
                        currentChar += 40;
                        itemLenght -= 40;
                    }
                    ticket.AddHeaderLine(dirc.Substring(currentChar));

                }
                else
                {
                    ticket.AddHeaderLine(dirc);
                }
                ticket.AddHeaderLine(empre.Municipio);
                ticket.AddHeaderLine("     TICKET DE PAGO FINANCIAMIENTO      ");

                ticket.AddSubHeaderLine("CLAVES PAGO: " + _folios);
                ticket.AddSubHeaderLine("CLAVE FOLIO: # " + txtFolioFinanciamiento.Text);
                ticket.AddSubHeaderLine("TIPO: # " + txtTipoFinanciamiento.Text);
                if (_entidades != null)
                {
                    Usuario usu = _entidades.Usuarios.FirstOrDefault(u => u.CveUsuario == Convert.ToInt32(new clsModificarConfiguracion().configGetValue("IDUsuarioApp")));
                    if (usu != null) ticket.AddSubHeaderLine("ATENDIO: " + usu.Nombre);
                }
                ticket.AddSubHeaderLine("CLIENTE: " + txtNombre.Text);
                ticket.AddSubHeaderLine("SALDO ANTERIOR: " + double.Parse(txtSaldoActual.EditValue.ToString()).ToString("C"));

                ticket.AddSubHeaderLine(String.Format("FECHA: {0} {1}", DateTime.Today.ToString("dd/MMM/yyyy").ToUpper(), DateTime.Now.ToShortTimeString()));

                for (int x = 0; x < _dtCalendario.Rows.Count; x++)
                {
                    if ((bool)_dtCalendario.Rows[x]["Pagar"] == false) continue;
                    ticket.AddItem(_dtCalendario.Rows[x][0].ToString(), Convert.ToDateTime(_dtCalendario.Rows[x][1]).ToString("dd/MMM/yy").ToUpper() + " AL " + Convert.ToDateTime(_dtCalendario.Rows[x][2]).ToString("dd/MMM/yy").ToUpper(), double.Parse(_dtCalendario.Rows[x][7].ToString()).ToString("C"));//; gridProductos.Rows[x].Cells[0].Value.ToString(), gridProductos.Rows[x].Cells[0].Value.ToString(), gridProductos.Rows[x].Cells[0].Value.ToString());
                }
                Prestamo fina = new EmpeñosDC(new clsConeccionDB().StringConn()).Prestamos.FirstOrDefault(p => p.Clave == _cveFinanciamiento);
                ticket.AddTotal("# PAGOS: ", txtMesesPagar.EditValue.ToString());
                ticket.AddTotal("CANTIDAD: ", decimal.Parse(txtCantidadPago.EditValue.ToString()).ToString("C"));
                ticket.AddTotal("RECARGO: ", decimal.Parse(txtTotalRecargo.EditValue.ToString()).ToString("C"));
                ticket.AddTotal("ABONO A CAPITAL: ", decimal.Parse(txtAbonoCapital.EditValue.ToString()).ToString("C"));
                ticket.AddTotal("TOTAL PAGO: ", decimal.Parse(txtTotalAPagar.EditValue.ToString()).ToString("C"));

                if (fina != null) ticket.AddTotal("SALDO ACTUAL: ", fina.Saldo.ToString("C"));

                ticket.AddFooterLine("          GRACIAS POR SU PAGO            ");
                ticket.AddFooterLine("");
                ticket.AddFooterLine("");
                ticket.AddFooterLine("");
                ticket.AddFooterLine("");
                ticket.PrintTicket(new clsModificarConfiguracion().configGetValue("ImpresoraTickets"));
            }
        }
        private void ImprimirRetiroBase()
        {
            Transaccione tran = new Transaccione
            {
                CveUsuario = Convert.ToInt32(new clsModificarConfiguracion().configGetValue("IDUsuarioAPP")),
                FechaTransaccion = DateTime.Today.Date,
                TipoTransaccion = "Retiro",
                Cantidad = Convert.ToDecimal(txtBase.EditValue),
                Concepto = string.Format("RETIRO DE BASE DEL GRUPO {0}-{1} POR SALDAR CRÉDITO", txtCveGrupo.Text, txtNombreGrupo.Text),
                Estado = true
            };
            EmpeñosDC _enti=new EmpeñosDC(new clsConeccionDB().StringConn());
            _enti.Transacciones.InsertOnSubmit(tran);
            _enti.SubmitChanges();
            //new LogicaTransacciones().AgregarTransaccion(tran);//se comento 4/6/2014 por que usuario normal no tiene permiso de los retiros
            Configuracione empre = new EmpeñosDC(new clsConeccionDB().StringConn()).Configuraciones.First();

            string empresa = new clsModificarConfiguracion().configGetValue("Empresa");
            string razonSocial = new clsModificarConfiguracion().configGetValue("RazonSocial");
            string rfc = new clsModificarConfiguracion().configGetValue("RFC");
            string curp = new clsModificarConfiguracion().configGetValue("CURP");
            string dirc = String.Format("{0} CP {1} {2}", empre.Direccion, empre.CodigoPostal, empre.Municipio);

            int padRe = ((40 - empresa.Length) / 2) + empresa.Length;
            int padRrs = ((40 - razonSocial.Length) / 2) + razonSocial.Length;
            int padRrfc = ((40 - rfc.Length) / 2) + rfc.Length;
            int padRcurp = ((40 - curp.Length) / 2) + curp.Length;

            Ticket ticket = new Ticket(2);
            ticket.AddHeaderLine("            CASA  DE  EMPEÑOS           ");
            ticket.AddHeaderLine("                                        ");
            ticket.AddHeaderLine(empresa.PadLeft(padRe));
            ticket.AddHeaderLine(razonSocial.PadLeft(padRrs));
            ticket.AddHeaderLine(rfc.PadLeft(padRrfc));
            ticket.AddHeaderLine(curp.PadLeft(padRcurp));
            if (dirc.Length > 40)
            {
                int currentChar = 0;
                int itemLenght = dirc.Length;

                while (itemLenght > 40)
                {
                    ticket.AddHeaderLine(dirc.Substring(currentChar, 40));
                    currentChar += 40;
                    itemLenght -= 40;
                }
                ticket.AddHeaderLine(dirc.Substring(currentChar));

            }
            else
            {
                ticket.AddHeaderLine(dirc);
            }
            ticket.AddHeaderLine("           TICKET DE RETIRO");

            ticket.AddSubHeaderLine("CLAVE: " + tran.Clave);
            ticket.AddSubHeaderLine("REALIZO: " + new clsModificarConfiguracion().configGetValue("UsuarioAPP"));
            ticket.AddSubHeaderLine(String.Format("FECHA: {0} {1}", DateTime.Today.ToString("dd/MMM/yyyy").ToUpper(), DateTime.Now.ToShortTimeString()));
            string[] lineas =tran.Concepto.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
            foreach (var linea in lineas)
            {
                ticket.AddItem("", linea, "");
            }
            //ticket.AddItem("", txtConcepto.Text, "");
            ticket.AddTotal("CANTIDAD:",tran.Cantidad.ToString("$ #,##0.00"));
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("________________________________________");
            ticket.AddFooterLine("                AUTORIZO                ");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");
            ticket.AddFooterLine("");

            ticket.PrintTicket(new clsModificarConfiguracion().configGetValue("ImpresoraTickets"));
        }