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

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

Postby fernandomoralesdr » Tue Sep 23, 2014 10:15 am

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
fernandomoralesdr
 
Posts: 139
Joined: Sun Apr 23, 2006 9:00 am

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

Postby VitalJavier » Tue Sep 23, 2014 3:05 pm

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.
VitalJavier
 
Posts: 229
Joined: Mon Jun 10, 2013 6:40 pm

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

Postby joseluisysturiz » Tue Sep 23, 2014 4:20 pm

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: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

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

Postby joseluisysturiz » Tue Sep 23, 2014 4:22 pm

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!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

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

Postby VitalJavier » Tue Sep 23, 2014 7:29 pm

jejejeje tienes razón, son filas y no culumnas
VitalJavier
 
Posts: 229
Joined: Mon Jun 10, 2013 6:40 pm

Resuelto con índice temporal

Postby fernandomoralesdr » Wed Sep 24, 2014 8:36 am

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
fernandomoralesdr
 
Posts: 139
Joined: Sun Apr 23, 2006 9:00 am

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

Postby MarioG » Wed Sep 24, 2014 2:37 pm

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

gracias
Resistencia - "Ciudad de las Esculturas"
Chaco - Argentina
User avatar
MarioG
 
Posts: 1380
Joined: Fri Oct 14, 2005 1:28 pm
Location: Resistencia - Chaco - AR

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

Postby fernandomoralesdr » Wed Sep 24, 2014 3:08 pm

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
fernandomoralesdr
 
Posts: 139
Joined: Sun Apr 23, 2006 9:00 am


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: cmsoft and 32 guests