Página 1 de 1
Ayuda con ::oDbf:setfilter()
Publicado: Lun Jun 25, 2007 4:13 am
por Carlos Ortiz
Necesito hacer una pantalla con un browse y que el usuario seleccione mediante algunas listas MARCAS / FABRICANTE / RUBRO / CATEGORIA / ETC segun el registro que elija de cada combo que se aplique un filtro para 1, 2 3, 4 o 5 condiciones, por ende me parece que los mas apropiado seria armar una cadena condicional.
Probre con una sola y no me funciona, que estoy haciendo mal, no filtra nada.
------------------------------------------------------------ --------------------
::oDbf:SetFilter("{ || ::oDbf:nidfabr == "+nIDFabr+" }",.t.)
nIDFabr // Es una variable
Gracias.
--
Ayuda con ::oDbf:setfilter()
Publicado: Lun Jun 25, 2007 8:54 am
por zeasoftware
debes armar tu filtro segun las opciones seleccionadas.
cFilter := ""
Do Case
Case cMarca != "Todos"
cFilter += " MARCA == " + cMarca
Case cFabricante != "Todos"
cFilter += ".And. FABRICANTE == " + cFabricante
EndCASE
::oDbf:SetFilter(cFilter,.t.)
Es una idea, ya que hay que validar para aplicar los .AND. pero es una idea, lo hice en clipper una vez, pero tendria que buscarlo por que no recuerdo que que .PRG estara.
Espero te sirva,
Saludos.
--
Ayuda con ::oDbf:setfilter()
Publicado: Lun Jun 25, 2007 9:01 pm
por jose.luis
Carlos,
Tu solo debes pasar el filtro en formato carácter que Xailer monta el codeblock.
Saludos,
José Luis Capel
"Carlos Ortiz" <
cortiz@assistinfo.com.ar> escribió en el mensaje de noticias news:[email=
467f24d8@ozsrv2.ozlan.local...]
467f24d8@ozsrv2.ozlan.local...[/email]
Necesito hacer una pantalla con un browse y que el usuario seleccione mediante algunas listas MARCAS / FABRICANTE / RUBRO / CATEGORIA / ETC segun el registro que elija de cada combo que se aplique un filtro para 1, 2 3, 4 o 5 condiciones, por ende me parece que los mas apropiado seria armar una cadena condicional.
Probre con una sola y no me funciona, que estoy haciendo mal, no filtra nada.
------------------------------------------------------------ ------------------
::oDbf:SetFilter("{ || ::oDbf:nidfabr == "+nIDFabr+" }",.t.)
nIDFabr // Es una variable
Gracias.
--
Ayuda con ::oDbf:setfilter()
Publicado: Lun Jun 25, 2007 11:13 pm
por Carlos Ortiz
Gracias Ramon, probare de cargar una variable antes y no mandar el bloque de
codigo, aunque en clipper para DOS andaba de primera. Seguire probando.
Muchas gracias.
"Ramon Zea" <
zeasoftware@hotmail.com> escribió en el mensaje
news:[email=
467f6698@ozsrv2.ozlan.local...]
467f6698@ozsrv2.ozlan.local...[/email]
debes armar tu filtro segun las opciones seleccionadas.
cFilter := ""
Do Case
Case cMarca != "Todos"
cFilter += " MARCA == " + cMarca
Case cFabricante != "Todos"
cFilter += ".And. FABRICANTE == " + cFabricante
EndCASE
::oDbf:SetFilter(cFilter,.t.)
Es una idea, ya que hay que validar para aplicar los .AND. pero es una idea,
lo hice en clipper una vez, pero tendria que buscarlo por que no recuerdo
que que .PRG estara.
Espero te sirva,
Saludos.
Ayuda con ::oDbf:setfilter()
Publicado: Lun Jun 25, 2007 11:14 pm
por Carlos Ortiz
OK Jose Luis. Muchas gracias.
"José Luis Capel" <
jose.luis@capelsoft.com> escribió en el mensaje
news:[email=
4680110a@ozsrv2.ozlan.local...]
4680110a@ozsrv2.ozlan.local...[/email]
Carlos,
Tu solo debes pasar el filtro en formato carácter que Xailer monta el
codeblock.
Saludos,
José Luis Capel
"Carlos Ortiz" <
cortiz@assistinfo.com.ar> escribió en el mensaje de noticias
news:[email=
467f24d8@ozsrv2.ozlan.local...]
467f24d8@ozsrv2.ozlan.local...[/email]
Necesito hacer una pantalla con un browse y que el usuario seleccione
mediante algunas listas MARCAS / FABRICANTE / RUBRO / CATEGORIA / ETC segun
el registro que elija de cada combo que se aplique un filtro para 1, 2 3, 4
o 5 condiciones, por ende me parece que los mas apropiado seria armar una
cadena condicional.
Probre con una sola y no me funciona, que estoy haciendo mal, no filtra
nada.
::oDbf:SetFilter("{ || ::oDbf:nidfabr == "+nIDFabr+" }",.t.)
nIDFabr // Es una variable
Gracias.