Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 3272 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Bom dia Colegas, gostaria de saber porque não esta sendo gerado o bloco F500+F525 no TXT gerado com o código da procedure abaixo relacionado, gostaria de saber onde estou errando?

 

 with PisCofins.Bloco_f do
  begin
   with RegistroF001New do
    begin
     with RegistroF010New do
    begin
    CNPJ := sCNPJEmpresa;
    IND_MOV := imComDados;
       if TipoMovimento = 'CAIXA' then
        begin
    if DM.IBTransaction.Active then    //PEGA NOTA NFC-E
       DM.IBTransaction.Commit;
       DM.IBTransaction.StartTransaction;
    BlocoF500.Close;
    BlocoF500.ParamByName('CODEMP').AsInteger := iEmp;
    BlocoF500.ParamByName('DATAINI').AsDate := DATA_INCIO;
    BlocoF500.ParamByName('DATAFIN').AsDate := DATA_Fim;
    BlocoF500.ExecOrOpen;

    if not BlocoF500.IsEmpty then begin
    while not BlocoF500.eof do begin

       with RegistroF500New do
    begin
        VL_REC_CAIXA := BlocoF500TOTAL.AsCurrency;
        CST_PIS := StrToCstPis(BlocoF500CST_PIS.AsString);
        VL_DESC_PIS := 0;
        VL_BC_PIS := BlocoF500TOTAL.AsCurrency;
        ALIQ_PIS := BlocoF500ALIQUOTA_PIS.AsFloat;
        VL_PIS := BlocoF500TOTALICMSPIS.AsCurrency;
        CST_COFINS := StrToCstCofins(BlocoF500CST_COFINS.AsString);
        VL_DESC_COFINS := 0;
        VL_BC_COFINS := BlocoF500TOTAL.AsCurrency;
        ALIQ_COFINS := BlocoF500ALIQUOTA_COFINS.AsFloat;
        VL_COFINS := BlocoF500TOTALCOFINS.AsCurrency;
         COD_MOD := '65';
         CFOP := StrToInt(BlocoF500CFOP_VENDAS_CF_EST.AsString);
         COD_CTA := '01';
         INFO_COMPL := '';


    if (CST_PIS = strtocstpis('04')) or (CST_PIS = strtocstpis('05'))
    or (CST_PIS = strtocstpis('06')) or (CST_PIS = strtocstpis('07')) or
       (CST_PIS = strtocstpis('08')) or (CST_PIS = strtocstpis('09')) then begin
         Bloco_M;
    end;
    end;
    BlocoF500.Next;
    end;
    end;


    BlocoF500NFe.Close;    //PEGA NOTA FISCAIS DE SAIDA NF-E
    BlocoF500NFe.ParamByName('CODEMP').AsInteger := iEmp;
    BlocoF500NFe.ParamByName('DATAINI').AsDate := DATA_INCIO;
    BlocoF500NFe.ParamByName('DATAFIN').AsDate := DATA_Fim;
    BlocoF500NFe.ExecOrOpen;

    if not BlocoF500NFe.IsEmpty then begin
     while not BlocoF500NFe.eof do begin
       with RegistroF500New do
    begin
        VL_REC_CAIXA := BlocoF500NFeTOTAL.AsCurrency;
        CST_PIS := StrToCstPis(BlocoF500NFeCST_PIS.AsString);
        VL_DESC_PIS := 0;
        VL_BC_PIS := BlocoF500NFeTOTALBASEPIS.AsCurrency;
        ALIQ_PIS := BlocoF500NFeALIQ_PIS.AsFloat;
        VL_PIS := BlocoF500NFeVALORPIS.AsCurrency;
        CST_COFINS := StrToCstCofins(BlocoF500NFeCST_COFINS.AsString);
        VL_DESC_COFINS := 0;
        VL_BC_COFINS := BlocoF500NFeTOTALBASECOFINS.AsCurrency;
        ALIQ_COFINS := BlocoF500NFeALIQ_COFINS.AsFloat;
        VL_COFINS := BlocoF500NFeVALORCOFINS.AsCurrency;
         COD_MOD := '55';
         CFOP := StrToInt(BlocoF500NFeCFO.AsString);
         COD_CTA := '01';
         INFO_COMPL := '';

         if (CST_PIS = strtocstpis('04')) or (CST_PIS = strtocstpis('05'))
    or (CST_PIS = strtocstpis('06')) or (CST_PIS = strtocstpis('07')) or
       (CST_PIS = strtocstpis('08')) or (CST_PIS = strtocstpis('09')) then begin
         Bloco_M;

    end;
    end;
      BlocoF500NFe.Next;
  end;
    end;

    Bloco525NFCe.Close;    //PEGA TOTAIS BLOCO F525 PARA APURAÇÃO CAIXA
    Bloco525NFCe.ParamByName('CODEMP').AsInteger := iEmp;
    Bloco525NFCe.ParamByName('DATAINI').AsDate := DATA_INCIO;
    Bloco525NFCe.ParamByName('DATAFIN').AsDate := DATA_Fim;
    Bloco525NFCe.ExecOrOpen;

    if not Bloco525NFCe.IsEmpty then begin
     while not Bloco525NFCe.eof do begin
       with RegistroF525New do
    begin
       VL_REC := Bloco525NFCeTOTAL.AsCurrency;
       IND_REC := StrToInd_Rec('05');
       CNPJ_CPF := RetiraCaracter(Bloco525NFCeR04_CNPJ_CLIENTE.asstring);
       NUM_DOC := '';
       COD_ITEM := Bloco525NFCeCOD_PRO.Asstring;
       VL_REC_DET := Bloco525NFCeTOTAL.AsCurrency;
       CST_PIS := StrToCstPis(Bloco525NFCeCST_PIS.AsString);
       CST_COFINS := StrToCstCofins(Bloco525NFCeCST_COFINS.AsString);
       INFO_COMPL := '';
       COD_CTA := '01';
    end;
    Bloco525NFCe.Next;
    end;
    end;

    Bloco525NFe.Close;    //PEGA TOTAIS BLOCO F525 PARA APURAÇÃO CAIXA
    Bloco525NFe.ParamByName('CODEMP').AsInteger := iEmp;
    Bloco525NFe.ParamByName('DATAINI').AsDate := DATA_INCIO;
    Bloco525NFe.ParamByName('DATAFIN').AsDate := DATA_Fim;
    Bloco525NFe.ExecOrOpen;

    if not Bloco525NFe.IsEmpty then begin
     while not Bloco525NFe.eof do begin
       with RegistroF525New do
    begin
       VL_REC := Bloco525NFeTOTAL.AsCurrency;
       IND_REC := StrToInd_Rec('05');
       CNPJ_CPF := RetiraCaracter(Bloco525NFeCNPJ_CLI.asstring);
       NUM_DOC := '';
       COD_ITEM := Bloco525NFeCOD_PRO.Asstring;
       VL_REC_DET := Bloco525NFeTOTAL.AsCurrency;
       CST_PIS := StrToCstPis(Bloco525NFeCST_PIS.AsString);
       CST_COFINS := StrToCstCofins(Bloco525NFeCST_COFINS.AsString);
       INFO_COMPL := '';
       COD_CTA := '01';
    end;
    Bloco525NFe.Next;
    end;
    end;

  if DM.IBTransaction.Active then
       DM.IBTransaction.Commit;
       BlocoF500.Close;
       BlocoF500NFe.Close;
       Bloco525NFCe.Close;
       Bloco525NFe.close;
end;
    end;
    end;
  PisCofins.WriteBloco_F;
end;

 

Postado

Olhei o código do componente e não encontrei nada de errado, gentileza debugar seu código para detectar.

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

Postado
10 minutos atrás, Isaque Pinheiro disse:

Olhei o código do componente e não encontrei nada de errado, gentileza debugar seu código para detectar.

Olá Isaque!

Na verdade já fiz de tudo e no debug nao apresenta nada de errado, o componente esta sendo preenchido corretamente. Por gentileza tem como verificar se estou errando na abertura e fechamento dos blocos dos registros? É que é a primeira vez que ajustei pra gerar o contribuições no entanto estou sentindo mais dificuldades do que o SPED ICMS e também porque sei que alguns registros dependem de outros para que o componente gere o TXT corretamente e eu não sei se estou preenchendo ele do jeito que é pra fazer, se tiver um exemplo so desse bloco e puder compartilhar agradeço!!

Postado

Estude o Demo na pasta ..\ACBr2\Exemplos\ACBrTXT\ACBrSPED\Delphi\PisCofins

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

  • Consultores
Postado
21 horas atrás, LIDERNetwork disse:

No Demo nao tem esses registros...

Você pode implementar assim seguindo por modelo os que já estão feitos no exemplo e postar o código aqui.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • Este tópico foi criado há 3272 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.