Histórico da Página
Índice | ||
---|---|---|
|
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().
...
Aviso | ||||
---|---|---|---|---|
| ||||
Ao utilizar esse ponto de entrada, as informações do Registro 1400 não serão mais geradas pelo padrão do Protheus, assim como suas respectivas validações, ficando essas por conta do código fonte empregado neste ponto de entrada. |
03. ESPECIFICAÇÃO
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. |
03. ESPECIFICAÇÃO
Parâmetros de Entrada
Antes da chamada da função do SPEDFiscal, deverá ser informado Deve ser criado 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.
Para ficar mais claro,
Nome | Tipo | Descrição |
---|---|---|
PARAMIXB | Array 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. |
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
...
[1] = Data de (Data)
[2] = Data até (Data)
[3] = Filial de (Caracter)
[4] = Filial Até (Caracter)
[5] = Lista filiais selecionadas quando utilizado pergunta seleciona filiais = SIM (Array of Record)
[6] = Dados do registro 1400 (Array of Record)
...
title | Aviso |
---|
...
Retorno
...
Dados do Registro 1400
...
. EXEMPLO DE UTILIZAÇÃO
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
#INCLUDE#include "TOTVS.CH" #INCLUDE#include "tbiconn.ch" User Function CallSPDFisc() Local aWizard := {} Local nPos := 0 Local cRootPath cRoothPath:= "C:\Arquivos\" Local cFilePerfA:= "CallSPDFisc.txt" Local dDataFim Local dDataIni PREPARELocal ENVIRONMENTaTables EMPRESA "T1" FILIAL "XCFIS26" MODULO "FIS" TABLES:= { "SFT","SX5","SA1","SA2","SA4","SF1","SF2","SF3","SF4","SF6","SD1","SD2","SB1","SB8","SAH","CC6",; "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",; "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 Aba - Parâmetros para Geração ,"SI3","CDV" } RpcSetEnv( "T1","XCFIS26", "", "", "FIS", , aTables, , , , ) 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],cRootPath ) // Diretório do Arquivo Destino aAdd(aWizard[nPos],cFilePerfA ) // Nome do Arquivo Destino aAdd(aWizard[nPos], dtos(dDataIni)"2" ) // DataGera deInventario aAdd(aWizard[nPos], dtos(dDataFim)"2" ) // Data atéGera Registros Complementares de Frete aAdd(aWizard[nPos],"*" ) // LivroData de fechamento do estoque aAdd(aWizard[nPos],cRoothPath"2" ) // DiretorioGera doregistro Arquivode DestinoECF aAdd(aWizard[nPos],cFilePerfA"" ) // NomeArq. doPeriodo Arquivo Destinoanterior aAdd(aWizard[nPos],"2" ) // GeraImprime credito InventarioST aAdd(aWizard[nPos],"2" ) // Seleciona Filiais aAdd(aWizard[nPos],0 ) // GeraPeriodo Registrosde Complementares de FreteApuração {0=Mensal; 1=Decendial} aAdd(aWizard[nPos],"2" ) // DataInicio deObrigação fechamentoEscrituração do estoqueCIAP aAdd(aWizard[nPos],"2" ) // GeraConsidera registroValores de ECFPIS/COFINS aAdd(aWizard[nPos],"" 9-Não" ) // Arq.Gera PeriodoBloco anteriorK aAdd(aWizard[nPos],"2" ) // Imprime credito STReg. 0210 por Mov? aAdd(aWizard[nPos],"2" ) // Seleciona FiliaisGera registros DIFAL(EC 87/15) aAdd(aWizard[nPos],0 "01" ) // Periodo de Apuração {0=Mensal; 1=Decendial}Motivo do Inventário aAdd(aWizard[nPos],"2" ) // Inicio Obrigação Escrituração CIAPGera Registro 0400 - Natureza da Oper/Prest aAdd(aWizard[nPos],"2" ) // Considera Valores de PIS/COFINSGera H020 - Motivo Inventário 01 aAdd(aWizard[nPos],"9-Não"2" ) // GeraProcessa Histórico do Bloco K aAdd(aWizard[nPos],"2" ) // Reg.Gera 0210Registro porde Mov?FECP aAdd(aWizard[nPos],"2" ) // Gera registros DIFAL(EC 87/15)Bloco G aAdd(aWizard[nPos],"01" 2" ) // MotivoGera doBloco InventárioB aAdd(aWizard[nPos],"2" ) // Gera Registro 0400 - Natureza da Oper/PrestInf.Compl ST aAdd(aWizard[nPos],"2" "2" ) // Gera H020 - Motivo Inventário 01registro 0210 aAdd(aWizard[nPos],"2" ) // Energia Elétrica Eletrônica - NF3e (66), Geração dos Registros C500 ) // Processa Histórico do Bloco K(analitico), Geração dos Registros C700 (consolidado) aAdd(aWizard[nPos],"21" ) // Gera RegistroBloco de FECP aAdd(aWizard[nPos],"2" ) // Gera Bloco G aAdd(aWizard[nPos],"2" ) // Gera Bloco BH com motivo de inventário 06. Quando não houver movimento no periodo para apuração REssarcimento SPED. aAdd(aWizard[nPos],"23" ) // Gera Inf.Compl ST aAdd(aWizard[nPos],"2" ) // ) // Gera registro 02100221 aAdd(aWizard[nPos],"2" ) // Energia Elétrica Eletrônica - NF3e (66), Geração dos Registros C500 (analitico), Geração dos Registros C700 (consolidado) 1" ) // Gera o registro C171 - Armazenamento de Combustiveis ("1-Sim , 2-Não") // Segunda AbaTela - 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 AbaTela - 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 AbaTela - 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 ENVIRONMENTRpcClearEnv() //Encerra o ambiente, fechando as devidas conexões Return |
05. DEMAIS INFORMAÇÕES
Não há
...