Ponto de entrada MVC

Senhores Bom Dia,

Estou precisando customizar o ponto de entrada MATA094, antigamente eu usava o MT097END pra fazer uma validação ao final da aprovação de um pedidos de compras e gerar um execauto na SE2.

Porém agora com essa mudança para MVC eu gostaria de saber como faço por exemplo para capturar o número do pedido.

Alguém poderia me ajudar?

Bom dia,

O MVC por padrão tem diversos pontos de entrada, então você precisa verificar qual se adequá mais em sua necessidade:

https://tdn.totvs.com/pages/viewpage.action?pageId=208345968

https://tdn.totvs.com/display/PROT/DT+PE+MNTA080+Ponto+de+entrada+padrao+MVC


Exemplo de utilização:


#include 'protheus.ch'

user function NomeDaRotinaMVC()
local aParam as array
local oModel as object
local cIdPonto as char
local cIdModel as char
local xRet

aParam := Iif(Type('PARAMIXB') != 'U', PARAMIXB, nil)

if aParam <> nil 
    oModel := aParam[1]
    cIdPonto := aParam[2]
    cIdModel := aParam[3]

    if cIdPonto == 'MODELPOS'
        // Minha regra...
    elseif cIdPonto == 'MODELPRE'
        // Minha lógica...
    endif
endif

return xRet

Bom Dia Daniel,

Infelizmente o link reportado está indisponível, pelo que verifiquei eu vou precisar no momento do MODELCOMMITTTS.

Fernando, atualizei a postagem com outro link, parece que o primeiro está passando por alguma manutenção e ficou fora do ar… Não sei ao certo o motivo do erro no TDN.

Daniel, excelente exemplo, mas no meu caso que estuo tratando o ponto de entrada MATA094, como eu faço pra pegar o número do pedido isso que estou com dificuldades, esse seu exemplo já entendi que vou usar o MODELMMITTTS mas precisaria do número do pedido pra preencher a minha query.

Você precisa pegar os dados presentes no modelo, no caso, o oModel do exemplo, utilizando do método getValue.

Daniel, agradeço muito pelas respostas você teria um exemplo do Getvalue?

Obrigado.

Boa tarde, com esse ponto de entrada consigo saber em qual opção o usuário clicou?
Aprovar, Bloquear, Rejeitar…