Árvore de páginas

 Tempo aproximado para leitura: 05 min

01. DADOS GERAIS

Linha de Produto:Microsiga Protheus®
Segmento:Jurídico
Módulo:Pré-faturamento de Serviços - SIGAPFS
Função:Emissão de Documento Fical - JURA205


02. PONTO DE ENTRADA

Descrição:

Este ponto de entrada permite validar se uma fatura pode ou não gerar um documento fiscal, durante a emissão dos documentos fiscais.

Localização:

Atualizações >> Docs Fiscais >> Emissão de Documentos Fiscais

Programa Fonte:

JURA205

Função:

J205GERANF

Ponto de Entrada:J205VDoc
Parâmetros:

Nome

Tipo

Descrição

Obrigatório

PARAMIXBArray

Array com 2 posições

NomeTipoDescrição
PARAMIXB[1]caractereCódigo do escritório da fatura
PARAMIXB[2]caractereCódigo da fatura
Sim



Retorno:

Nome

Tipo

Descrição

Obrigatório

aRetorno

Array

Array com 2 posições

NomeTipoDescrição
aRetorno[1]Lógico

Quando verdadeiro, irá seguir o fluxo normal de validação.

Quando falso, irá impedir a emissão de documento fiscal para a fatura que foi recebida pelo parâmetro 'PARAMIXB'.

aRetorno[2]CaracterMensagem para ser exibida ao usuário para informá-lo o motivo que a fatura não pôde gerar documento fiscal.
Sim




03. EXEMPLO

#INCLUDE "RWMAKE.ch"
#INCLUDE "PROTHEUS.ch"

//-------------------------------------------------------------------
/*{Protheus.doc} J205VDoc()
Ponto de entrada para validar se a fatura pode gerar documento fiscal

@param PARAMIXB[1] Código do escritório da fatura emitida
@param PARAMIXB[2] Código do fatura fatura emitida

@author TOTVS
@since 27/03/2020
@version 1.0
/*/
//-------------------------------------------------------------------
User Function J205VDoc()
    Local aArea         := GetArea()
    Local aAreaNXA  := NXA->(GetArea())
    Local cEscrit        := PARAMIXB[1// Código do escritório da fatura emitida
    Local cFatura       := PARAMIXB[2// Código do fatura fatura emitida
    Local lPodeEmit  := .T.
    Local cMsgErro   := ""

    If NXA->(DbSeek(xFilial("NXA")+cEscrit+cFatura))
        // Verifica se o código da fatura é par
        If Mod(Val(NXA->NXA_COD), 2== 0
            lPodeEmit := .F.
            cMsgErro  := "A fatura não pode ser emitida devido o código ser par."
        EndIf
    Endif

    RestArea(aAreaNXA)
    RestArea(aArea)


Return {lPodeEmit, cMsgErro}