01. DADOS GERAIS

Linha de Produto:

Segmento:

Módulo:Livros Fiscais - SigaFIS


02. SITUAÇÃO/REQUISITO

Ponto de Entrada utilizado para geração do Registro A110 e/ou Registro C110 de forma alternativa as regras existentes no parâmetro MV_SPDIFC, automaticamente será gerado um registro 0450 referente ao código de Informação Complementar utilizado e para a geração do TXT_COMPL do 0450 será considerado o conteúdo do campo CEE_ utilizado 


Para composição do campo 03-TXT_COMPL, tanto para o registro A110 quanto para o registro C110, é utilizada a configuração do parâmetro MV_SPDIFC  conforme abaixo:

0 – Utiliza conteúdo do campo Texto Complementar (CCE_DESCR) correspondente (mesmo texto do campo 03 do registro 0450).

1 – Utiliza conteúdo do campo Desc. Compl. (CDT_DCCOMP) do registro de Informações Complementares (texto variável) ou do campo Desc. Compl. (CDC_DCCOMP) caso o campo CDT_DCCOMP não esteja preenchido.

2 – Utiliza conteúdo do campo preenchido no cabeçalho da nota fiscal (para entrada F1_MENNOTA; para saída F2_MENNOTA).

03. ESPECIFICAÇÃO

Parâmetros do ponto de entrada

Nome

Tipo

Descrição

PARAMIXBArray of Record

Array com os dados de processamento com elementos 

[1] - FT_NFISCAL

[2] - FT_SERIE

[3] - FT_CLIEFOR

[4] - FT_LOJA

[5] - FT_ENTRADA

[6] - Indica se a operação é de Entrada (1) ou Saída (2)

Retorno

Nome

Tipo

Descrição


Array of Record

Posição 1 - Código da Informação Complementar

Posição 2 - Descritivo da Informação Complementar

Posição 3 - Registro a ser processado A110 / C110

Caso não informado a posição 3 de retorno, será considerado o C110 por padrão.

04. EXEMPLO DE UTILIZAÇÃO

O exemplo abaixo é exemplificativo para preenchimento do Registro A110 - Informações de Complemento das Notas Fiscais de Serviço e Registro C110 - Informações de Complemento das Notas Fiscais (Modelo 01, 1B, 04 e 55).

O Ponto de Entrada será chamado quando da existência de Notas Fiscais de Serviços (RPS) e Notas Fiscais (Modelo 01, 1B, 04 e 55), sendo o seu comportamento e responsabilidade, determinado pelas regras de negócios definidas pelo cliente.


#Include "Totvs.ch"

User Function SPDPISIC()
Local	cDoc		:=	PARAMIXB[1] //FT_NFISCAL
Local	cSerie		:=	PARAMIXB[2] //FT_SERIE
Local	cFornec		:=	PARAMIXB[3] //FT_CLIEFOR
Local	cLoja		:=	PARAMIXB[4] //FT_LOJA
Local	dEntr		:=	PARAMIXB[5] //FT_ENTRADA
Local	cEntSai		:=	PARAMIXB[6] //Entrada (1) /Saída (2)

Local	cChave		:=	""
Local	nX			:=	0
Local	aRetorno	:=	{}			// Retorno do Ponto de Entrada
Local	aAreaSFT	:=	SFT->(GetArea())

SFT->(dbSetOrder(2))
     
If  cEntSai == "E" 
    cChave  :=  xFilial("SFT")+"E"+DTOS(dEntr)+cSerie+cDoc+cFornec+cLoja
Else
    cChave  :=  xFilial("SFT")+"S"+DTOS(dEntr)+cSerie+cDoc+cFornec+cLoja
Endif

If  SFT->(DbSeek(cChave))
    For nX := 1 To 2
    	If  nX == 1
            aAdd(aRetorno,{ "00A110",;	//02 - COD_INF
            		 		"INFORMACOES COMPLEMENTARES - PE - Docto Fiscal "  + SFT->FT_NFISCAL ,; //03 - TXT_COMPL		
                            "A110"})    // Registro a ser processado
        Elseif nX == 2
        	aAdd(aRetorno,{ "00C110",;	//02 - COD_INF
            		 		"INFORMACOES COMPLEMENTARES - PE - Docto Fiscal " + SFT->FT_NFISCAL  ,;	//03 - TXT_COMPL
                            "C110"})    // Registro a ser processado
        Endif
	Next nX
Endif

RestArea(aAreaSFT)

Return aRetorno


05. DEMAIS INFORMAÇÕES


06. ASSUNTOS RELACIONADOS