Boa tarde, gero os blocos C800 e C850 do sped fiscal, mas estou enfrentando problemas de performance pois o numero de registros é muito grande. Estou tentando realizar a geração através do componente ACBrSPEDFiscal1 para melhorar. Tentei gerar apenas o bloco C800 porém ele salva apenas o arquivo sem as informações dentro. ( Arquivo em anexo ) Alguém poderia me dizer onde estou errando? Já olhei o exemplo mas não consegui descobrir onde estou errando.
Outra duvida é a seguinte, quando vou passar o COD_SIT se eu utilizo COD_SIT.sdRegular; ou COD_SIT:= sdRegular; das duas formas ele da erro. Qual a forma correta de utilizar?
with ACBrSPEDFiscal1 do begin
DT_INI := DtInicial.Date;
DT_FIN := DtFinal.Date;
Arquivo:='C:\Users\Felipe\Desktop\teste.txt';
LinhasBuffer := StrToIntDef('10', 0);
IniciaGeracao;
while not qryC800.EOF do begin
with Bloco_C.RegistroC800New do begin
COD_MOD:='59';
//COD_SIT.sdRegular;
NUM_CFE := qryC800.Fields[2].Text;
DT_DOC := StrToDate(qryC800.Fields[3].Text);
VL_CFE := StrToFloat(qryC800.Fields[4].Text);
VL_PIS := StrToFloat(qryC800.Fields[5].Text);
VL_COFINS := StrToFloat(qryC800.Fields[6].Text);
CNPJ_CPF := qryC800.Fields[7].Text;;
NR_SAT := qryC800.Fields[8].Text;
CHV_CFE := qryC800.Fields[9].Text;
VL_DESC := StrToFloat(qryC800.Fields[10].Text);
VL_MERC := StrToFloat(qryC800.Fields[11].Text);
VL_ICMS := StrToFloat(qryC800.Fields[12].Text);
end;
qryC800.Next;
WriteBloco_C(False);
end;
WriteBloco_C(True);
SaveFileTXT;
ShowMessage('finalizado');
end;
teste.txt