Versão atual:

Validação de Campo

Bom dia Prezados.

Sou iniciante no ADVPL, e estou com uma duvida.

Estou fazendo uma validação para o campo C6_PRODUTO, que se o produto digitado neste campo tiver o cadastro de ativo N1_AQUISIC inferior a 12 meses, ele não permite concluir o Pedido de Venda.

Como sou novo no ADVPL estou tendo dificuldades em desenvolver o PE, fiz algo porém ao debugar as minhas variáveis não estão sendo chamadas no programa.

#Include 'Protheus.ch'


User Function VldAtvFix()  

Local nNow := DATE()
Local dAtv := SN1->N1_AQUISIC
Local lRet := .T.
Local nPosProd := ASCan(aHeader, {|x|, Upper(Alltrim(x[2])) == "C6_PRODUTO"})
Local cCodProd := aCols[n,nPosProd]
Local cCalc := (nNow - dAtv) / 365 

DbSelectArea("SN1")
SN1->(DbSetOrder(1)) // N1_FILIAL+N1_PRODUTO

If SN1->(DbSeek(xFilial("SN1") + cCodProd))
    If cCalc <= 12
        lRet := .F.
        MsgAlert("Atenção!!! A Data do Ativo é inferior a 12 meses, Entrar em Contato com o Departamento Fiscal!!!", "VLDATVFIX")
    EndIf
EndIf

Return lRet

Alguém poderia me da um help?

Versão (1):

Ver a versão formatada

Validação de Campo

  • criado 18 de Jan de 2022

Comentário

new question