Versão atual:

Dúvida sobre a manipulação de um campo com o Ponto de entrada MT103UPC

Com o ponto de entrada: MT103UPC Preciso fazer com esse ponto de entrada que no momento que for gravar uma entrada ele não atualize o campo B1_UPRC quando o valor do fornecedor (D1_FORNECE) for igual a '000306' Seria possível? Recebi uma possível solução, mas não sei como aplica-la:

"É possível, porém como o PE sempre vai atualizar o campo (B1_UPRC ou BZ_UPRC) você precisa pegar o conteúdo atual do campo e retornar ele novamente caso seja o fornecedor 000306, dessa forma o conteúdo será o mesmo para esse fornecedor"

tentei fazer esta aplicação mas não tive sucesso:

User Function MT103UPC()

Local cFornecedor := SD1->D1_FORNECE

Local nAux := 0

Local nPreco := 0

//Retorna último preço de compra calculado.

nPreco:= SD1->D1_VUNIT + SD1->D1_VALFRE + (SF1->F1_DESPESA / SD1->D1_QUANT)

nAux := nPreco // armazena o valor do ultimo preço de compra

// Verifica se o fornecedor é igual a '000306'

If cFornecedor = '000306'

RecLock("SB1",.F.)

SB1->B1_UPRC := nAux //atribui o valor que foi armazenado na variável nAux (valor da ultima compra antes de atualizar)

//o valor da ultima compra volta a ser o mesmo quando atualiza os campos

EndIf

Return

Versões (4):

Ver a versão formatada

Dúvida sobre a manipulação de um campo com o Ponto de entrada MT103UPC

  • criado 26 de Sep de 2023

Comentário

new question