Página 1 de 1

Problemas con Cargo

Publicado: Vie Jul 28, 2006 9:12 am
por X-Soft
Hola a todos:
En una aplicación que estoy desarrollando, le doy valor al "cargo" de un
Form externo, el cual conserva sin ningún problema DENTRO DE LA CLASE donde
le he dado el valor, pero cuando llamo a este Form, y quiero recuperar el
valor de ::cargo, me da NIL.
Es que tengo que llamar a "Cargo" de una manera especial que no sea, por
ejemplo, cMenVar := ::Cargo?
Muchas gracias.
Ramón Torreblanca

Problemas con Cargo

Publicado: Vie Jul 28, 2006 9:18 am
por jose.luis
Ramón,
Muéstranos como haces la asignación de la data cargo y como quieres
recuperar su valor.
Saludos,
José Luis Capel
"Ramón Torreblanca" <la_pirata@hotmail.com> escribió en el mensaje
news:44c9b8e1$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola a todos:
>
> En una aplicación que estoy desarrollando, le doy valor al "cargo" de un
> Form externo, el cual conserva sin ningún problema DENTRO DE LA CLASE
> donde
> le he dado el valor, pero cuando llamo a este Form, y quiero recuperar el
> valor de ::cargo, me da NIL.
>
> Es que tengo que llamar a "Cargo" de una manera especial que no sea, por
> ejemplo, cMenVar := ::Cargo?
>
> Muchas gracias.
>
>
> Ramón Torreblanca
>
>

Problemas con Cargo

Publicado: Vie Jul 28, 2006 9:42 am
por X-Soft
Perdón por tan torpe olvido:
Para darle valor y llamar al Form:
METHOD AddNewP() CLASS FrmFicha
LOCAL oFrmP
WITH OBJECT oFrmP := FrmEdiPag():New( Self )
:Cargo := "Añadir"
::oDataSetP:AddNew()
:ShowModal()
IF :nModalResult == mrOK
::oDataSetP:Update()
::oBrwP:Refresh()
ELSE
::oDataSetP:Cancel()
ENDIF
END WITH
RETURN NIL
Para Recuperarlo:------------------------------------------
METHOD FormInitialize( oSender ) CLASS FrmEdiPag
Local nFor, nLen, nValor, nPvp
logdisplay(::cargo, ::oParent:cText)
IF ::Cargo = "Añadir"
::oParent:oDataSetP:SaveState()
::oParent:oDataSetP:gotop()
::oParent:oDataSetP:RestoreState()
ENDIF
RETURN Nil
Ramón Torreblanca
"José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
news:44c9ba4b$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Ramón,
>
> Muéstranos como haces la asignación de la data cargo y como quieres
> recuperar su valor.
>
> Saludos,
> José Luis Capel
>
> "Ramón Torreblanca" <la_pirata@hotmail.com> escribió en el mensaje
> news:44c9b8e1$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> > Hola a todos:
> >
> > En una aplicación que estoy desarrollando, le doy valor al "cargo" de un
> > Form externo, el cual conserva sin ningún problema DENTRO DE LA CLASE
> > donde
> > le he dado el valor, pero cuando llamo a este Form, y quiero recuperar
el
> > valor de ::cargo, me da NIL.
> >
> > Es que tengo que llamar a "Cargo" de una manera especial que no sea, por
> > ejemplo, cMenVar := ::Cargo?
> >
> > Muchas gracias.
> >
> >
> > Ramón Torreblanca
> >
> >
>
>

Problemas con Cargo

Publicado: Vie Jul 28, 2006 9:47 am
por Francisco Sanchez
Creo que el Forminitialize se ejecuta antes de tu :Cargo := "Añadir", con lo
que tu cargo estaria vacio. Podrias hacer esto :
WITH OBJECT oFrmP := FrmEdiPag()
:Cargo := "Añadir"
:New( Self )
........
Asi tu cargo si tendria algo dentro cuando se ejecute el forminitialize
Un saludo

Problemas con Cargo

Publicado: Vie Jul 28, 2006 9:49 am
por jose.luis
Ramón,
Una vez has hecho el FrmEdiPag:New(Self) ya se ha disparado el Initialize de
FrmEdiPag.
Prueba esto:
> METHOD AddNewP() CLASS FrmFicha
>
> LOCAL oFrmP
>
> WITH OBJECT oFrmP := FrmEdiPag()
>
> :Cargo := "Añadir"
> ::oDataSetP:AddNew()
> :New( Self )
> :ShowModal()
>
> IF :nModalResult == mrOK
>
> ::oDataSetP:Update()
> ::oBrwP:Refresh()
>
> ELSE
>
> ::oDataSetP:Cancel()
>
> ENDIF
>
> END WITH
>
> RETURN NIL
>
Saludos,
José Luis Capel
PD: puede que no sea la forma más ortodoxa... pero funciona :-)
"Ramón Torreblanca" <la_pirata@hotmail.com> escribió en el mensaje
news:44c9bff7$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Perdón por tan torpe olvido:
>
> Para darle valor y llamar al Form:
>
> METHOD AddNewP() CLASS FrmFicha
>
> LOCAL oFrmP
>
> WITH OBJECT oFrmP := FrmEdiPag():New( Self )
>
> :Cargo := "Añadir"
> ::oDataSetP:AddNew()
> :ShowModal()
>
> IF :nModalResult == mrOK
>
> ::oDataSetP:Update()
> ::oBrwP:Refresh()
>
> ELSE
>
> ::oDataSetP:Cancel()
>
> ENDIF
>
> END WITH
>
> RETURN NIL
>
> Para Recuperarlo:------------------------------------------
>
> METHOD FormInitialize( oSender ) CLASS FrmEdiPag
> Local nFor, nLen, nValor, nPvp
>
> logdisplay(::cargo, ::oParent:cText)
>
> IF ::Cargo = "Añadir"
> ::oParent:oDataSetP:SaveState()
> ::oParent:oDataSetP:gotop()
> ::oParent:oDataSetP:RestoreState()
>
> ENDIF
>
> RETURN Nil
>
> Ramón Torreblanca
>
>
> "José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
> news:44c9ba4b$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>> Ramón,
>>
>> Muéstranos como haces la asignación de la data cargo y como quieres
>> recuperar su valor.
>>
>> Saludos,
>> José Luis Capel
>>
>> "Ramón Torreblanca" <la_pirata@hotmail.com> escribió en el mensaje
>> news:44c9b8e1$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>> > Hola a todos:
>> >
>> > En una aplicación que estoy desarrollando, le doy valor al "cargo" de
>> > un
>> > Form externo, el cual conserva sin ningún problema DENTRO DE LA CLASE
>> > donde
>> > le he dado el valor, pero cuando llamo a este Form, y quiero recuperar
> el
>> > valor de ::cargo, me da NIL.
>> >
>> > Es que tengo que llamar a "Cargo" de una manera especial que no sea,
>> > por
>> > ejemplo, cMenVar := ::Cargo?
>> >
>> > Muchas gracias.
>> >
>> >
>> > Ramón Torreblanca
>> >
>> >
>>
>>
>
>

Problemas con Cargo

Publicado: Vie Jul 28, 2006 10:28 am
por _support_
José Luis,
Es la forma correcta. Otros lenguajes como VB tienen eventos cuando se
instancia y se destruye un objeto y es posible que tengamos algo de uso en
el futuro, pero la instanciación de objetos sin llamar a ningún constructor
funciona correctamente.
Un saludo,
"José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
news:44c9c183$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Ramón,
>
> Una vez has hecho el FrmEdiPag:New(Self) ya se ha disparado el Initialize
> de FrmEdiPag.
>
> Prueba esto:
>
>> METHOD AddNewP() CLASS FrmFicha
>>
>> LOCAL oFrmP
>>
>> WITH OBJECT oFrmP := FrmEdiPag()
>>
>> :Cargo := "Añadir"
>> ::oDataSetP:AddNew()
>> :New( Self )
>> :ShowModal()
>>
>> IF :nModalResult == mrOK
>>
>> ::oDataSetP:Update()
>> ::oBrwP:Refresh()
>>
>> ELSE
>>
>> ::oDataSetP:Cancel()
>>
>> ENDIF
>>
>> END WITH
>>
>> RETURN NIL
>>
>
> Saludos,
> José Luis Capel
> PD: puede que no sea la forma más ortodoxa... pero funciona :-)
>
>
>
> "Ramón Torreblanca" <la_pirata@hotmail.com> escribió en el mensaje
> news:44c9bff7$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>> Perdón por tan torpe olvido:
>>
>> Para darle valor y llamar al Form:
>>
>> METHOD AddNewP() CLASS FrmFicha
>>
>> LOCAL oFrmP
>>
>> WITH OBJECT oFrmP := FrmEdiPag():New( Self )
>>
>> :Cargo := "Añadir"
>> ::oDataSetP:AddNew()
>> :ShowModal()
>>
>> IF :nModalResult == mrOK
>>
>> ::oDataSetP:Update()
>> ::oBrwP:Refresh()
>>
>> ELSE
>>
>> ::oDataSetP:Cancel()
>>
>> ENDIF
>>
>> END WITH
>>
>> RETURN NIL
>>
>> Para Recuperarlo:------------------------------------------
>>
>> METHOD FormInitialize( oSender ) CLASS FrmEdiPag
>> Local nFor, nLen, nValor, nPvp
>>
>> logdisplay(::cargo, ::oParent:cText)
>>
>> IF ::Cargo = "Añadir"
>> ::oParent:oDataSetP:SaveState()
>> ::oParent:oDataSetP:gotop()
>> ::oParent:oDataSetP:RestoreState()
>>
>> ENDIF
>>
>> RETURN Nil
>>
>> Ramón Torreblanca
>>
>>
>> "José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
>> news:44c9ba4b$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>>> Ramón,
>>>
>>> Muéstranos como haces la asignación de la data cargo y como quieres
>>> recuperar su valor.
>>>
>>> Saludos,
>>> José Luis Capel
>>>
>>> "Ramón Torreblanca" <la_pirata@hotmail.com> escribió en el mensaje
>>> news:44c9b8e1$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>>> > Hola a todos:
>>> >
>>> > En una aplicación que estoy desarrollando, le doy valor al "cargo" de
>>> > un
>>> > Form externo, el cual conserva sin ningún problema DENTRO DE LA CLASE
>>> > donde
>>> > le he dado el valor, pero cuando llamo a este Form, y quiero recuperar
>> el
>>> > valor de ::cargo, me da NIL.
>>> >
>>> > Es que tengo que llamar a "Cargo" de una manera especial que no sea,
>>> > por
>>> > ejemplo, cMenVar := ::Cargo?
>>> >
>>> > Muchas gracias.
>>> >
>>> >
>>> > Ramón Torreblanca
>>> >
>>> >
>>>
>>>
>>
>>
>
>

Problemas con Cargo

Publicado: Vie Jul 28, 2006 11:44 am
por X-Soft
Muchas Gracias.
Funciona Perfectamente.
Ramón Torreblanca.
"Ignacio Ortiz de Zúñiga" <_support_@xailer.com> escribió en el mensaje
news:[email=44c9cabc@news.xailer.com...]44c9cabc@news.xailer.com...[/email]
> José Luis,
>
> Es la forma correcta. Otros lenguajes como VB tienen eventos cuando se
> instancia y se destruye un objeto y es posible que tengamos algo de uso en
> el futuro, pero la instanciación de objetos sin llamar a ningún
constructor
> funciona correctamente.
>
> Un saludo,
>
> "José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
> news:44c9c183$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> > Ramón,
> >
> > Una vez has hecho el FrmEdiPag:New(Self) ya se ha disparado el
Initialize
> > de FrmEdiPag.
> >
> > Prueba esto:
> >
> >> METHOD AddNewP() CLASS FrmFicha
> >>
> >> LOCAL oFrmP
> >>
> >> WITH OBJECT oFrmP := FrmEdiPag()
> >>
> >> :Cargo := "Añadir"
> >> ::oDataSetP:AddNew()
> >> :New( Self )
> >> :ShowModal()
> >>
> >> IF :nModalResult == mrOK
> >>
> >> ::oDataSetP:Update()
> >> ::oBrwP:Refresh()
> >>
> >> ELSE
> >>
> >> ::oDataSetP:Cancel()
> >>
> >> ENDIF
> >>
> >> END WITH
> >>
> >> RETURN NIL
> >>
> >
> > Saludos,
> > José Luis Capel
> > PD: puede que no sea la forma más ortodoxa... pero funciona :-)
> >
> >
> >
> > "Ramón Torreblanca" <la_pirata@hotmail.com> escribió en el mensaje
> > news:44c9bff7$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> >> Perdón por tan torpe olvido:
> >>
> >> Para darle valor y llamar al Form:
> >>
> >> METHOD AddNewP() CLASS FrmFicha
> >>
> >> LOCAL oFrmP
> >>
> >> WITH OBJECT oFrmP := FrmEdiPag():New( Self )
> >>
> >> :Cargo := "Añadir"
> >> ::oDataSetP:AddNew()
> >> :ShowModal()
> >>
> >> IF :nModalResult == mrOK
> >>
> >> ::oDataSetP:Update()
> >> ::oBrwP:Refresh()
> >>
> >> ELSE
> >>
> >> ::oDataSetP:Cancel()
> >>
> >> ENDIF
> >>
> >> END WITH
> >>
> >> RETURN NIL
> >>
> >> Para Recuperarlo:------------------------------------------
> >>
> >> METHOD FormInitialize( oSender ) CLASS FrmEdiPag
> >> Local nFor, nLen, nValor, nPvp
> >>
> >> logdisplay(::cargo, ::oParent:cText)
> >>
> >> IF ::Cargo = "Añadir"
> >> ::oParent:oDataSetP:SaveState()
> >> ::oParent:oDataSetP:gotop()
> >> ::oParent:oDataSetP:RestoreState()
> >>
> >> ENDIF
> >>
> >> RETURN Nil
> >>
> >> Ramón Torreblanca
> >>
> >>
> >> "José Luis Capel" <jose.luis@iaicom.com> escribió en el mensaje
> >> news:44c9ba4b$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> >>> Ramón,
> >>>
> >>> Muéstranos como haces la asignación de la data cargo y como quieres
> >>> recuperar su valor.
> >>>
> >>> Saludos,
> >>> José Luis Capel
> >>>
> >>> "Ramón Torreblanca" <la_pirata@hotmail.com> escribió en el mensaje
> >>> news:44c9b8e1$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> >>> > Hola a todos:
> >>> >
> >>> > En una aplicación que estoy desarrollando, le doy valor al "cargo"
de
> >>> > un
> >>> > Form externo, el cual conserva sin ningún problema DENTRO DE LA
CLASE
> >>> > donde
> >>> > le he dado el valor, pero cuando llamo a este Form, y quiero
recuperar
> >> el
> >>> > valor de ::cargo, me da NIL.
> >>> >
> >>> > Es que tengo que llamar a "Cargo" de una manera especial que no sea,
> >>> > por
> >>> > ejemplo, cMenVar := ::Cargo?
> >>> >
> >>> > Muchas gracias.
> >>> >
> >>> >
> >>> > Ramón Torreblanca
> >>> >
> >>> >
> >>>
> >>>
> >>
> >>
> >
> >
>
>