Jump to content

Rodrigo Coelho

Membros
  • Posts

    68
  • Joined

  • Last visited

Everything posted by Rodrigo Coelho

  1. Jadson, este é o problema que estamos discutindo aqui. Foi retirada a instrução "Delimitador.StrictDelimiter := True;" por problemas no Delphi 7, mas nos demais não funciona. Então sugeri fazer a mudança necessária que até agora não foi postada no SVN. Então corrigi eu mesmo, como solução provisória. Basta abrir a função "importar" do ACBrSpedPCImportar.pas e retirar do comentário o comando citado acima. Valeu.
  2. Se o funcionamento for o mesmo que usando o StrictDelimeter, pode ser. Só não entendo por que não usar as diretivas de compilação do Delphi mesmo, assim como postei anteriormente. O Lazarus não suporta isso?
  3. Bem, só sei que sem ela não vai funcionar nas versões mais recentes do Delphi. É preciso que o responsável pelo código faça a alteração para não ocasionar o problema nessas versões. Rodrigo.
  4. Após a última atualização do ACBrEPCImportar.pas a importação passou a não funcionar mais no XE5. Verifiquei através de debug que o problema estava já na leitura do primeiro registro (0000). Na variável Delimiter o nome da empresa estava cada palavra em uma coluna diferente, ou seja, ele estava considerando os espaços como separador. Identifiquei que isso se deve a ter tirado a linha Delimitador.StrictDelimiter := True; Que como diz no SVN "foi retirado pois essa propriedade não existe no Delphi 7". Porém retirando ela causou problema no XE5. Então fiz uma alteração. Delimitador.Delimiter := '|'; {$IFNDEF VER150} Delimitador.StrictDelimiter := True; {$ENDIF} Usei diretiva de compilação para testar. Se for qualquer outra versão, que não a 7, o Delphi vai compilar essa linha. É preciso testar no 7, pois não tenho ele aqui. Segue em anexo a unit alterada. ACBrEPCImportar.pas ACBrEPCImportar.pas
  5. Também inclui algumas funções de conversão que não encontrei nesta unit. ACBrEPCBlocos.pas ACBrEPCBlocos.pas
  6. São essas duas. Na ACBrEPCBase.pas foi alterada a conversão de data. Na outra foi colocado a atribuição do VL_PIS no método RegC501 ACBrEPCBase.pas ACBrEPCBloco_C_Importar.pas
  7. Além da correção de conversão de data eu fiz um correção na leitura do registro C501 que não estava lendo o valor do PIS corretamente. procedure TACBrSpedPCImportar_BlocoC.RegC501; begin with ACBrSpedPisCofins.Bloco_C.RegistroC501New do begin CST_PIS := StrToCstPis(Valor); VL_ITEM := ValorF; NAT_BC_CRED := StrToNatBcCred(Valor); VL_BC_PIS := ValorF; ALIQ_PIS := ValorF; VL_PIS := ValorF; <-- Está faltando essa linha COD_CTA := Valor; end; end; Gostaria que o responsável fizesse essas alterações e fizesse o post no SVN
  8. Boa tarde, Como não ajudei muito com este desenvolvimento. Então fiz um projeto exemplo de leitura/exibição dos blocos C100 e C170. O exemplo foi desenvolvido em Delphi XE5. É bem simples, mas fica aqui a minha colaboração. PisCofinsImp.rar PisCofinsImp.rar
  9. Acabo de terminar os meus testes aqui. E o problema acima é o único que encontrei. Fiz a alteração dele para que possa fazer a importação das datas conforme os meus arquivos. Ficou assim. function TACBrSpedPCImportar_Base.ValorD: TDateTime; var S: string; begin S := Valor; if S <> EmptyStr then // Result := EncodeDate(StrToInt(Copy(S, 1, 4)), StrToInt(Copy(S, 5, 2)),StrToInt(Copy(S, 7, 2))) Result := EncodeDate(StrToInt(Copy(S, 5, 4)), StrToInt(Copy(S, 3, 2)), StrToInt(Copy(S, 1, 2))) else Result := 0; end; Se estiver correto posso subir ele para o SVN. Claro que dai vou retirar o comentário.
  10. Bom dia, Agora consegui compilar tudo certinho, mas ainda há um problema ao importar o arquivo do SPED. No registro 0000 tem os campos de data. No meu arquivo SPED o formato deste campo está assim: '28022014' (data final no caso) e o método para conversão de data está tratando como se o ano fosse o primeiro campo da data. Veja: function TACBrSpedPCImportar_Base.ValorD: TDateTime; var S: string; begin S := Valor; if S <> EmptyStr then Result := EncodeDate(StrToInt(Copy(S, 1, 4)), StrToInt(Copy(S, 5, 2)),StrToInt(Copy(S, 7, 2))) else Result := 0; end; Veja que o primeiro campo o metodo está associando ao ano, mas no meu arquivo deveria ser o dia. O padrão do SPED é anomesdia, ou diamesano. Porque no arquivo que meu cliente me passou está diamesano.
  11. O problema que relatei no post acima Este problema.
  12. Bom dia, Alguma novidade sobre a correção dos problemas?
  13. Ok, obrigado Isaque. A instalação funcionou perfeitamente agora. Mas tem um problema. Eu instalei o pacote de importação manualmente (já que o instalador não tem ele). A instalação do pacote ocorreu tudo certo (tirando os milhares de warning que tem). Ai então criei uma aplicação para testar a leitura do arquivo e quando vou compilar dá os seguintes erros: [dcc32 Hint] ACBrSpedPCImportar_Base.pas(58): H2219 Private symbol 'Inicializa' declared but never used [dcc32 Error] ACBrSpedPCImportar_BlocoC.pas(876): E2010 Incompatible types: 'Integer' and 'string' [dcc32 Error] ACBrSpedPCImportar_BlocoC.pas(879): E2003 Undeclared identifier: 'DOC_FIN' [dcc32 Fatal Error] ACBrSpedPCImportar.pas(55): F2063 Could not compile used unit 'ACBrSpedPCImportar_BlocoC.pas' O estranho que na instalação do pacote isso não ocorre. Será que é alguma coisa com as referências na Library do Delphi? Sabes o que pode ser
  14. Baixei os arquivos SVN, mas quando tento reinstalar o ACBrSPED.dpk (através do instalador) dá os seguintes erros: C:\ACBr\Fontes\ACBrSPED\ACBrSPEDContabil\ACBrECDBloco_0_Class.pas(390) Error: E2003 Undeclared identifier: 'Result' C:\ACBr\\Pacotes\Delphi\ACBrSPED\ACBr_SPED.dpk(38) Fatal: F2063 Could not compile used unit 'ACBrECDBloco_0_Class.pas'
  15. Está dando erro dizendo que não encontra o arquivo ACBrSpedUtils.dcu. E realmente procurei nas pastas do ACBr e não existe um ACBrSpedUtils.pas.
  16. Boa noite, Baixei os fontes do importador do SPED, porém não estou conseguindo fazer a instalação do componente no meu Delphi. Tem muitas dependências de arquivos que o dpk não está encontrando. Tem algum passo a passo de como devo proceder para instalar este componente. Obrigado. Outra coisa. Quando teremos essa opção de importação dentro do ACBr padrão?
  17. Então, EMBarbosa Alguma novidade sobre este post? Teremos disponível a funcionalidade de fazer load dos arquivos EFD? Gostaria de saber, pois estou precisando. E se não houver previsão vou implementar eles conforme o Fabiano postou. Rodrigo.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.