Ver la Versión Completa : [Componente] Filtro de búsqueda en Combobox
jmeza
13 de mayo de 2017, 03:43
Hola, necesito la ayuda de ustedes nuevamente
Tengo un Combobox de búsqueda en un Form, funciona ok
pero necesito programar la búsqueda ingresando un par de letras para hacer la búsqueda mas rápida.
¿ como lo puede hacer
¿ debo configurar algo en las propiedades
Saludos
jotica
13 de mayo de 2017, 17:54
Definelo como DropDown en propiedades
jmeza
14 de mayo de 2017, 03:36
En propiedades realice la definición como DropDown pero no me funciona,
El CmCombo1 muestra ok la lista de información que es el código y nombre
Cuando digito un par de letras para reducir la búsqueda, al dar enter me queda en blanco la lista sin lograr el objetivo.
Algo estoy haciendo mal, o me falta
esta es la rutina que tengo, si la pueden revisar
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 DATOS.
02 CODIGO PIC 9(3).
02 FILLER PIC X VALUE " ".
02 NOMBRE PIC X(35).
PROCEDURE DIVISION.
INVOKE CMCOMBO1 "CLEARLIST".
OPEN INPUT REGLABOR.
PROCESO.
MOVE LOW-VALUE TO AL1-NOM.
START REGLABOR KEY NOT < AL1-NOM INVALID GO TO FIN.
* MOVE LOW-VALUE TO KEY-LAB
* START REGLABOR KEY NOT < KEY-LAB INVALID GO TO FIN.
LEE. READ REGLABOR NEXT AT END GO FIN.
MOVE REG-CODLAB TO CODIGO.
MOVE REG-NOMLABOR TO NOMBRE.
INVOKE CMCOMBO1 "ADDSTRING" USING DATOS.
GO LEE.
FIN.
CLOSE REGLABOR.
EXIT PROGRAM.
Kuk
14 de mayo de 2017, 09:47
jmeza, usa el resalto de sintaxis.
En cuanto a tu problema, creo que es un bug y no funciona.
Puedes hacerlo de otra manera: [Aporte] Ejemplo de Filtro de búsqueda (Type ahead search) - COBOL Foro (http://cobolforo.es/showthread.php?t=224&highlight=type+ahead)
jotica
14 de mayo de 2017, 18:27
Jmeza
Prueba moviendo una coma (,) en DATOS entre CODIGO y NOMBRE y lo defines como CSV Format en File Type en la propiedad File
En la propiedad File en "CurFieldNo" defines 1 si vas a buscar por CODIGO o 2 si lo haras por NOMBRE
Una forma muy sencilla que uso yo es crear un "archivo tabla" tipo texto, con los campos separados por una coma (,) lo defino como CSV Format y lo encadeno con el FileName y con la opcion de AutoLoadFile
---------- Post añadido : 11:27 ---------- Post anterior : 11:19 ----------
Utiliza el Evento SelChange para obtener el dato seleccionado
jmeza
23 de mayo de 2017, 02:08
Hola les comento, que el problema planteado quedo resuelto
Hacer la búsqueda ingresando un par de letras, esto se soluciono cambiando el orden de los Datos en la WORKING, primero el nombre y después el código.
Con las definiciones en las propiedades como me recomendaron.
Saludos
jotica
2 de junio de 2017, 14:40
Jmeza
No se hace necesario cambiar el orden de los datos, con solo haber asignado el numero del campo a utilizar hubiera bastado
No es requicito que el primer dato sea el de busqueda, para eso esta la propiedad CurFieldNo, para definir el dato correspondiente
vBulletin v3.8.7, Derechos ©2000-2026, Jelsoft Enterprises Ltd.