ListBoxEx

Aquí puedes preguntar o compartir tus dudas y conocimientos acerca del programa
Alguien que me pase un ejemplo de busqueda en un ListBoxEx , por mas que intento el puto me da errores.

en ListBox funciona perfecto pero en este no me busca nada...


en el boton de la pagina lleba este codigo antiguo que si funciona perfecto
--limpia algunos objetos----
Input.SetText("informacion_info", "");
ListBox.DeleteItem("nombre_List", -1);
Input.SetText("Total_input", "");

--input de busqueda
sSearch = Input.GetText("Search");

	--  Lista de argumentos o tablas a buscar 
	tblRS = SQLite.QueryToTable(db, "Select * from CENSADOS where (IDENTIFICACION LIKE '%"..Input.GetText("Search").."%') or (NOMBREDELENCUESTADO LIKE '%"..Input.GetText("Search").."%') or (TELEVISORESLCD LIKE '%"..Input.GetText("Search").."%') or (SECTOR LIKE '%"..Input.GetText("Search").."%') or (ESTADODELAVIVIENDA LIKE '%"..Input.GetText("Search").."%') or (MUNICIPIO LIKE '%"..Input.GetText("Search").."%') or (SECTOR LIKE '%"..Input.GetText("Search").."%') or (FECHADECENSO LIKE '%"..Input.GetText("Search").."%') or (DIRECCIONDELACASA LIKE '%"..Input.GetText("Search").."%') or (CASANUMERO LIKE '%"..Input.GetText("Search").."%') or (NOMBREDELENCUESTADO LIKE '%"..Input.GetText("Search").."%') or (IDENTIFICACION LIKE '%"..Input.GetText("Search").."%') or (NOMBREDELASOCIADO LIKE '%"..Input.GetText("Search").."%') or (NUMERODEASOCIADO LIKE '%"..Input.GetText("Search").."%') or (NUMERODETELEVISORES LIKE '%"..Input.GetText("Search").."%') or (TELEVISORESCONVENCIONALES LIKE '%"..Input.GetText("Search").."%') or (TELEVISORESLCD LIKE '%"..Input.GetText("Search").."%')or (TIPODEVIVIENDA LIKE '%"..Input.GetText("Search").."%') or (TIPODEALOJAMIENTO LIKE '%"..Input.GetText("Search").."%')  or (ESTADODELUSUARIO LIKE '%"..Input.GetText("Search").."%') or (ANTIGUEDADENELSERVICIO LIKE '%"..Input.GetText("Search").."%') or (HANSUSPENDIDOELSERVICIO LIKE '%"..Input.GetText("Search").."%') or (FUESUSCRIPTORENOTRADIRECCION LIKE '%"..Input.GetText("Search").."%') or (FECHADELRECIBO LIKE '%"..Input.GetText("Search").."%') or (MONTOADEUDADO LIKE '%"..Input.GetText("Search").."%') or (NUMERODECUENTADECOBRO LIKE '%"..Input.GetText("Search").."%') or (TELEFONODELSUSCRIPTOR LIKE '%"..Input.GetText("Search").."%') or (LASENAL LIKE '%"..Input.GetText("Search").."%') or (LAATENCION LIKE '%"..Input.GetText("Search").."%') or (MANTENIMIENTO LIKE '%"..Input.GetText("Search").."%') or (CANALCOMUNITARIO LIKE '%"..Input.GetText("Search").."%') or (PROGRAMACION LIKE '%"..Input.GetText("Search").."%') or (OTROS LIKE '%"..Input.GetText("Search").."%')");
	if nLastError ~= SQLite.OK then
		Dialog.Message("Error", SQLite.GetLastErrorString());
	end
	--  en caso de error
			if nLastError == SQLite.OK then
		--buscar en las tablas
		for nRow = 1,tblRS.Rows do
	    	--buscar en primer orden en este caso dni
	    	sNombre = tblRS.Data[nRow]["IDENTIFICACION"];
	    	
	  
	    
	    	ListBox.AddItem("nombre_List", tblRS.Data[nRow]["NOMBREDELENCUESTADO"], tblRS.Data[nRow]["RecordID"]);
	  	   	end
	      end
	
	--seleciona 1 item al buscar es una busqueda exacta que se resalta
   ListBox.SelectItem("nombre_List", 1);
   
	--audio para cuando encuentra algo correcto, mas bien cuando lo seleciona o resalta suena
	Audio.Load(CHANNEL_NARRATION, "AutoPlay\\Audio\\Notificacion.ogg", true, false);

	
--pantalla de resultados donde se vera.
Total = ListBox.GetCount("nombre_List");
Input.SetText("Total_input", Total);	


--Limpiar Input buscar despues de encontrar el dni o nombre  y resaltarlo
Input.SetText("Search", "");


end 

lo que pasa es que el Listboxex, lleva icono osea en la pagina onshow esta este codigo pero en el buscaror esta un codigo antiguo y no se como adaptarlo a la misma forma de la pagina onshow
-ELIMINA LA DUPLICACION
ListBoxEx.DeleteAllItems("nombre_List")
--------------------------------
tSeleccion = SQLite.QueryToTable(db,"SELECT NOMBREDELENCUESTADO FROM CENSADOS Order By RecordID ASC");--carga en orden ascedente
nLastError = Application.GetLastError();
if nLastError ~= SQLite.OK then
Dialog.Message("Error", SQLite.GetLastErrorString());
end
   if nLastError == SQLite.OK then
   for nRow = 1, tSeleccion.Rows do
   nRecordID  = tSeleccion.Data[nRow]["RecordID"];
   sUSUARIO  = tSeleccion.Data[nRow]["NOMBREDELENCUESTADO"];
 nIndex = ListBoxEx.AddItem("nombre_List", ""..sUSUARIO.."", sUSUARIO, nRow, "", 1, LBXITEM_HTML, 0, nil, {2088673,2004590,2005389}, nil);
   ListBoxEx.SetItemGStyle("nombre_List", nIndex, BACKWARD_DIAGONAL, LBXISTATE_NORMAL);
   ListBoxEx.SetItemIconSize("nombre_List", nIndex, 20);
   --ACTUALIZA EL LIXBOX-------
   ListBoxEx.SetUpdate("nombre_List", true);
   end
   end
   

   
--muestra la cantidad de registros en la base de datos...
Total = ListBoxEx.GetTotalItems("nombre_List");
Input.SetText("Total_input", Total);
mil gracias..

Y en que te da error?
Parece ser que el Script es correcto

dow....

no me busca, si lo coloco para que me haga la consulta en un lixbox, de una busca, resalta y hace todo..


pero en el lixboxex da errores..mañana subo fotos del error

Que tal comprotodo201480!
Me quede esperando las imágenes :) pero después de volver a darle una estudiada a las secuencias SQL me puede dar cuenta de cual es el error de tu Script. El error esta en la Secuencia SQL.

En la secuancia SQL que utilizas: "SELECT NOMBREDELENCUESTADO FROM CENSADOS Order By RecordID ASC"
Seleccionas la columna NOMBREDELENCUESTADO de la tabla CENSADOS y con la clausula Order By los ordenas de forma asedente. Sin embargo aquí hay errores, para empezar, las columnas especificadas en la clausula ORDER BY debe ser una de las columnas seleccionadas en la lista de columnas SELECT, y en tu secuencia no lo haces, ademas de que por defecto las secuencias SQL utilizan el orden asendente, esto quiere decir que no es necesario utilizar la clausula ORDER BY.

La secuencia debería ser algo así: "SELECT NOMBREDELENCUESTADO FROM CENSADOS"
-- Elimina la duplicacion
ListBoxEx.DeleteAllItems("nombre_List")
	--------
-- Carga en orden ascedente
tSeleccion = SQLite.QueryToTable(db,"SELECT NOMBREDELENCUESTADO FROM CENSADOS");
  nLastError = Application.GetLastError();
	if nLastError ~= SQLite.OK then
	  Dialog.Message("Error", SQLite.GetLastErrorString());
	elseif nLastError == SQLite.OK then
	   for nRow = 1, tSeleccion.Rows do
	     sUSUARIO  = tSeleccion.Data[nRow]["NOMBREDELENCUESTADO"];
	     nIndex = ListBoxEx.AddItem("nombre_List", sUSUARIO, sUSUARIO, "", "", 1, LBXITEM_HTML, 0, nil, {2088673,2004590,2005389}, nil);
	     ListBoxEx.SetItemGStyle("nombre_List", nIndex, BACKWARD_DIAGONAL, LBXISTATE_NORMAL);
	     ListBoxEx.SetItemIconSize("nombre_List", nIndex, 20);
	      -- ACTUALIZA EL LIXBOX --
	   	 ListBoxEx.SetUpdate("nombre_List", true);
	   end
   end
   
-- Muestra la cantidad de registros en la base de datos
Total = ListBoxEx.GetTotalItems("nombre_List");
Input.SetText("Total_input", Total);
Perdón por no responder antes y espero haber podido ayudarte.
Por cierto te recomiendo pasarte por esta pagina, ami me ha servido de mucho Comandos SQL
Saludos Dow Sher :friends:

Mil gracias.....mil gracias....y de la pagina otros mil gracias