Página 1 de 1
ANIDAR WITH OBJECTs
Publicado: Mié Mar 01, 2017 3:25 pm
por XeviCOMAS
No recuerdo bien... se puede???
Hago referencia a un objeto
WITH OBJECT oOBJ1...
:propiedad := ...
:valor := ...
END OBJECT
Pero, dentro puedo ponet otro WITH OBJECT ???
WITH OBJECT oOBJ1...
:propiedadOBJ1 := ...
WITH OBJECT oOBJ2...
:propiedadOBJ2 := ...
//Como hago referencia al primer objeto???
//:valorOBJ2 := ::valorOBJ1 ???
END OBJECT
:valorOBJ1 := ...
END OBJECT
Un Saludo,
Xevi.
Re: ANIDAR WITH OBJECTs
Publicado: Mié Mar 01, 2017 5:25 pm
por Manu Exposito
Mira ver esto:
Código: Seleccionar todo
WITH OBJECT oOBJ1...
:propiedadOBJ1 := ...
WITH OBJECT oOBJ2...
:propiedadOBJ2 := ...
//Como hago referencia al primer objeto???
//:valorOBJ2 := oOBJ1:valorOBJ1 ??? // <-------------------
END OBJECT
:valorOBJ1 := ...
END OBJECT
Re: ANIDAR WITH OBJECTs
Publicado: Mié Mar 01, 2017 5:51 pm
por ignacio
Buenas tardes,
Existe la propiedad :__WithObject() que hace referencia al objeto dentro del WITH, pero sólo funciona en el primer nivel. Lo más sencillo: usar variables temporales:
Código: Seleccionar todo
WITH OBJECT o1 := T????:New()
WITH OBJECT o2 := T????2:New()
:cName := o1:cName
EjecutaFuncion( o2 )
EjecutaFunction( :__WithObject() ) // Esta línea es equivalente a la anterior
END WITH
END WITH
Saludos
Re: ANIDAR WITH OBJECTs
Publicado: Jue Mar 23, 2017 2:50 pm
por Marcelo Coelho Silva
XeviCOMAS escribió:No recuerdo bien... se puede???
Hago referencia a un objeto
WITH OBJECT oOBJ1...
:propiedad := ...
:valor := ...
END OBJECT
Pero, dentro puedo ponet otro WITH OBJECT ???
WITH OBJECT oOBJ1...
:propiedadOBJ1 := ...
WITH OBJECT oOBJ2...
:propiedadOBJ2 := ...
//Como hago referencia al primer objeto???
//:valorOBJ2 := ::valorOBJ1 ???
END OBJECT
:valorOBJ1 := ...
END OBJECT
Un Saludo,
Xevi.
A Solução:
WITH OBJECT oOBJ1...
:propiedadOBJ1 := ...
WITH OBJECT oOBJ2...
:propiedadOBJ2 := ...
//Como hago referencia al primer objeto???
:valorOBJ2 :=
oOBJ1:valorOBJ1 ???
END OBJECT
:valorOBJ1 := ...
END OBJECT