Boa tarde,
Utilizo o ponto de entrada de produto em MVC ‘ITEM’ para validações no cadastro.
Porém para os campos de SB5 eu não estou conseguindo capturar o valor dos campos em memoria(m->), apenas os valores salvos no bando de dados(SB5->)
Realizei os testes no MODELPOS e no FORMPOS.
Existe alguma outra opção para que eu possa capturar os valores da tabela SB5 em memória, antes da gravação dos campos no banco de dados, nesse ponto de entrada?
Obrigada
1 curtida
Olá,
Normalmente os valores estão no modelo e os pontos de entrada MVC recebem como parâmetro via PARAMIXB o modelo.
Logo, a melhor forma não é utilizar M-> em pontos de entrada MVC e sim o modelo, pegando assim os valores via método GetValue.
Documentação: https://tdn.totvs.com/display/framework/Pontos+de+Entrada+para+fontes+Advpl+desenvolvidos+utilizando+o+conceito+MVC
2 curtidas
Para você capturar os dados vai precisar acessar diretamente os dados do submodelo da SB5. Olhando o oModel principal tem um array que lista todos os submodelos oModel:allSubModels ou algo assim vc pega o atributo cID para saber qual vai usar.
No caso desse objeto acho que é ‘SB5DETAIL’, então vc captura os dados assim:
oModSB5 := oModel:GetModel(‘SB5DETAIL’)
xCampo := oModSB5:GetValue(‘B5_CAMPO’)
1 curtida
Muito obrigada!!! Com as dicas, consegui capturar corretamente os valores do B5