MATA311 - Alterar parâmetro via ponto de entrada

Olá, pessoal. Boa tarde!

Na rotina antiga MATA310, existia uma forma de parametrizar a determinação do custo de um produto por meio de um parâmetro na tecla “F12”. Contudo, na nova rotina MATA311, essa funcionalidade foi alterada, e agora o parâmetro é controlado pelo MV_TPCUSST. Essa mudança gerou insatisfação entre os usuários, pois ela não atende completamente ao nosso processo atual.

Diante disso, estou tentando encontrar uma solução para alterar esse parâmetro em tempo de execução. Estou explorando o ponto de entrada em MVC da rotina e tentando utilizar a função PutMv() para realizar a alteração do parâmetro no momento correto.

No entanto, mesmo alterando o parâmetro durante a execução, o custo do produto só é atualizado na próxima execução. Parece que o sistema carrega o parâmetro na memória apenas quando a rotina é inicializada, e as mudanças só têm efeito na execução seguinte.

Também tentei criar uma função e atribuí-la ao parâmetro, na tentativa de realizar a alteração de forma dinâmica, mas o parâmetro não está chamando minha função.

Alguém tem alguma sugestão ou ideia de como resolver isso? Já tentei diversas abordagens, mas estou sem alternativas no momento.

1 curtida

Faz assim:

SuperGetMV()
PutMV( “SEU_PARAMETRO”, “VALOR” )

@julio.vitor.2013 usar alterando o parâmetro é muito falho, então pode ser que não funcione sempre como o esperado.
Como alternativa acho que você pode utilizar o ponto de entrada M310ITENS (PE M310ITENS - Permite manipulação do array aItens - Linha Microsiga Protheus - TDN) que permite manipular o array do execauto, você poderia então ajustar o valor conforme sua necessidade.