Como uso propiedades

24/09/2004 - 00:02 por Warpas y Chankas | Informe spam
Hola amigos:
Si en un formulario yo defino una propiedad que se llama vnivel, como le
asigno un valor desde un registro de una tabla?
Yo hago:
Thisform.Vnivel=mitabla.campovnivel
Ok,
Y cuando quiero usar ese valor para filtrar una tabla:
set filter to nivel=vnivel
Me sale el error de que la variable no existe¿?¿?

Que es lo que hago mal?

Por favor una ayuda,



Manuel L. Anaya Guillén
Warpas y Chankas - Cultura Milenaria de Ayacucho
PERU - SUDAMERICA
manayaNOSPAM@paide.org

Preguntas similare

Leer las respuestas

#1 Jorge Mota
24/09/2004 - 01:38 | Informe spam
podrias hacer
Local cValor
cValor = thisform.vNivel
Set filter to nivel = vNivel

Saludos

En , Warpas y Chankas escribió:

Hola amigos:
Si en un formulario yo defino una propiedad que se llama vnivel, como le
asigno un valor desde un registro de una tabla?
Yo hago:
Thisform.Vnivel=mitabla.campovnivel
Ok,
Y cuando quiero usar ese valor para filtrar una tabla:
set filter to nivel=vnivel
Me sale el error de que la variable no existe¿?¿?

Que es lo que hago mal?

Por favor una ayuda,







Jorge Mota
Microsoft Visual FoxPro MVP
Guatemala
Respuesta Responder a este mensaje
#2 Luis María Guayán
24/09/2004 - 04:26 | Informe spam
Cuando se trabaja con filtros, no se deben usar propiedades ni variables ya que
cuandos estan pierden el alcance el filtro muestra el error que comenta W&Ch

Una forma de hacerlo es mediante macrosustitución:

lcFiltro = [nivel = ] + TRANSFORM(ThisForm.vNivel)
SET FILTER TO &lcFiltro

*-- Miramos la condición del filtro
? SET("Filter")

Ejecutar ? SET("Filter") con el código original y veremos la diferencia.


Luis María Guayán
Tucumán, Argentina
________________________________
SysOp de www.PortalFox.com
Microsoft Visual FoxPro MVP
________________________________
La palabra imposible solo figura
en el diccionario de los tontos



"Jorge Mota" escribió en el mensaje
news:
podrias hacer
Local cValor
cValor = thisform.vNivel
Set filter to nivel = vNivel

Saludos

En , Warpas y Chankas escribió:

Hola amigos:
Si en un formulario yo defino una propiedad que se llama vnivel, como le
asigno un valor desde un registro de una tabla?
Yo hago:
Thisform.Vnivel=mitabla.campovnivel
Ok,
Y cuando quiero usar ese valor para filtrar una tabla:
set filter to nivel=vnivel
Me sale el error de que la variable no existe¿?¿?

Que es lo que hago mal?

Por favor una ayuda,







Jorge Mota
Microsoft Visual FoxPro MVP
Guatemala
Respuesta Responder a este mensaje
#3 Jorge Mota
24/09/2004 - 06:04 | Informe spam
ups, tienes razon :p
me falto la macro sustitucion :p

En , Luis María Guayán escribió:

Cuando se trabaja con filtros, no se deben usar propiedades ni variables
ya que
cuandos estan pierden el alcance el filtro muestra el error que comenta
W&Ch

Una forma de hacerlo es mediante macrosustitución:

lcFiltro = [nivel = ] + TRANSFORM(ThisForm.vNivel)
SET FILTER TO &lcFiltro

*-- Miramos la condición del filtro
? SET("Filter")

Ejecutar ? SET("Filter") con el código original y veremos la diferencia.







Jorge Mota
Microsoft Visual FoxPro MVP
Guatemala
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida