FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Pocket PC Ayuda->Problema en browse con variables.
Posts: 28
Joined: Wed Dec 13, 2006 06:07 PM
Ayuda->Problema en browse con variables.
Posted: Fri Jan 12, 2007 02:03 PM

Un problema:

Si quiero hacer un browse con los campos a visualizar que sean variables, aprace el contenido todo el blanco.
No se si estoy haciendo algo erróneo.
Gracias de antemano.

Ej NO funciona:
@ 1.65, 0.5 LISTBOX oBrw FIELDS (lpCampo1),(lpCampo2),(lpCampo3)...

en cambio, si funciona:
@ 1.65, 0.5 LISTBOX oBrw FIELDS codigo,nombre1,nombre2...

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Ayuda->Problema en browse con variables.
Posted: Fri Jan 12, 2007 04:41 PM

Andrés,

Que tipo de valores (C,N,L,D) tienen las variables lpCampo1, lpCampo2, lpCampo3 ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 28
Joined: Wed Dec 13, 2006 06:07 PM
Browse
Posted: Fri Jan 12, 2007 05:59 PM

Hola Antonio,

Las variables contienen los nombres de los campos a mostrar, son carácter.
Verás estoy haciendo una función genérica de búsqueda con su browse para que valga para varios ficheros: articulos, clientes.... por lo que le mando nombre de fichero y entre otras cosas más los nombres que tiene que mostrar. Te escribo el ejemplo:

=Buscar(oWnd,'Clientes',210,250,'Efth010',99,83,'cprvcod','cprvome','cprvnom'...)

FUNCTION Buscar(lpVentana,lpTitulo,lpAncho,lpAlto,lpFichero,lpAncBrw,lpAltBrw,lpCampo1,lpCampo2,lpCampo3)

@ 1.65, 0.5 LISTBOX oBrw FIELDS (lpCampo1),(lpCampo2),(lpCampo3) .... SIZE lpAncBrw, lpAltBrw....

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Ayuda->Problema en browse con variables.
Posted: Fri Jan 12, 2007 06:19 PM

Andrés,

Estos nombres de variables no deben llevar comillas:

'cprvcod','cprvome','cprvnom', ...

debe ser:

cprvcod, cprvome, cprvnom, ...

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 28
Joined: Wed Dec 13, 2006 06:07 PM
Ayuda->Problema en browse con variables.
Posted: Fri Jan 12, 2007 08:47 PM

Sigue sin funcionar.

Creo que mandandole el nombre del campo sin comillas estamos mandando el cotenido de la variable, no el nombre en si que hace falta para montar el browse, te mando el ejemplo completo (con el cambio que propones):
Gracias de nuevo

include "FWCE.ch"

function Main()
local cText := Space( 50 )
NumReg = 0
oWnd = 0
DEFINE WINDOW oWnd TITLE "Ejemplo"

AbrirFicheros()

@ 5, 5 BUTTON "Acción" SIZE 80, 20 ACTION Avisa(oWnd, 'Clientes',210,250,'Efth010',99,83,cprvcod,cprvome,cprvnom,'Código', 'Nombre Comercial', 'Nombre Fiscal',50,200,200)
@ 7.9, 5.1 SAY NumReg OF oWnd SIZE 80, 15
@ 7, 5 BUTTON "Dime" SIZE 80, 20 ACTION prueba(NumReg)

ACTIVATE WINDOW oWnd
RETURN nil

FUNCTION prueba(nr)
@ 9.9, 5.1 SAY Nr OF oWnd SIZE 80, 15
RETURN nil

FUNCTION Avisa(lpVentana,lpTitulo,lpAncho,lpAlto,lpFichero,lpAncBrw,lpAltBrw,lpCampo1,lpCampo2,lpCampo3,lpATit1,lpATit2,lpATit3,lpAncho1,lpAncho2,lpAncho3)


  • lpVentana -> Ventana padre
  • lpTitulo -> Título de ventana
  • lpAncho -> Ancho de pantalla
  • lpAlto -> Alto de pantalla
  • lpFichero -> Fichero a listar

  • Si están en blanco no se ponen.

  • lpAncBrw -> Alto del browse
  • lpAltBrw -> Alto del browse

  • lpCampo1 -> 1 Campo en la base de datos

  • lpCampo2 -> 2 Campo en la base de datos
  • lpCampo3 -> 3 Campo en la base de datos
  • lpATit1 -> Título del Campo 1
  • lpATit2 -> Título del Campo 2
  • lpATit3 -> Título del Campo 3
  • lpAncho1 -> Ancho del Campo 1
  • lpAncho2 -> Ancho del Campo 2
  • lpAncho3 -> Ancho del Campo 3

DEFINE FONT ofontPeque NAME "Arial" SIZE 4, -8
SELECT (lpFichero)
DEFINE DIALOG dBrowse TITLE lpTitulo SIZE lpAncho, lpAlto OF lpVentana

@ 1.65, 0.5 LISTBOX oBrw FIELDS (lpCampo1),(lpCampo2),(lpCampo3) COLSIZES 50,200,200 ;
OF dBrowse HEADERS 'Código', 'Nombre Comercial', 'Nombre Fiscal' SIZE lpAncBrw, lpAltBrw

@ 107, 35 BTNBMP oCancelar FILE CurDir() + "\bmp\cancelar.bmp" SIZE 12, 12 ACTION Cancelar()
@ 107, 65 BTNBMP oAceptar FILE CurDir() + "\bmp\ok.bmp" SIZE 12, 12 ACTION Aceptar()

@ 7.9, 5.1 SAY "Cancelar Aceptar" OF dBrowse font ofontPeque SIZE 80, 15

ACTIVATE DIALOG dBrowse CENTERED
RETURN nil

FUNCTION Aceptar(lpFichero)
SELECT (lpFichero)
NumReg = RECNO()
dBrowse:End()
RETURN nil

FUNCTION CAncelar
NumReg = 0
dBrowse:End()
RETURN nil

FUNCTION AbrirFicheros
Request DbfCdx
Request DbfFpt
RddSetDefault ('DbfCdx')
Request Hb_Lang_PLWIN
Request Hb_CodePage_PLWIN


  • Clientes

IF .NOT. USED("Efth010")
USE (CurDir()+"\Efth010") NEW
ELSE
SELECT Efth010
ENDIF
RETURN nil

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Ayuda->Problema en browse con variables.
Posted: Fri Jan 12, 2007 09:47 PM

Andrés,

No había entendido bien lo que querías hacer, disculpa.

Puedes hacerlo como querías, solo cambiando esto:

=Buscar(oWnd,'Clientes',210,250,'Efth010',99,83,'cprvcod','cprvome','cprvnom'...)

FUNCTION Buscar(lpVentana,lpTitulo,lpAncho,lpAlto,lpFichero,lpAncBrw,lpAltBrw,lpCampo1,lpCampo2,lpCampo3)

@ 1.65, 0.5 LISTBOX oBrw FIELDS FieldGet( FieldPos( lpCampo1 ) ),FieldGet( FieldPos( (lpCampo2) ), FieldGet( FieldPos( (lpCampo3) ) .... SIZE lpAncBrw, lpAltBrw....

Fíjate en el uso de FieldGet() y FieldPos()

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 28
Joined: Wed Dec 13, 2006 06:07 PM
Ayuda->Problema en browse con variables.
Posted: Fri Jan 12, 2007 11:00 PM

Gracias, lo pruebo y te comento
Un saludo

Posts: 28
Joined: Wed Dec 13, 2006 06:07 PM
Ayuda->Problema en browse con variables.
Posted: Sat Jan 13, 2007 11:37 AM

Muy agradecido. funciona perfectamente.
Saludos

Continue the discussion