FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Problema con set filter
Posts: 196
Joined: Fri May 15, 2009 01:25 AM
Problema con set filter
Posted: Mon Oct 26, 2009 01:36 AM
Por favor necesito ayuda
Estoy tratando de filtrar una base de datos utilizando una instruccion macro y me produce error
Las variables cAgente, dFechaIni, dFechaFin las declaré al inicio del programa como static, por lo que las estoy substituyendo por mAgente, mFechaIni, mFechaFin.
El cĂłdigo con problema estĂĄ en rojo

En clipper no tenĂ­a ningĂșn problema
Estoy utilizando fwh 7.12 y compilando con verce 5.3

Si alguien pudiera orientarme

Gracias

Juan Arroyo
Desde México

STATIC FUNCTION filtro()
MEMVAR mAgente, mFechaIni, mFechaFin, mCondi
PRIVATE mAgente, mFechaIni, mFechaFin, mCondi
mCondi := ""
mAgente := cAgente
mFechaIni := dFechaIni
mFechaFin := dFechaFin

/* IF DTOC(mFechaIni) != " "
mCondi := Condi + "cfac->fechafac >= mFechaIni .AND."
ENDIF
IF DTOC(mFechaFin) != " "
mCondi := Condi + "cfac->fechafac <= mFechaFin .AND."
ENDIF
IF LEN(TRIM(mAgente)) != 0
mCondi := mCondi + "cfac->agente = mAgente .AND."
ENDIF
mCondi := SUBSTR(mCondi,1,LEN(mCondi)-5)

SELECT cfac
SET ORDER TO
SET FILTER TO &mCondi */


SELECT cfac
SET FILTER TO cfac->agente = "56"
cfac->(DBGOTOP())
INDEX ON cfac->agente + DTOS(cfac->fechafac) + cfac->facnum TO ;
cfactmp
cfac->(DBSETINDEX("cfactmp"))
SET RELATION TO cfac->agente INTO age
RETURN NIL
Juan Arroyo
México
FWH 7.12 VERCE 5.3 xHarbour 1.1.0
juan_arroyo_t@hotmail.com
Posts: 105
Joined: Thu Feb 26, 2009 04:08 PM
Re: Problema con set filter
Posted: Mon Oct 26, 2009 08:36 AM

yo creo que seria asi

IF DTOC(mFechaIni) != " "
mCondi := mCondi + "cfac->fechafac >= mFechaIni .AND. "
ENDIF
IF DTOC(mFechaFin) != " "
mCondi := mCondi + "cfac->fechafac <= mFechaFin .AND. "
ENDIF
IF LEN(TRIM(mAgente)) != 0
mCondi := mCondi + "cfac->agente = mAgente .AND. "
ENDIF
mCondi := SUBSTR(mCondi,1,LEN(mCondi)-6)

cFiltro := "{||"+mCondi+"}"
gFiltro := '"'+mCondi+'"'

SELECT cfac
SET ORDER TO
DbSetFilter(&cFiltro,gFiltro)

Saludos.

Posts: 196
Joined: Fri May 15, 2009 01:25 AM
Re: Problema con set filter
Posted: Tue Oct 27, 2009 04:56 AM

Javier

Te agradezco infinitamente tu ayuda, funcionĂł perfectamente

Saludos

Juan Arroyo
México
FWH 7.12 VERCE 5.3 xHarbour 1.1.0
juan_arroyo_t@hotmail.com

Continue the discussion