Se eu tenho uma tela MVC com grid e chamo outra tela a partir desta, como faço para acessar dados da tela anterior?
Pra quem é das antigas, semelhante ao que faziamos antes do MVC, com MsGetDAdos, aHeader e Acols.
Se eu tenho uma tela MVC com grid e chamo outra tela a partir desta, como faço para acessar dados da tela anterior?
Pra quem é das antigas, semelhante ao que faziamos antes do MVC, com MsGetDAdos, aHeader e Acols.
Bom dia Marco,
Isso pode depender da sua aplicação, mas no geral talvez o FwModelActive() atenda sua necessidade
Referência: https://tdn.totvs.com/display/framework/FWModelActive
Atenciosamente,
Bom dia, Marco!
Posso estar equivocado, mas acho que a única forma de fazer isso é executado a função FwModelActive antes de ativar o novo modelo.
Por exemplo:
// rotina anterior
User Function FANTFUN
Private oMldAnt := FwModelActive() // guardo o modelo anterior
FwExecView('ALTERAR', 'FNEWFUN', MODEL_OPERATION_UPDATE) // chama nova rotina e ativa o novo modelo
Return
// ou
// rotina anterior
User Function FANTFUN
Private oMldAnt := FwModelActive() // guardo o modelo anterior
U_FNEWFUN() // chama nova rotina e ativa o novo modelo
Return
Dessa forma, você acessaria os dados através da variável private oMldAnt.
Nunca passei por essa situação, mas acho que se você chamar o FwModelActive depois que ativar o novo modelo, ele só retornará o modelo atual e não o da tela anterior.