Árvore de páginas


01. DADOS GERAIS

Linha de Produto:Microsiga Protheus®
Segmento:Serviços
Módulo:Fiscal
Programa:SPEDFISCAL.PRW através de Job
Idiomas:Todos

02. VISÃO GERAL

Encontra-se disponível na rotina de geração do SPED Fiscal um tratamento que o possibilita ser executado via schedule ou JOB, para isso basta passar o conteúdo do Wizard em um array na chamada da função SPEDFISCAL().


Importante

Na abertura ou preparação do ambiente, deve ser informado a empresa / filial para a qual se deseja realizar a geração do arquivo, e realizada a preparação de todas as tabelas envolvidas no processo manual. 

Maiores informações podem ser identificadas no exemplo de utilização.


03. ESPECIFICAÇÃO


Parâmetros de Entrada 

Antes da chamada da função do SPEDFiscal, deverá ser informado um array com o conteúdo da Wizard em igual correspondência das todas as informações selecionadas ou informadas quando da execução em formato Manual.

NomeTipoDescrição
PARAMIXBArray of Record

Deverá ser gerado um array multidimensional conforme exemplo, no qual temos 4 telas de informação no Wizard, sendo separadas por tipo de informação

Primeira Tela - Parâmetros para Geração

Segunda Aba - Identificação do Contribuinte

Terceira Tela - Dados do Contabilista

Quarta Tela - Informações para processamento do Bloco 1000

Para cada uma das telas destacadas acima, será necessário a informação dos parâmetros na sequencia exata quando do preenchimento durante execução da rotina manual.



Aviso

A forma de utilizada desta rotina, bem como o resultado esperado, depende exclusiva dos parâmetros envolvidas e das regras de negócio de cada cliente. Desta forma, ao Exemplo de Utilizado demonstrado abaixo é de exclusiva responsabilidade do cliente.

Sugestão: Uma vez gerado o arquivo manual e mesmo validado com sucesso no PVA, poderá ser validado a geração do mesmo substituindo no exemplo os mesmos parâmetros utilizados quando da execução manual. 

Retorno

Será gerado um arquivo .TXT no caminho informado no parâmetro correspondente ao Diretório do Arquivo Destino, com nome correspondente ao conteúdo informado no parâmetro Nome do Arquivo Destino. com o nome informado no parâmetro 


04. EXEMPLO DE UTILIZAÇÃO


SPED1400
#include "TOTVS.CH"
#include "tbiconn.ch"

 
User Function CallSPDFisc()

Local aWizard   := {}
Local nPos      := 0
Local cRoothPath:= "C:\Arquivos\"
Local cFilePerfA:= "CallSPDFisc.txt"
Local dDataFim
Local dDataIni 


PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "XCFIS26" MODULO "FIS" TABLES "SFT","SX5","SA1","SA2","SA4","SF1","SF2","SF3","SF4","SF6","SD1","SD2","SB1",;
                            "SB8","SAH","SX6","CC6","CD0","CD3","CD4","CD5","CD6","CD7","CD8","CD9","CDA","CDH","CDG","CDC","CDD","CDE","CDF","CDL","CCE","SFU","SFX","CDO",;
"CDP","CCK","AIF","DT6","DTC","DUD","DTQ","DTR","DT8","DUY","DA3","DB2","DB1","DB3","SC7","SC5","SF9","SFA","SN1","SN3","CT1","SI1","CTT","SI3","CDV"

   
dDataIni := FirstDate( dDataBase )
dDataFim := LastDate( dDataBase )

aAdd(aWizard, {})				  
nPos := Len(aWizard)

// Primeira Tela - Parâmetros para Geração

aAdd(aWizard[nPos], dtos(dDataIni)	)	//	Data de
aAdd(aWizard[nPos], dtos(dDataFim)	)	//	Data até
aAdd(aWizard[nPos],"*"          	)	//	Livro
aAdd(aWizard[nPos],cRoothPath   	)	//	Diretório do Arquivo Destino
aAdd(aWizard[nPos],cFilePerfA    	)	//	Nome do Arquivo Destino
aAdd(aWizard[nPos],"2"          	)	//	Gera Inventario
aAdd(aWizard[nPos],"2"          	)	//	Gera Registros Complementares de Frete
aAdd(aWizard[nPos],""		        )	//	Data de fechamento do estoque
aAdd(aWizard[nPos],"2"          	)	//	Gera registro de ECF
aAdd(aWizard[nPos],""          	    )	//	Arq. Periodo anterior
aAdd(aWizard[nPos],"2"          	)	//	Imprime credito ST
aAdd(aWizard[nPos],"2"          	)	//	Seleciona Filiais
aAdd(aWizard[nPos],0				)	//	Periodo de Apuração {0=Mensal; 1=Decendial}
aAdd(aWizard[nPos],"2"          	)	//	Inicio Obrigação Escrituração CIAP
aAdd(aWizard[nPos],"2"          	)	//	Considera Valores de PIS/COFINS
aAdd(aWizard[nPos],"9-Não"      	)	//	Gera Bloco K
aAdd(aWizard[nPos],"2"          	)	//	Reg. 0210 por Mov?
aAdd(aWizard[nPos],"2"          	)	//	Gera registros DIFAL(EC 87/15)
aAdd(aWizard[nPos],"01"         	)	//	Motivo do Inventário
aAdd(aWizard[nPos],"2"          	)	//	Gera Registro 0400 - Natureza da Oper/Prest
aAdd(aWizard[nPos],"2"          	)	//	Gera H020 - Motivo Inventário 01
aAdd(aWizard[nPos],"2"          	)	//	Processa Histórico do Bloco K
aAdd(aWizard[nPos],"2"          	)	//	Gera Registro de FECP
aAdd(aWizard[nPos],"2"          	)	//	Gera Bloco G
aAdd(aWizard[nPos],"2"				)	//	Gera Bloco B
aAdd(aWizard[nPos],"2"          	)	//	Gera Inf.Compl ST
aAdd(aWizard[nPos],"2"				)	//	Gera registro 0210
aAdd(aWizard[nPos],"2"				)	//	Energia Elétrica Eletrônica - NF3e (66), Geração dos Registros C500 (analitico), Geração dos Registros C700 (consolidado)

// Segunda Tela - Identificação do Contribuinte
aAdd(aWizard, {})
nPos :=	Len(aWizard)

aAdd(aWizard[nPos],"0"                		)	//	Código da Finalidade do Arquivo
aAdd(aWizard[nPos],""                 		)	//	Filial de
aAdd(aWizard[nPos],""                 		)	//	Filial Ate
aAdd(aWizard[nPos],"A"                		)	//	Perfil de Apresentação
aAdd(aWizard[nPos],"1"                		)	//	Tipo de Atividade
aAdd(aWizard[nPos],"0"						)	//	Aglutina por CNPJ+IE
aAdd(aWizard[nPos],"[email protected]"	)	//	E-mail//
aAdd(aWizard[nPos],"09"                     ) 	//---Classe de Atividade Industrial

// Terceira Tela - Dados do Contabilista
aAdd(aWizard, {})
nPos :=	Len(aWizard)

aAdd(aWizard[nPos],"Contador Teste"       	)	//	Nome Contabilista
aAdd(aWizard[nPos],"27672112000145"        	)	//	CNPJ
aAdd(aWizard[nPos],"34727314002"         	)	//	CPF
aAdd(aWizard[nPos],"10102020"   	       	)	//	CRC
aAdd(aWizard[nPos],"07170030"            	)	//	CEP
aAdd(aWizard[nPos],"3500550"             	)	//	Cod Municipio
aAdd(aWizard[nPos],"Endereco Teste"      	)	//	Endereço
aAdd(aWizard[nPos],"234"                 	)	//	Número
aAdd(aWizard[nPos],"Complemento"           	)	//	Complemento
aAdd(aWizard[nPos],"Bairro"              	)	//	Bairro
aAdd(aWizard[nPos],"2154876546"          	)	//	Fone
aAdd(aWizard[nPos],"2154876546"		    	)	//	Fax
aAdd(aWizard[nPos],"[email protected]"	)	//	E-mail Contabilista

// Quarta Tela - Informações para processamento do Bloco 1000
aAdd(aWizard, {})
nPos :=	Len(aWizard)	

aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1100 - Exportação
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1200 - Créditos fiscais
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1300 - Combustiveis
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1390 - Usina de açúcar/alcool
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1400 - Valores Agregados
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1500 - Energia Eletrica
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1600 - Cartão de crédito/débito / 1601 Pagamentos Eletrônicos
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1700 - Documentos Fiscais
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1800 - Transporte Aéreo
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1400 - Movimentação Anual
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1960 - GIAF 1
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1970 e 1975 - GIAF 3
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1980 - GIAF 4
aAdd(aWizard[nPos],"2"	)	//	Gera Registro 1250 - ICMS ST

SPEDFISCAL( aWizard )

RESET ENVIRONMENT

Return

05. DEMAIS INFORMAÇÕES

Não há.




  • Sem rótulos