Imprimi Página | Fechar janela

Ponto de Entrada ADVPL

Impresso de: Helpfacil - Portal do conhecimento
Nome do Forum: Atualização de Versão e Updates
Descrição do Forum: Dúvidas sobre problemas de versão e updates
URL:http://www.helpfacil.com.br/display_topic_threads.asp?ForumID=16&TopicID=44435
Data da Impressão: quinta-feira, 18 de julho de 2024 at 13:37


Topico: Ponto de Entrada ADVPL

Postado por: LUIZIN29
Assunto: Ponto de Entrada ADVPL
Data Postagem: quinta-feira, 8 de fevereiro de 2024 at 08:34

Saudações pessoal!

Estou customizando o ponto de entrada MT100TOK da rotina de Documentos de Entrada.

Preciso puxar o Valor Bruto da nota no momento da inclusão para comparar se existe um titulo no financeiro já lançado com base nos valor total.

Até o momento já estou conseguindo puxar o Fornecedor, Loja e database do sistema.


#Include "Protheus.ch"
#INCLUDE "TopConn.ch"

/*/{Protheus.doc} MT100LOK


User Function MT100TOK()
    Local lRet      := .T.
    Local aArea     := SE2->(GetArea())
    Local cQuery    := ""
    Local nTotalReg := 0
    Local cMensagem := "Foi encontrado um titulo já lançado para este Fornecedor que coincide com os mesmos dados digitados nesta Nota Fiscal. Deseja Continuar?"

            cQuery := " SELECT "
            cQuery += " E2_NUM AS NUMERO, "
            cQuery += " E2_PREFIXO AS PREFIXO, "
            cQuery += " E2_FORNECE AS CODCLIENTE, "
            cQuery += " E2_LOJA AS LOJA, "
            cQuery += " E2_NOMFOR AS NOME, "
            cQuery += " E2_VALOR AS VALOR "
            cQuery += " FROM " + RetSQLName("SE2")+" SE2 "
            cQuery += " WHERE E2_FORNECE = ‘"+ M->CA100FOR +" ‘ AND "
            cQuery += " E2_LOJA = ‘"+ M->CLOJA +" ‘ AND "       
            cQuery += " E2_EMISSAO >= ‘"+ DTOS(dDataBase) + " ‘ - ‘7‘ AND "
            cQuery += " E2_EMISSAO <= ‘"+ DTOS(dDataBase) +" ‘ AND "
            cQuery += " E2_VALOR = ‘"+ cValToChar(M->F1_VALBRUT) + " ‘ AND" // AQUI PRECISO RECUPERAR O VALOR BRUTO DA NOTA FISCAL PARA PREENCHER A QUERY
            cQuery += " D_E_L_E_T_ = ‘ ‘ "

            TCQuery cQuery New Alias "xF1TEMP"
            DbSelectArea("xF1TEMP")
            
            Count to nTotalReg
            xF1TEMP->(DbGoTop())

               IF(nTotalReg > 0)
                    IF FwAlertNoYes(cMensagem,"Duplicidade Encontrada")
                    
                        lRet := .T.
                    ELSE
                        lRet := .F.
                    ENDIF
               ENDIF
            
               xF1TEMP->(DbCloseArea())
               RestArea(aArea)
            
Return lRet



Agradeço a quem puder ajudar. Muito obrigado!






Imprimir Página | Fechar Janela