In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Variable

Foro público de Xailer en español
Responder
paco-ssi
Mensajes: 390
Registrado: Lun Feb 07, 2005 4:17 pm

Variable

Mensaje por paco-ssi »

Quiero tener una variable FLAG visible en todo el formulario. Si su valor es
..t. hacemos unas cosas y si es .f. hacemos otras.
¿Donde la tengo que crear y como?
Si lo hago con appdata funciona bien, pero creo que no es lo mas correcto.
Otro problema similar es cuando quiero que un formulario hijo lleve una
variable del formulario padre. Por ejemplo, tener un formulario para pedir
limite de listados.
Ya se que esto es falta de base, pero .....
Si alguien puede perder un poquito de tiempo, Gracias
Paco V
Pablo Herranz
Mensajes: 260
Registrado: Lun Feb 07, 2005 1:20 pm

Variable

Mensaje por Pablo Herranz »

Crea la variable como una data del form
Saludos
Pablo Herranz
"Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
news:44dc4b88$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Quiero tener una variable FLAG visible en todo el formulario. Si su valor
> es .t. hacemos unas cosas y si es .f. hacemos otras.
> ¿Donde la tengo que crear y como?
>
> Si lo hago con appdata funciona bien, pero creo que no es lo mas correcto.
>
> Otro problema similar es cuando quiero que un formulario hijo lleve una
> variable del formulario padre. Por ejemplo, tener un formulario para pedir
> limite de listados.
>
> Ya se que esto es falta de base, pero .....
>
> Si alguien puede perder un poquito de tiempo, Gracias
>
> Paco V
>
paco-ssi
Mensajes: 390
Registrado: Lun Feb 07, 2005 4:17 pm

Variable

Mensaje por paco-ssi »

Pablo, ya lo he probado y no funciona. Tengo que hacer algo mal.
Hago lo siguiente:
CLASS TForm00 FROM TForm
COMPONENT oButton1
COMPONENT oButton2
..................
DATA FLAG INIT .T.
METHOD CreateForm()
METHOD SALIR( oSender )
METHOD oButton4click( oSender )
METHOD todo( oSender )
.............................
ENDCLASS
METHOD todo( ) CLASS TForm00
if flag = .f.
flag := .t.
else
flag := .f.
endif
::oCheckBox2:lVisible := flag
::oCheckBox3:lVisible := flag
::oCheckBox4:lVisible := flag
::oCheckBox5:lVisible := flag
RETURN Nil
//---------------------------------------------------------- --------------------
Pues al compilar me saca los mensajes:
Compilando Form00.prg...
Form00.prg(570) Warning W0001 Ambiguous reference: 'FLAG'
Form00.prg(571) Warning W0001 Ambiguous reference: 'FLAG'
Form00.prg(572) Warning W0001 Ambiguous reference: 'FLAG'
Form00.prg(573) Warning W0001 Ambiguous reference: 'FLAG'
Form00.prg(574) Warning W0001 Ambiguous reference: 'FLAG'
Form00.prg(575) Warning W0001 Ambiguous reference: 'FLAG'
Form00.prg(576) Warning W0001 Ambiguous reference: 'FLAG'
Pablo Herranz
Mensajes: 260
Registrado: Lun Feb 07, 2005 1:20 pm

Variable

Mensaje por Pablo Herranz »

Al ser una data debes referirte a ella con los dos puntos delante del nombre
::flag:=.t.
Pablo
"Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
news:44dcad2d$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Pablo, ya lo he probado y no funciona. Tengo que hacer algo mal.
> Hago lo siguiente:
>
> CLASS TForm00 FROM TForm
>
> COMPONENT oButton1
> COMPONENT oButton2
> ..................
>
> DATA FLAG INIT .T.
>
> METHOD CreateForm()
> METHOD SALIR( oSender )
> METHOD oButton4click( oSender )
> METHOD todo( oSender )
>
> ............................
> ENDCLASS
>
> METHOD todo( ) CLASS TForm00
> if flag = .f.
> flag := .t.
> else
> flag := .f.
> endif
> ::oCheckBox2:lVisible := flag
> ::oCheckBox3:lVisible := flag
> ::oCheckBox4:lVisible := flag
> ::oCheckBox5:lVisible := flag
> RETURN Nil
>
> //---------------------------------------------------------- --------------------
>
> Pues al compilar me saca los mensajes:
> Compilando Form00.prg...
> Form00.prg(570) Warning W0001 Ambiguous reference: 'FLAG'
> Form00.prg(571) Warning W0001 Ambiguous reference: 'FLAG'
> Form00.prg(572) Warning W0001 Ambiguous reference: 'FLAG'
> Form00.prg(573) Warning W0001 Ambiguous reference: 'FLAG'
> Form00.prg(574) Warning W0001 Ambiguous reference: 'FLAG'
> Form00.prg(575) Warning W0001 Ambiguous reference: 'FLAG'
> Form00.prg(576) Warning W0001 Ambiguous reference: 'FLAG'
>
>
paco-ssi
Mensajes: 390
Registrado: Lun Feb 07, 2005 4:17 pm

Variable

Mensaje por paco-ssi »

Gracias Pablo, era eso.
Paco V
"Pablo Herranz" <pabloi@ibertabaco.com> escribió en el mensaje
news:44dcae1a$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Al ser una data debes referirte a ella con los dos puntos delante del
> nombre ::flag:=.t.
>
> Pablo
> "Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
> news:44dcad2d$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>> Pablo, ya lo he probado y no funciona. Tengo que hacer algo mal.
>> Hago lo siguiente:
>>
>> CLASS TForm00 FROM TForm
>>
>> COMPONENT oButton1
>> COMPONENT oButton2
>> ..................
>>
>> DATA FLAG INIT .T.
>>
>> METHOD CreateForm()
>> METHOD SALIR( oSender )
>> METHOD oButton4click( oSender )
>> METHOD todo( oSender )
>>
>> ............................
>> ENDCLASS
>>
>> METHOD todo( ) CLASS TForm00
>> if flag = .f.
>> flag := .t.
>> else
>> flag := .f.
>> endif
>> ::oCheckBox2:lVisible := flag
>> ::oCheckBox3:lVisible := flag
>> ::oCheckBox4:lVisible := flag
>> ::oCheckBox5:lVisible := flag
>> RETURN Nil
>>
>> //---------------------------------------------------------- --------------------
>>
>> Pues al compilar me saca los mensajes:
>> Compilando Form00.prg...
>> Form00.prg(570) Warning W0001 Ambiguous reference: 'FLAG'
>> Form00.prg(571) Warning W0001 Ambiguous reference: 'FLAG'
>> Form00.prg(572) Warning W0001 Ambiguous reference: 'FLAG'
>> Form00.prg(573) Warning W0001 Ambiguous reference: 'FLAG'
>> Form00.prg(574) Warning W0001 Ambiguous reference: 'FLAG'
>> Form00.prg(575) Warning W0001 Ambiguous reference: 'FLAG'
>> Form00.prg(576) Warning W0001 Ambiguous reference: 'FLAG'
>>
>>
>
>
Responder