Pregunta: xBrowse: ¿es posible ocultar filas según condición

Post Reply
fernandomoralesdr
Posts: 134
Joined: Sun Apr 23, 2006 9:00 am

Pregunta: xBrowse: ¿es posible ocultar filas según condición

Post by fernandomoralesdr »

Hola.

Quisiera saber si es posible ocultar filas de un browse basándose en una condición y cómo tendría que hacerlo.

Gracias por adelantado.
Un saludo,
Fernando
Las Palmas de Gran Canaria
VitalJavier
Posts: 188
Joined: Mon Jun 10, 2013 6:40 pm

Re: Pregunta: xBrowse: ¿es posible ocultar filas según condición

Post by VitalJavier »

Que tal, yo para ocultar una columna lo tengo así :

oBrow:aCols[01]:Hide()

ya con algunos if o case, podrías ocultar algunas columnas
Espero y te sirva.
User avatar
joseluisysturiz
Posts: 2024
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela
Contact:

Re: Pregunta: xBrowse: ¿es posible ocultar filas según condición

Post by joseluisysturiz »

Con que estas alimentando el xbrowse, array, dbf, ado, mysq..? ya que dependiendo de que, podrias usar condicional al crean por ejemplo en mysql el qry, y mostraria las filas que cumplan la condicion que quieras. saludos... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
Posts: 2024
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela
Contact:

Re: Pregunta: xBrowse: ¿es posible ocultar filas según condición

Post by joseluisysturiz »

VitalJavier wrote:Que tal, yo para ocultar una columna lo tengo así :

oBrow:aCols[01]:Hide()

ya con algunos if o case, podrías ocultar algunas columnas
Espero y te sirva.
Asi es para columnas, pero el colega quiere es FILAS, es decir los renglones o registros, saludos... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
VitalJavier
Posts: 188
Joined: Mon Jun 10, 2013 6:40 pm

Re: Pregunta: xBrowse: ¿es posible ocultar filas según condición

Post by VitalJavier »

jejejeje tienes razón, son filas y no culumnas
fernandomoralesdr
Posts: 134
Joined: Sun Apr 23, 2006 9:00 am

Resuelto con índice temporal

Post by fernandomoralesdr »

Hola.

Lo he resuelto creando un índice temporal. Aquí dejo el código por si a alguien le es útil. Sobre un archivo con 25.000 registros ha ido como una moto.

El díalogo: un browse y una casilla de búsqueda.
El archivo: "CLIENTES".
El TAG: "CLIENTES"
El índice: "NOMBRE"
La búsqueda: sobre el campo "NOMBRE".

*-----------------------
Function ConsCltes(nCod)
*-----------------------

local oDlg, oBrw, oCadena
local cCadena := space(40)
local fFile1
local lFiltro := .f.

*---------------------------------------------------------------------------
if ! OpenDbf("CLIENTES", {"CLIENTES"}, (fFile1 := GetNewAlias()), .T.) ; return NIL ; end if
(fFile1)->(ordSetFocus("NOMBRE"))
*---------------------------------------------------------------------------

DEFINE DIALOG oDlg RESOURCE "DLG_BUSQUEDA" TITLE "Buscar"

*------------------------------------------------
REDEFINE XBROWSE oBrw ID 101 OF oDlg ALIAS (fFile1) ;
FIELDS (fFile1)->CODIGO, ota((fFile1)->NOMBRE) ;
HEADERS ota("Código"), "Nombre" ;
SIZES 64, 800 ;
ON DBLCLICK (nCod := (fFile1)->CODIGO, oDlg:End())

oBrw:bKeyDown := {|nKey, nFlags| if(nKey == VK_F12, ShowColSizes(oBrw), NIL),;
If(nKey == VK_RETURN, (nCod := (fFile1)->CODIGO, oDlg:End()), NIL)}
#include "xbrw.ch"

*------------------------------------------------

REDEFINE GET oCadena VAR cCadena ID 102 OF oDlg ;
VALID EVAL ({|| if(empty(cCadena), (oBrw:SetFocus(), .t.),;
((fFile1)->(ordCondSet("at(rtrim(cCadena), (fFile1)->NOMBRE) > 0", {|| at(rtrim(cCadena), (fFile1)->NOMBRE) > 0},,,,, RECNO(),,,,)),;
(fFile1)->(ordCreate(, "FILTRO", "(fFile1)->NOMBRE", {|| (fFile1)->NOMBRE},)),;
(fFile1)->(ordSetFocus("FILTRO")),;
(fFile1)->(dbGoTop()),;
oBrw:refresh(), oBrw:SetFocus(), lFiltro := .t., .T.))})

ACTIVATE DIALOG oDlg CENTERED ON PAINT (oBrw:goTop(), oCadena:SetFocus()) ;
VALID (if(lFiltro, (fFile1)->(ordDestroy("FILTRO")), NIL),;
.t.)

(fFile1)->(dbCloseArea())

return NIL
Un saludo,
Fernando
Las Palmas de Gran Canaria
User avatar
MarioG
Posts: 1356
Joined: Fri Oct 14, 2005 1:28 pm
Location: Resistencia - Chaco - AR

Re: Pregunta: xBrowse: ¿es posible ocultar filas según condición

Post by MarioG »

Fernando; solo de curioso
Probaste el filtro en una red?. Como responde?

gracias
Resistencia - "Ciudad de las Esculturas"
Chaco - Argentina
fernandomoralesdr
Posts: 134
Joined: Sun Apr 23, 2006 9:00 am

Re: Pregunta: xBrowse: ¿es posible ocultar filas según condición

Post by fernandomoralesdr »

Hola.

Falta probarlo en red, aunque precisamente ese era el problema, que estaba usando dbSetFilter() y se ralentizaba a veces bastante. Espero que funcione bien y mejor; mantendré informado en cuanto lo haya instalado en el usuario.
Un saludo,
Fernando
Las Palmas de Gran Canaria
Post Reply