Power Builder - problema al buscar con filtro en una dw

 
Vista:

problema al buscar con filtro en una dw

Publicado por francisco (97 intervenciones) el 07/05/2014 20:13:50
hola colegas espero que esten bien , my problema es que tengo tabla_producto con batante productos aprox 15000
pero cuando filtro un campo se pone muy lento la busqueda, como puedo hacer que sea mas rapida o hacerlo de otra forma

ayuda porfa

Francisco

Desde Chile
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Willian
Val: 12
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

problema al buscar con filtro en una dw

Publicado por Willian (40 intervenciones) el 08/05/2014 18:14:21
Como estas filtrando en el sql o en dw filter?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Adolfo
Val: 250
Bronce
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

problema al buscar con filtro en una dw

Publicado por Adolfo (260 intervenciones) el 08/05/2014 21:36:55
Indexa la tabla sobre esta columna y creas un argumento en la datawindow utilizando este campo para la condicion Where y si no sabes como, dime y te paso unas imagenes que ejemplifiquen lo que digo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

problema al buscar con filtro en una dw

Publicado por francisco (97 intervenciones) el 09/05/2014 21:02:14
tengo el problema en sle_ingreso, cuando voy ingresando letras a buscar me va buscando , el problema cuando vuelvo a buscar otro dato y elimino en sle_ingreso con tecla retroceso, se produce un loop que se demora para ir al inicio de la dw_mostras_dato, e aqui te mando el codigo q utilizo

este codigo lo coloco en el evento key_pressed = pbm_keyup


if len(sle_ingreso.text)=0 then
dw_1.setfilter("")
dw_1.filter()

end if
integer reg
string busca


if rb_producto.checked=true then busca="upper(nombre_producto) like '" + upper(sle_ingreso.text) + "%'"
if rb_grupos.checked=true then busca="upper(nombre_grupo1) like '" + upper(sle_ingreso.text)+ "%'"
if rb_subgrupos.checked=true then busca="upper(nombre_subgrupo1) like '" + (sle_ingreso.text) + "%'"

reg=dw_1.find(busca,1,dw_1.rowcount())

if reg=0 then
messagebox("Verifique","Registro No Existe")
sle_ingreso.text=""
else



if rb_producto.checked=true then
dw_1.setfilter(busca)
dw_1.filter()
dw_1.enabled=true
//integer cant
//cant=dw_1.rowcount()
//st_2.text= "Son"+" " + string(cant)+" " + "Cliente"+" "+ "(s)"
end if


if rb_grupos.checked=true then
dw_1.setfilter(busca)
dw_1.filter()
dw_1.enabled=true


//integer cant
//cant=dw_1.rowcount()
//st_2.text= "Son"+" " + string(cant)+" " + "Cliente"+" "+ "(s)"
end if



if rb_subgrupos.checked=true then
dw_1.setfilter(busca)
dw_1.filter()
dw_1.enabled=true
//integer cant
//cant=dw_1.rowcount()
//st_2.text= "Son"+" " + string(cant)+" " + "Cliente"+" "+ "(s)"
end if
end if
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar