Demais posts desta série:
Escrituração Fiscal Digital: SPED – Usando o componente AcBrSpedFiscal - Parte 1
Escrituração Fiscal Digital: SPED – Usando o componente AcBrSpedFiscal - Parte 3
Escrituração Fiscal Digital: SPED – Usando o componente AcBrSpedFiscal - Parte 4

Nesta parte do artigo, vamos dar inicio a codificação do projeto do nosso tutorial. Para isso, dê um duplo clique no botão “Gerar Arquivo TXT”, e adicione o seguinte código:



  // Configura o componente

  ACBrSPEDFiscal1.LinhasBuffer := StrToIntDef(Edit3.Text,0);

  ACBrSpedFiscal1.DT_INI := DateTimePicker1.Date;

  ACBrSpedFiscal1.DT_FIN := DateTimePicker2.Date;

  ACBrSpedFiscal1.Path := Edit1.Text;

  ACBrSpedFiscal1.Arquivo := 
   'SPED_'+FormatDateTime('ddmmyyyyhhmmss',now)+'.txt';

  // repassa os dados

  if CheckBox1.Checked then GerarDadosBloco('0');

  if CheckBox2.Checked then GerarDadosBloco('C');

  if CheckBox3.Checked then GerarDadosBloco('D');

  if CheckBox4.Checked then GerarDadosBloco('E');

  if CheckBox5.Checked then GerarDadosBloco('H');

  if CheckBox6.Checked then GerarDadosBloco('1');

  // gera o arquivo

  ACBrSpedFiscal1.SaveFileTXT;

  if CheckBox7.Checked then GerarDadosBloco('9');

  ShowMessage('Arquivo Gerado com sucesso!');

Este código esta dividido em três etapas. A primeira passa para o componente, os parâmetros como por exemplo: Data inicial e Final, Buffer de linha, pasta de trabalho e nome do arquivo. Na segunda será executada a “procedure GerarDadosBloco“, conforme selecionado pelo usuário. E na terceira e dado ao componente o comando para gerar o arquivo texto.

Crie também a base da “procedure GerarDadosBloco” usando o exemplo abaixo:


procedure TForm1.GerarDadosBloco(pBloco: String);

begin

  if pBloco = '0' then begin

  end

  else if pBloco = 'C' then begin

  end

  else if pBloco = 'D' then begin

  end

  else if pBloco = 'E' then begin

  end

  else if pBloco = 'H' then begin

  end

  else if pBloco = '1' then begin

  end

  else if pBloco = '9' then begin

  end;

end;

Na próxima parte do artigo, veremos os códigos para repasse dos dados para o componente.

Até lá!