コード例 #1
0
        ///*******************************************************************************
        ///NOMBRE DE LA FUNCIÓN : Consultar_Impresoras_Cajas
        ///DESCRIPCIÓN          : Regresa un DataTable con las Impresoras de las cajas del sistema.
        ///PARAMETROS           : 1. P_Impresoras_Cajas Contiene los criterios para la busqueda.
        ///CREO                 : Luis Eugenio Razo Mendiola
        ///FECHA_CREO           : 25/Oct/2013
        ///MODIFICO             :
        ///FECHA_MODIFICO       :
        ///CAUSA_MODIFICACIÓN   :
        ///*******************************************************************************
        public static System.Data.DataTable Consultar_Impresoras_Cajas(Cls_Cat_Impresoras_Cajas_Negocio P_Impresoras_Cajas)
        {
            StringBuilder Mi_SQL;
            Boolean       Entro_Where = false;
            DataTable     Dt_Consulta = new DataTable();

            Conexion.Iniciar_Helper();
            Conexion.HelperGenerico.Conexion_y_Apertura();

            Mi_SQL = new StringBuilder();
            try
            {
                Mi_SQL.Append("SELECT * FROM " + Cat_Impresoras_Cajas.Tabla_Cat_Impresoras_Cajas);
                if (!String.IsNullOrEmpty(P_Impresoras_Cajas.P_Caja_ID))
                {
                    Mi_SQL.Append(Entro_Where ? " AND " : " WHERE "); Entro_Where = true;
                    Mi_SQL.Append(Cat_Impresoras_Cajas.Campo_Caja_ID + " = '" + P_Impresoras_Cajas.P_Caja_ID + "'");
                }

                Dt_Consulta = Conexion.HelperGenerico.Obtener_Data_Table(Mi_SQL.ToString());
                return(Dt_Consulta);
            }
            catch (Exception e)
            {
                throw new Exception("Consultar Producto : " + e.Message);
            }
            finally
            {
                Conexion.HelperGenerico.Cerrar_Conexion();
            }
        }
コード例 #2
0
        ///*************************************************************************************
        ///NOMBRE DE LA FUNCIÓN : Cmb_Impresoras_Caja_ID_SelectedIndexChanged
        ///DESCRIPCIÓN          :
        ///PARÁMETROS           :
        ///CREÓ                 : Luis Eugenio Razo Mendiola
        ///FECHA_CREO           : 26 Octubre 2013
        ///MODIFICÓ             :
        ///FECHA_MODIFICO       :
        ///CAUSA_MODIFICACIÓN   :
        ///*************************************************************************************
        private void Cmb_Impresoras_Caja_ID_SelectedIndexChanged(object sender, EventArgs e)
        {
            // lipiar las cajas de texto
            Txt_Impresora_Pago.Text      = "";
            Txt_Impresora_Accesos.Text   = "";
            Txt_Impresora_Servicios.Text = "";

            if (Cmb_Impresoras_Caja_ID.SelectedIndex > 0)
            {
                Cls_Cat_Impresoras_Cajas_Negocio Consulta_Impresoras = new Cls_Cat_Impresoras_Cajas_Negocio();

                DataTable Impresoras_Cajas = null;
                Consulta_Impresoras.P_Caja_ID = Cmb_Impresoras_Caja_ID.SelectedValue.ToString();
                Impresoras_Cajas = Consulta_Impresoras.Consultar_Impresoras_Cajas();

                // validar resultado de la consulta
                if (Impresoras_Cajas.Rows.Count > 0)
                {
                    Btn_Nuevo.Enabled     = false;
                    Btn_Modificar.Enabled = true;
                    Btn_Eliminar.Enabled  = true;
                    // mostrar impresoras
                    Txt_Impresora_Pago.Text      = Impresoras_Cajas.Rows[0][Cat_Impresoras_Cajas.Campo_Impresora_Pago].ToString();
                    Txt_Impresora_Accesos.Text   = Impresoras_Cajas.Rows[0][Cat_Impresoras_Cajas.Campo_Impresora_Accesos].ToString();
                    Txt_Impresora_Servicios.Text = Impresoras_Cajas.Rows[0][Cat_Impresoras_Cajas.Campo_Impresora_Servicios].ToString();
                }
                else
                {
                    Btn_Nuevo.Enabled     = true;
                    Btn_Modificar.Enabled = false;
                    Btn_Eliminar.Enabled  = false;
                }
            }
        }
コード例 #3
0
        ///*******************************************************************************
        ///NOMBRE DE LA FUNCIÓN : Alta_Impresoras_Cajas
        ///DESCRIPCIÓN          : Inserta las Impresoras de las cajas del sistema.
        ///PARAMETROS           : 1. P_Impresoras_Cajas Contiene el registro que sera insertado.
        ///CREO                 : Luis Eugenio Razo mendiola
        ///FECHA_CREO           : 25/Oct/2013
        ///MODIFICO             :
        ///FECHA_MODIFICO       :
        ///CAUSA_MODIFICACIÓN   :
        ///*******************************************************************************
        public static void Alta_Impresoras_Cajas(Cls_Cat_Impresoras_Cajas_Negocio P_Impresoras_Cajas)
        {
            StringBuilder Mi_SQL;
            Boolean       Transaccion_Activa = false;

            //String Parametro_Id = "";
            Conexion.Iniciar_Helper();

            if (!Conexion.HelperGenerico.Estatus_Transaccion())
            {
                Conexion.HelperGenerico.Conexion_y_Apertura();
            }
            else
            {
                Transaccion_Activa = true;
            }

            try
            {
                Conexion.HelperGenerico.Iniciar_Transaccion();
                //Parametro_Id = Cls_Metodos_Generales.Obtener_ID_Consecutivo(Cat_Impresoras_Cajas.Tabla_Cat_Impresoras_Cajas, Cat_Impresoras_Cajas.Campo_Caja_ID, "", 5);

                Mi_SQL = new StringBuilder();
                Mi_SQL.Append("INSERT INTO " + Cat_Impresoras_Cajas.Tabla_Cat_Impresoras_Cajas);
                Mi_SQL.Append(" (" + Cat_Impresoras_Cajas.Campo_Caja_ID);
                Mi_SQL.Append(", " + Cat_Impresoras_Cajas.Campo_Impresora_Pago);
                Mi_SQL.Append(", " + Cat_Impresoras_Cajas.Campo_Impresora_Accesos);
                Mi_SQL.Append(", " + Cat_Impresoras_Cajas.Campo_Impresora_Servicios);
                Mi_SQL.Append(", " + Cat_Impresoras_Cajas.Campo_Usuario_Creo);
                Mi_SQL.Append(", " + Cat_Impresoras_Cajas.Campo_Fecha_Creo);
                Mi_SQL.Append(") VALUES ");
                Mi_SQL.Append("( '" + P_Impresoras_Cajas.P_Caja_ID);
                Mi_SQL.Append("','" + P_Impresoras_Cajas.P_Impresora_Pago);
                Mi_SQL.Append("','" + P_Impresoras_Cajas.P_Impresora_Accesos);
                Mi_SQL.Append("','" + P_Impresoras_Cajas.P_Impresora_Servicios);
                Mi_SQL.Append("','" + MDI_Frm_Apl_Principal.Nombre_Usuario);
                Mi_SQL.Append("', " + Cls_Ayudante_Sintaxis.Fecha() + ")");
                Conexion.HelperGenerico.Ejecutar_NonQuery(Mi_SQL.ToString());

                if (!Transaccion_Activa)
                {
                    Conexion.HelperGenerico.Terminar_Transaccion();
                }
            }
            catch (Exception E)
            {
                Conexion.HelperGenerico.Abortar_Transaccion();
                throw new Exception("Alta_Imprespras_Cajas: " + E.Message);
            }
            finally
            {
                if (!Transaccion_Activa)
                {
                    Conexion.HelperGenerico.Cerrar_Conexion();
                }
            }
        }
コード例 #4
0
        ///*******************************************************************************
        ///NOMBRE DE LA FUNCIÓN : Modificar_Impresoras_Cajas
        ///DESCRIPCIÓN          : Modifica el registro de las impresoras de las cajas del sistema
        ///PARAMETROS           : 1. P_Impresoras_Cajas. Contiene el registro que sera modificado.
        ///CREO                 : Luis Eugenio Razo Mendiola
        ///FECHA_CREO           : 25/Oct/2013
        ///MODIFICO             :
        ///FECHA_MODIFICO       :
        ///CAUSA_MODIFICACIÓN   :
        ///*******************************************************************************
        public static void Modificar_Impresoras_Cajas(Cls_Cat_Impresoras_Cajas_Negocio P_Impresoras_Cajas)
        {
            StringBuilder Mi_SQL;
            Boolean       Transaccion_Activa = false;

            Conexion.Iniciar_Helper();
            if (!Conexion.HelperGenerico.Estatus_Transaccion())
            {
                Conexion.HelperGenerico.Conexion_y_Apertura();
            }
            else
            {
                Transaccion_Activa = true;
            }
            try
            {
                Conexion.HelperGenerico.Iniciar_Transaccion();

                Mi_SQL = new StringBuilder();
                Mi_SQL.Append("UPDATE " + Cat_Impresoras_Cajas.Tabla_Cat_Impresoras_Cajas + " SET ");

                if (!String.IsNullOrEmpty(P_Impresoras_Cajas.P_Impresora_Pago))
                {
                    Mi_SQL.Append(Cat_Impresoras_Cajas.Campo_Impresora_Pago + " = '" + P_Impresoras_Cajas.P_Impresora_Pago + "', ");
                }
                if (!String.IsNullOrEmpty(P_Impresoras_Cajas.P_Impresora_Accesos))
                {
                    Mi_SQL.Append(Cat_Impresoras_Cajas.Campo_Impresora_Accesos + " = '" + P_Impresoras_Cajas.P_Impresora_Accesos + "', ");
                }
                if (!String.IsNullOrEmpty(P_Impresoras_Cajas.P_Impresora_Servicios))
                {
                    Mi_SQL.Append(Cat_Impresoras_Cajas.Campo_Impresora_Servicios + " = '" + P_Impresoras_Cajas.P_Impresora_Servicios + "', ");
                }
                Mi_SQL.Append(Cat_Impresoras_Cajas.Campo_Usuario_Modifico + " = '" + MDI_Frm_Apl_Principal.Nombre_Usuario + "', ");
                Mi_SQL.Append(Cat_Impresoras_Cajas.Campo_Fecha_Modifico + " = " + Cls_Ayudante_Sintaxis.Fecha());
                Mi_SQL.Append(" WHERE " + Cat_Impresoras_Cajas.Campo_Caja_ID + " = '" + P_Impresoras_Cajas.P_Caja_ID + "'");
                Conexion.HelperGenerico.Ejecutar_NonQuery(Mi_SQL.ToString());

                if (!Transaccion_Activa)
                {
                    Conexion.HelperGenerico.Terminar_Transaccion();
                }
            }
            catch (Exception E)
            {
                Conexion.HelperGenerico.Abortar_Transaccion();
                throw new Exception("Modificar_Impresoras_Cajas: " + E.Message);
            }
            finally
            {
                if (!Transaccion_Activa)
                {
                    Conexion.HelperGenerico.Cerrar_Conexion();
                }
            }
        }
コード例 #5
0
 /// <summary>
 /// Nombre: Imprimir_Ticket
 ///
 /// Descripción: Método que realiza la configuracion de la propiedades para realizar
 ///              la impresión. Ademas que crea la tarea que se encargara de realizar
 ///              el proceso de impresión.
 ///
 /// Usuario Creo: Juan Alberto Hernández Negrete.
 /// Fecha Creo: 15 Noviembre 2013.
 /// Usuario Modifico:
 /// Fecha Modifico:
 /// </summary>
 public void Imprimir_Ticket()
 {
     try
     {
         // Consultar impresoras para la caja que se encuentra abierta actualmente.
         Obj_Impresora_Caja           = new Cls_Cat_Impresoras_Cajas_Negocio();
         Obj_Impresora_Caja.P_Caja_ID = ERP_BASE.Paginas.Paginas_Generales.MDI_Frm_Apl_Principal.Caja_ID;
         Obj_Impresora_Caja           = Obj_Impresora_Caja.Obtener_Impresoras_Cajas();
         // Creamos un hilo o proceso que se encargara de realizar la tarea de impresión.
         Thread Tarea_Impresion = new Thread(Imprimir_Ticket_Acceso_Estacionamiento);
         // Se asigna como tarea de fondo para que la aplicación pueda continuar mientras esta nueva tarea termina de ejecutarse
         Tarea_Impresion.IsBackground = true;
         Tarea_Impresion.Start();
     }
     catch (Exception Ex)
     {
         throw new Exception("Error de impresión: " + Ex.Message);
     }
 }
コード例 #6
0
        ///*******************************************************************************
        ///NOMBRE DE LA FUNCIÓN : Eliminar_Impresoras_Cajas
        ///DESCRIPCIÓN          : Elimina el registro de las impresoras de las cajas
        ///PARAMETROS           : 1. P_Impresoras_Cajas. Contiene el registro que sera eliminado.
        ///CREO                 : Luis Eugenio Razo Mendiola
        ///FECHA_CREO           : 25/Oct/2013
        ///MODIFICO             :
        ///FECHA_MODIFICO       :
        ///CAUSA_MODIFICACIÓN   :
        ///*******************************************************************************
        public static void Eliminar_Impresoras_Cajas(Cls_Cat_Impresoras_Cajas_Negocio P_Impresoras_Cajas)
        {
            StringBuilder Mi_SQL;
            Boolean       Transaccion_Activa = false;

            Conexion.Iniciar_Helper();

            if (!Conexion.HelperGenerico.Estatus_Transaccion())
            {
                Conexion.HelperGenerico.Conexion_y_Apertura();
            }
            else
            {
                Transaccion_Activa = true;
            }
            try
            {
                Conexion.HelperGenerico.Iniciar_Transaccion();
                Mi_SQL = new StringBuilder();
                Mi_SQL.Append("DELETE FROM " + Cat_Impresoras_Cajas.Tabla_Cat_Impresoras_Cajas);
                Mi_SQL.Append(" WHERE " + Cat_Impresoras_Cajas.Campo_Caja_ID + " = '" + P_Impresoras_Cajas.P_Caja_ID + "'");
                Conexion.HelperGenerico.Ejecutar_NonQuery(Mi_SQL.ToString());

                if (!Transaccion_Activa)
                {
                    Conexion.HelperGenerico.Terminar_Transaccion();
                }
            }
            catch (Exception E)
            {
                Conexion.HelperGenerico.Abortar_Transaccion();
                throw new Exception("Eliminar_Impresoras_cajas: " + E.Message);
            }
            finally
            {
                if (!Transaccion_Activa)
                {
                    Conexion.HelperGenerico.Cerrar_Conexion();
                }
            }
        }
コード例 #7
0
        ///*************************************************************************************
        ///NOMBRE DE LA FUNCIÓN : Modificar_Impresoras_Caja
        ///DESCRIPCIÓN          : Realiza la modificación de las impresoras de las cajas en la base de datos
        ///PARÁMETROS           :
        ///CREO                 : Luis Eugenio Razo Mendiola
        ///FECHA_CREO           : 28 Octubre 2013
        ///MODIFICO             :
        ///FECHA_MODIFICO       :
        ///CAUSA_MODIFICACIÓN   :
        ///*************************************************************************************
        private Boolean Modificar_Impresoras_Caja()
        {
            Cls_Cat_Impresoras_Cajas_Negocio Impresoras_Cajas_Modificar = new Cls_Cat_Impresoras_Cajas_Negocio();

            try
            {
                Impresoras_Cajas_Modificar.P_Caja_ID             = Cmb_Impresoras_Caja_ID.SelectedValue.ToString();
                Impresoras_Cajas_Modificar.P_Impresora_Pago      = Txt_Impresora_Pago.Text;
                Impresoras_Cajas_Modificar.P_Impresora_Accesos   = Txt_Impresora_Accesos.Text;
                Impresoras_Cajas_Modificar.P_Impresora_Servicios = Txt_Impresora_Servicios.Text;
                Impresoras_Cajas_Modificar.P_Usuario_Modifico    = MDI_Frm_Apl_Principal.Nombre_Usuario;
                Impresoras_Cajas_Modificar.P_Fecha_Modifico      = DateTime.Now;
                Impresoras_Cajas_Modificar.Modificar_Impresoras_Cajas();
                MessageBox.Show("Las Impresoras de  la '" + Cmb_Impresoras_Caja_ID.Text + "' ha sido modificadas", "Impresoras Cajas", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return(true);
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "Impresoras Cajas", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }
        }
コード例 #8
0
        ///*******************************************************************************
        ///NOMBRE DE LA FUNCIÓN : Imprimir_Pago
        ///DESCRIPCIÓN          : Manda los datos a la impresora
        ///PARAMETROS           :
        ///CREO                 : Antonio Salvador Benavides Guardado
        ///FECHA_CREO           : 11/Octubre/2013
        ///MODIFICO             :
        ///FECHA_MODIFICO       :
        ///CAUSA_MODIFICACIÓN   :
        ///*******************************************************************************
        public void Imprimir_Pago()
        {
            try
            {
                // consultar impresoras para la caja actual
                Obj_Impresora_Caja           = new Cls_Cat_Impresoras_Cajas_Negocio();
                Obj_Impresora_Caja.P_Caja_ID = "";
                Obj_Impresora_Caja           = Obj_Impresora_Caja.Obtener_Impresoras_Cajas();

                // imprimir recibo de pago
                Imprimir_Recibo();
                // imprimir accesos en una tarea diferente para evitar el tiempo de espera si se imprime una cantidad considerable
                Thread Tarea_Impresion = new Thread(Imprimir_Accesos);
                // se asigna como tarea de fondo para que la aplicación pueda continuar mientras esta nueva tarea termina de ejecutarse
                Tarea_Impresion.IsBackground = true;
                Tarea_Impresion.Start();
            }
            catch (Exception Ex)
            {
                throw new Exception("Error de impresión: " + Ex.Message);
            }
        }
コード例 #9
0
        ///*************************************************************************************
        ///NOMBRE DE LA FUNCIÓN : Btn_Eliminar_Click
        ///DESCRIPCIÓN          : Elimina las impresoras de una de la base de datos
        ///PARÁMETROS           :
        ///CREÓ                 : Luis Eugenio Razo Mensiola
        ///FECHA_CREO           : 28 Octubre 2013
        ///MODIFICÓ             :
        ///FECHA_MODIFICO       :
        ///CAUSA_MODIFICACIÓN   :
        ///*************************************************************************************
        private void Btn_Eliminar_Click(object sender, EventArgs e)
        {
            Cls_Cat_Impresoras_Cajas_Negocio Impresoras_Cajas_Eliminar = new Cls_Cat_Impresoras_Cajas_Negocio();

            try
            {
                if (Cmb_Impresoras_Caja_ID.Text != String.Empty)
                {
                    if (MessageBox.Show(this, "¿Quiere realmente eliminar las impresoras de la '" + Cmb_Impresoras_Caja_ID.Text + "' ?", "Advertencia", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                    {
                        Impresoras_Cajas_Eliminar.P_Caja_ID = Cmb_Impresoras_Caja_ID.SelectedValue.ToString();
                        Impresoras_Cajas_Eliminar.Eliminar_Impresoras_Cajas();
                        MessageBox.Show("Las impresoras de la '" + Cmb_Impresoras_Caja_ID.Text + "' ha sido eliminada", "Impresoras Cajas", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        Cls_Metodos_Generales.Limpia_Controles(Fra_Impresoras_Cajas);
                        Cargar_Datos();
                    }
                }
                else
                {
                    MessageBox.Show("Para eliminar impresoras, debe seleccionar una caja de la lista", "Impresoras Cajas", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
            }
            catch (Exception exc)
            {
                if (exc.Data.Contains("HelpLink.EvtID"))
                {
                    if (exc.Data["HelpLink.EvtID"].ToString() == "547")
                    {
                        MessageBox.Show("No se puede eliminar el registro debido a que tiene relación con otras tablas", "Cajas", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    MessageBox.Show(exc.GetHashCode().ToString() + " " + exc.Message);
                }
            }
        }
コード例 #10
0
        ///*************************************************************************************
        ///NOMBRE DE LA FUNCIÓN : Alta_Impresoras_Cajas
        ///DESCRIPCIÓN          : Realiza el registro de una Impresora de las Cajas en la base de datos
        ///PARÁMETROS           :
        ///CREO                 : Luis Eugenio Razo Mendiola
        ///FECHA_CREO           : 26 Octubre 2013
        ///MODIFICO             :
        ///FECHA_MODIFICO       :
        ///CAUSA_MODIFICACIÓN   :
        ///*************************************************************************************
        private Boolean Alta_Impresoras_Cajas()
        {
            Cls_Cat_Impresoras_Cajas_Negocio Impresoras_Cajas_Nuevo = new Cls_Cat_Impresoras_Cajas_Negocio();
            Boolean Alta = false;

            try
            {
                Impresoras_Cajas_Nuevo.P_Caja_ID             = Cmb_Impresoras_Caja_ID.SelectedValue.ToString();
                Impresoras_Cajas_Nuevo.P_Impresora_Pago      = Txt_Impresora_Pago.Text;
                Impresoras_Cajas_Nuevo.P_Impresora_Accesos   = Txt_Impresora_Accesos.Text;
                Impresoras_Cajas_Nuevo.P_Impresora_Servicios = Txt_Impresora_Servicios.Text;
                Impresoras_Cajas_Nuevo.P_Usuario_Creo        = MDI_Frm_Apl_Principal.Nombre_Usuario;
                Impresoras_Cajas_Nuevo.P_Fecha_Creo          = DateTime.Now;
                Impresoras_Cajas_Nuevo.Alta_Impresoras_Cajas();
                MessageBox.Show("Las Impresoras han sido registradas", "Impresoras Cajas", MessageBoxButtons.OK, MessageBoxIcon.Information);
                Alta = true;
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "Impresoras Cajas", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            return(Alta);
        }
コード例 #11
0
        /// <summary>
        /// Nombre: Cancelacion_Pago_Movil
        /// Descripción: Se realiza el pago por medio de la pin pad
        /// Usuario Creo: Hugo Enrique Ramírez Aguilera
        /// Fecha Creo: 24 Abril 2015.
        /// Usuario Modifico:
        /// Fecha Modifico:
        /// </summary>
        private void Cancelacion_Pago_Movil()
        {
            Cls_Apl_Parametros_Negocio Consulta_Parametros = new Cls_Apl_Parametros_Negocio();
            DataTable Dt_Consulta_Parametros = Consulta_Parametros.Consultar_Parametros();

            Banorte.PinPad.Vx810Segura Pinpad = new Banorte.PinPad.Vx810Segura("EN");
            Hashtable Hst_ConfiguracionPinPad = new Hashtable();
            Hashtable Hst_Salida                  = new Hashtable();
            Hashtable Hst_Selector                = new Hashtable();
            Hashtable Hst_EntradaLeer             = new Hashtable();
            Hashtable Hst_SalidaLeer              = new Hashtable();
            Hashtable Hst_Datos_A_Enviar          = new Hashtable();
            Hashtable Hst_EntradaLeer_Transaccion = new Hashtable();
            Hashtable Hst_SalidaLeer_Transaccion  = new Hashtable();
            Hashtable Hst_Entrada_Notificar       = new Hashtable();
            Hashtable Hst_Salida_Notificar        = new Hashtable();

            Boolean Estatus_Aprobado  = false;
            Boolean Estatus_Rechazada = false;

            String Str_Mensaje              = "";
            String Str_Llave_Maestra        = "";
            String Str_Tipo_Operacion_Venta = "";
            String Str_Modo_Operacion       = Dt_Consulta_Parametros.Rows[0][Cat_Parametros.Campo_Operacion_PinPad].ToString();
            String Str_Afiliacion           = Dt_Consulta_Parametros.Rows[0][Cat_Parametros.Campo_Afiliacion_PinPad].ToString();
            String Str_Usuario              = Dt_Consulta_Parametros.Rows[0][Cat_Parametros.Campo_Usuario_PinPad].ToString();
            String Str_Contrasenia          = Cls_Seguridad.Desencriptar(Dt_Consulta_Parametros.Rows[0][Cat_Parametros.Campo_Contrasenia_PinPad].ToString());
            String Str_URL             = Dt_Consulta_Parametros.Rows[0][Cat_Parametros.Campo_Banorte_Url].ToString();
            String Str_Bin             = "";
            String Str_Numero_Tarjeta  = "";
            String Str_Titular_Tarjeta = "";
            String Str_Accion_Tarjeta  = "";
            String Str_Entry_Mode      = "";
            String Str_Emv_Tags        = "";
            String Str_Track2          = "";
            String Str_Resultado_Lectura_Transaccion = "";
            String Str_Emv_Result = "";
            String Str_Emv_Data   = "";

            try
            {
                if (!String.IsNullOrEmpty(Txt_Monto_Cargar.Text))
                {
                    Str_Numero_Afiliacion = Str_Afiliacion;
                    Str_Numero_Control    = Generar_Numero_Control();

                    //CREA TABLA CON PARÁMETROS DE LA PINPAD
                    Hst_ConfiguracionPinPad.Add("PORT", Str_Pinpad_Com);
                    Hst_ConfiguracionPinPad.Add("BAUD_RATE", "19200");
                    Hst_ConfiguracionPinPad.Add("PARITY", "N");
                    Hst_ConfiguracionPinPad.Add("STOP_BITS", "1");
                    Hst_ConfiguracionPinPad.Add("DATA_BITS", "8");

                    Pinpad.prepareDevice(Hst_ConfiguracionPinPad);

                    Pinpad.getInformation(Hst_Salida);
                    Pinpad.getSelector(Hst_Selector);

                    //  obtener el numero de serie
                    foreach (DictionaryEntry Item in Hst_Salida)
                    {
                        if (Item.Key.ToString() == "SERIAL_NUMBER")
                        {
                            Str_Numero_Serie = Item.Value.ToString();
                            break;
                        }
                    }

                    //  obtener la llave del dispositivo
                    foreach (DictionaryEntry Item in Hst_Selector)
                    {
                        if (Item.Key.ToString() == "SELECTOR")
                        {
                            Str_Llave_Maestra = Item.Value.ToString();
                            break;
                        }
                    }


                    //  transaccion ****************************************************************************
                    Pinpad.displayText("Cancelacion");
                    Pinpad.startTransaction();

                    //  tipo de operacion venta
                    Str_Tipo_Operacion_Venta = "VOID";

                    //Str_Modo_Operacion = "RND";

                    /*   "Producción" = "PRD"
                     *  "Aprobado (Pruebas)" "AUT"
                     *  "Declinado (Pruebas) = "DEC"
                     *  "Aleatorio (Pruebas) "RND"
                     */

                    Hst_EntradaLeer.Add("PAGO_MOVIL", "0");
                    Hst_EntradaLeer.Add("AMOUNT", Txt_Monto_Cargar.Text);

                    //  datos a enviar para la transaccion ******************************
                    if (Str_Accion_Tarjeta != "1")
                    {
                        // PARÁMETROS DE ENTRADA PARA ENVIAR LA TRANSACCIÓN
                        Hst_Datos_A_Enviar.Add("TERMINAL_ID", Str_Numero_Serie);
                        Hst_Datos_A_Enviar.Add("CMD_TRANS", Str_Tipo_Operacion_Venta);
                        Hst_Datos_A_Enviar.Add("CONTROL_NUMBER", Str_Numero_Control);
                        Hst_Datos_A_Enviar.Add("MODE", Str_Modo_Operacion);
                        Hst_Datos_A_Enviar.Add("RESPONSE_LANGUAGE", "EN");
                        Hst_Datos_A_Enviar.Add("BANORTE_URL", Str_URL);
                        Hst_Datos_A_Enviar.Add("REFERENCE", Txt_Numero_Transaccion.Text);
                        Hst_Datos_A_Enviar.Add("MERCHANT_ID", Str_Afiliacion);
                        Hst_Datos_A_Enviar.Add("PASSWORD", Str_Contrasenia);
                        Hst_Datos_A_Enviar.Add("QPS", "0");
                        Hst_Datos_A_Enviar.Add("USER", Str_Usuario);

                        Banorte.ConectorBanorte.sendTransaction(Hst_Datos_A_Enviar, Hst_SalidaLeer_Transaccion);


                        foreach (DictionaryEntry Item in Hst_SalidaLeer_Transaccion)
                        {
                            if (Item.Key.ToString() == "REFERENCE")
                            {
                                Str_Referencia = Item.Value.ToString();
                            }
                            else if (Item.Key.ToString() == "AUTH_CODE")
                            {
                                //Txt_Numero_Autorizacion.Text = Item.Value.ToString();
                                Str_Auth_Code = Item.Value.ToString();
                            }
                            else if (Item.Key.ToString() == "PAYW_RESULT")
                            {
                                Str_Resultado_Lectura_Transaccion = Item.Value.ToString();
                            }
                            else if (Item.Key.ToString() == "EMV_DATA")
                            {
                                Str_Emv_Data = Item.Value.ToString();
                            }
                            else if (Item.Key.ToString() == "Date")
                            {
                                Dtime_Fecha_Transaccion = Convert.ToDateTime(Item.Value.ToString());
                            }
                        }// fin del foreach


                        //  validacion para tarjetas con banda magnetica
                        if ((Str_Entry_Mode != "CHIP") && (Str_Resultado_Lectura_Transaccion == "A"))
                        {
                            Estatus_Aprobado = true;
                            Str_Mensaje      = "Aprobada: " + Str_Auth_Code;
                        }
                        else if ((Str_Resultado_Lectura_Transaccion == "D") || (Str_Resultado_Lectura_Transaccion == "T") || (Str_Resultado_Lectura_Transaccion == "R"))
                        {
                            Estatus_Aprobado = false;
                            Str_Mensaje      = "Declinada ";
                        }
                    }


                    Pinpad.displayText(Str_Mensaje);

                    //  se libera el equipo pin pad **************************************
                    Pinpad.releaseDevice();

                    if (Estatus_Aprobado == true)
                    {
                        //  se genera la impresion del Vouchers de venta
                        Cls_Cat_Impresoras_Cajas_Negocio Obj_Impresora_Caja = new Cls_Cat_Impresoras_Cajas_Negocio();
                        Obj_Impresora_Caja.P_Caja_ID = ERP_BASE.Paginas.Paginas_Generales.MDI_Frm_Apl_Principal.Caja_ID;
                        Obj_Impresora_Caja           = Obj_Impresora_Caja.Obtener_Impresoras_Cajas();

                        printFont = new Font("Arial", 8);
                        PrintDocument PD = new PrintDocument();
                        PD.PrinterSettings.PrinterName = Obj_Impresora_Caja.P_Impresora_Pago;
                        PD.PrintPage += new PrintPageEventHandler(Imprimir_Solicitud);
                        PD.Print();

                        MessageBox.Show(this, "Aprobada: " + Str_Auth_Code, "Validación", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
                else
                {
                    MessageBox.Show(this, "", "introdusca la cantidad a cargar", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            catch (Exception Ex)
            {
                MessageBox.Show(this, Ex.Message, "Error - Método :[Btn_Pago_PinPad_Click]", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }