Navigating RAMP through different Re-usable Parts
Posted: Wed Nov 29, 2023 1:47 am
Hi
We have a Re-usable part called POS_CONN (for connection) which has the following:
Mthroutine Name(uInitialize) Options(*REDEFINE)
* * In the command's uInitialize method routine, set the screen wrapper's uCommand property to #com_owner
Set Com(#POSCONN) uCommand(#com_owner)
Invoke Method(#POSFMAIN.ShowForm)
Endroutine
Mthroutine Name(uExecute) Options(*REDEFINE)
Invoke Method(#Com_Ancestor.uExecute)
Invoke Method(#POSCONN.MakeRampTSAvailable)
Endroutine
Evtroutine Handling(#POSCONN.RampTSAvailable)
Invoke Method(#POSCONN.NavigateToScreen) Name('HN2000')
Endroutine
Evtroutine Handling(#POSCONN.vHandleArrive) ArrivedScreen(#CurrentScreen) PreviousScreen(#PreviousScreen) ArrivedPayload(#Payload)
Define Field(#debNr) Reffld(#DEB)
Define Field(#salesNr) Reffld(#VMAN)
Case (#CurrentScreen)
When Value_Is(= 'HN2000')
Message Msgtxt('At HN2000')
When Value_Is(= 'DB0100LS_OptionCL')
Message Msgtxt('At DB0100LS_OptionCL')
Endcase
Endroutine
How would I go about Navigating to another screen from a different Re-usable part, lets say when Enter is pressed on an edit field on a different Re-usable part?
Ive tried creating a method routine:
Mthroutine Name(HN2000)
#POSCONN.NavigateToScreen Name('DB0100LS_OptionCL')
Endroutine
and then calling that method routine on the other re-usable part:
#POS_CONN.HN2000 or Invoke method(#POS_CONN.HN2000)
But based on the message and the trace, it does not navigate at all. Can someone provide some guidance please and thank you.
We have a Re-usable part called POS_CONN (for connection) which has the following:
Mthroutine Name(uInitialize) Options(*REDEFINE)
* * In the command's uInitialize method routine, set the screen wrapper's uCommand property to #com_owner
Set Com(#POSCONN) uCommand(#com_owner)
Invoke Method(#POSFMAIN.ShowForm)
Endroutine
Mthroutine Name(uExecute) Options(*REDEFINE)
Invoke Method(#Com_Ancestor.uExecute)
Invoke Method(#POSCONN.MakeRampTSAvailable)
Endroutine
Evtroutine Handling(#POSCONN.RampTSAvailable)
Invoke Method(#POSCONN.NavigateToScreen) Name('HN2000')
Endroutine
Evtroutine Handling(#POSCONN.vHandleArrive) ArrivedScreen(#CurrentScreen) PreviousScreen(#PreviousScreen) ArrivedPayload(#Payload)
Define Field(#debNr) Reffld(#DEB)
Define Field(#salesNr) Reffld(#VMAN)
Case (#CurrentScreen)
When Value_Is(= 'HN2000')
Message Msgtxt('At HN2000')
When Value_Is(= 'DB0100LS_OptionCL')
Message Msgtxt('At DB0100LS_OptionCL')
Endcase
Endroutine
How would I go about Navigating to another screen from a different Re-usable part, lets say when Enter is pressed on an edit field on a different Re-usable part?
Ive tried creating a method routine:
Mthroutine Name(HN2000)
#POSCONN.NavigateToScreen Name('DB0100LS_OptionCL')
Endroutine
and then calling that method routine on the other re-usable part:
#POS_CONN.HN2000 or Invoke method(#POS_CONN.HN2000)
But based on the message and the trace, it does not navigate at all. Can someone provide some guidance please and thank you.