Ir para conteúdo
  • Cadastre-se

dev botao

ABCrSPED com G5 da contmatic


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

Recommended Posts

Olá a Todos!

Estou anexando uma nova alteração que fiz no componente conforme as informações que me foram passadas pelo Isaque Pinheiro.

Removi os eventos WriteBloco_A( ALinha: TStringList ) e WriteBloco_F( ALinha: TStringList ), e adicionei dois novos eventos chamados OnAfterWriteBloco0(var ADados: TStringList) e OnAfterWriteBlocoE(var ADados: TStringList).

Este eventos serão disparados após a chamada dos eventos WriteBloco_C e WriteBloco_E, respectivamente. Eles terão seu funcionamento da mesma forma dos demais eventos criados, onde se deve passar o conteúdo do bloco para o parâmetro ADados do evento.

Isaque poderia verificar se ficou de acordo com as exigências para a integração ao componente, por favor, aos demais desculpem a demora para realizar as alterações, mas ando meio sem tempo.

Sugestões e opiniões serão bem-vindas.

Até.

Boa tarde, wrgoncalves2008

Obrigado, por compartilhar suas implementações .

Vou aguardar o commit, pra atualizar o componente no meu delphi.

Ate +.

Link para o comentário
Compartilhar em outros sites

Ola amigos boa tarde, estou tentando implementar os dados para completar o arquivo do SPED FISCAL para o G5, mas estou com dificuldades, estou usando o componente do nosso amigo que fez as implementações, mas vcs teriam ai um exemplo de como ficaria o comando no evento de cada registro, desde ja agradeço a atenção de todos, muito obrigado...

Abracos

Luciano...

Link para o comentário
Compartilhar em outros sites

Bom pessoal sei que se tivesse um exemplo seria mais fácil, mas o tempo está escasso e ainda mais com alguns contadores querendo entregar os arquivos...esse primeiro é uma tristeza, porque sempre fica alguns ajustes, mas vamos ao que interessa.

Bom vou colocar aqui um exemplo de como é o funcionamento, vou utilizar o registro C170 como base, pois os demais registros são a mesma coisa, somente vai mudar para os blocos A e F, vou mostrar como implementei no meu sistema, nada impede que desenvolvam de outra forma.

Primeiro: Crio um TStringlist que ira armazenar as informações que o G5 pede.


var

  FrmSPEDFiscal: TFrmSPEDFiscal;

  vDadosProdutosG5 : TStringList; //Aqui vou armazenar os dados dos produtos para o G5


implementation

segundo: Gero o registro C170 pelo componente normalmente, e depois do ultimo campos adiciono as informações do G5 no TStringlist.

            with RegistroC170New do 

            begin

              NUM_ITEM := FormatFloat('000', IItens);

              COD_ITEM := FormatFloat('000000', StrToInt(NUM_ITEM));

              DESCR_COMPL := FormatFloat('11000000', INotas) + ' -> ITEM '+ COD_ITEM;

              QTD := 1;

              UNID := 'UN';

              //demais campos do layout original


             //aqui verifico se estou gerando para o G5, está será a unica alteração na rotina de geração do registroC170

             if ckbContmatic.Checked then

             begin

                vDadosProdutosG5.Add( {Aqui dentro vão os campos adicionados pela contmatic...... })

             end;

           end; 

Depois de informadas todas as informações necessárias, mando gravar os dados do bloco C

  ACBrSPEDFiscal1.WriteBloco_C(True); // True, fecha o Bloco

Durante a execução do comando anterior o evento OnWriteRegistroC170 do componente será disparado para cada produto que for gravado no arquivo, nesse evento coloquei o seguinte código:

procedure TFrmSPEDFiscal.ACBrSPEDFiscal1WriteRegistroC170( var ALinha: String);

begin

  {Verifico pois independente se estou gerando para G5 ou não o evento é disparado}

  if ckbContmatic.Checked then

  begin

    { A variavel a linha já virá com os dados do layout original, apenas adiciono os dados da linha 0 do StringList }

    ALinha := ALinha + vDadosProdutosG5.Strings[0];

    {Deleto a informação da linha 0 pois ela já foi utilizada}

    vDadosProdutosG5.Delete(0);

  end;

end;

Bom a implementaçao para os demais registro segue a mesma regra. Bom agora para o Bloco A, criei um evento chamado OnAfterWriteBloco0, este evento é disparado imediatamente apos a chamada do evento ACBrSPEDFiscal1.WriteBloco_0, ou seja ele irá gravar os dados do bloco 0 no arquivo e chamar o evento. A implementação dele você pode colocar dentro do evento, ou como eu to utilizando aqui antes de chamar o WriteBloco_0 já tenho esse registro montado, mas isso é indiferente, aqui no exemplo vou implementar direto no evento. O evento OnAfterWriteBloco0 tem um parametro o do tipo TStringList, é neste parametro que deverá ser informado todo o conteúdo do bloco apenas a ultimo linha com a quantidade de registros tem o bloco não é necessária, pois ele gera sozinho.

procedure TFrmSPEDFiscal.ACBrSPEDFiscal1AfterWriteBloco0( var ADados: TStringList);

begin

  {Verifico pois independente se estou gerando para G5 ou não o evento é disparado}

  if ckbContmatic.Checked then

  begin

    ADados.Clear

    //no meu caso como não informo nenhum info neste bloco passo ele como sem dados

    ADados.Add('|A001|1|');


    //Pra quem tem informações para este registro informaria assim

    ADados.Add('|A001|0|');

    ADados.Add({aqui vao os registro e informações do bloco});

    ADados.Add({aqui vao os registro e informações do bloco});

    ADados.Add({aqui vao os registro e informações do bloco});

  end;

end;

Referente ao bloco F é a mesma coisa do bloco A, ele será gerado no evento OnAfterWriteBlocoE que é disparado imediatamente apos a chamado do método ACBrSPEDFiscal1.WriteBloco_E, de resto segue o mesmo procedimento.

Bom pessoal é isso.

Desculpe por não ter o demo e os erros de digitação...rsrs...

Qualquer dúvida estarei a disposição.

At.

Willians R. Gonçalves

[email protected]

"Sou louco porque vivo em um mundo que não merece minha lucidez" (Bob Marley)

Link para o comentário
Compartilhar em outros sites

Bom pessoal estou anexando aqui aqui novamente o componente, pois havia esquecido de adicionar a quantidade de linhas do Bloco A e F ao total do arquivo.

Pelo que percebi o isso nao influencia para o G5, mas para que fique igual aos demais fiz a alterações.

At..

ACBrSPEDFiscal.rar

Willians R. Gonçalves

[email protected]

"Sou louco porque vivo em um mundo que não merece minha lucidez" (Bob Marley)

Link para o comentário
Compartilhar em outros sites

Prezados,

Li o tópico todo, e gostaria se possível de esclarecer algumas dúvidas, pois preciso iniciar a utilização do componente para integrar PIS/COFINS como o G5. Seguem:

1) Considerando que o SVN não foi atualizado, devo utilizar os códigos-fonte enviados pelos colegas e substitui-los na pasta ACBRSPED FISCAL? Fica outra dúvida: toda vez que for atualizada a pasta via SVN teremos que ficar copiando novamente os arquivos deste componente sobre a pasta atualizada?

2) Além dessa cópia, é necessária mais alguma configuração para gerar o arquivo no layout G5, considerando que a Contimatic implementou alterações no layout padrão do SPED ICMS/IPI para atender sua necessidade do SPED PIS/COFINS ?

3) Alguém saberia me dizer se para integrar com o G5 faz-se necessário a geração de todos os registros de todos os blocos, ou quais blocos devemos considerar? Alguém já está integrando com o G5 utilizando o componente?

Grato,

Michel.

Link para o comentário
Compartilhar em outros sites

Olá Michel, vamos as suas respostas

1) Considerando que o SVN não foi atualizado, devo utilizar os códigos-fonte enviados pelos colegas e substitui-los na pasta ACBRSPED FISCAL? Fica outra dúvida: toda vez que for atualizada a pasta via SVN teremos que ficar copiando novamente os arquivos deste componente sobre a pasta atualizada?

É isso mesmo você deverá substituir a pasta do ACBrSpedFiscal por esta que está anexada no meu ultimo post, e toda vez que for atualizar o componente deverá fazer esta substituição. Eu fiz as alterações seguindo as orientações do Isaque Pinheiro, para que estas possam ser incluídas no projeto oficial e não precisemos ficar fazer essa substituição todas vez que atualizar, estou aguardando uma resposta do pessoal do ACBr.

2) Além dessa cópia, é necessária mais alguma configuração para gerar o arquivo no layout G5, considerando que a Contimatic implementou alterações no layout padrão do SPED ICMS/IPI para atender sua necessidade do SPED PIS/COFINS ?

Você não precisa configurar nada apenas seguir as instruções conforme coloquei em um post anterior.

3) Alguém saberia me dizer se para integrar com o G5 faz-se necessário a geração de todos os registros de todos os blocos, ou quais blocos devemos considerar? Alguém já está integrando com o G5 utilizando o componente?

Bom eu já estou utilizando a geração do Sped para o G5 já tenho três clientes que já fizeram a entrega do arquivo. A contmatic criou os blocos A, F e 1 e alterou os blocos C e D, acredito eu que estes blocos sejam importantes para ele, mas em todo o caso eu gero ele completo.

Espero ter respondido suas duvidas.

At.

Willians R. Gonçalves

[email protected]

"Sou louco porque vivo em um mundo que não merece minha lucidez" (Bob Marley)

Link para o comentário
Compartilhar em outros sites

Willian,

De antemão agradeço pelas respostas e brevidade no retorno.

Seria extremamente viável que essas alterações do componente ficassem disponíveis via SVN, e espero que o pessoal do ACBR auxilie nesse sentido, uma vez que deverá ser regra daqui pra frente estas integrações entre sistemas e softwares contábeis.

Pretendo iniciar o desenvolvimento dessa integração nos próximos dias, e gostaria de deixar o canal aqui aberto no sentido de solicitar possível auxílio caso seja necessário.

Obrigado pela atenção,

Michel.

Link para o comentário
Compartilhar em outros sites

Willian,

De antemão agradeço pelas respostas e brevidade no retorno.

Seria extremamente viável que essas alterações do componente ficassem disponíveis via SVN, e espero que o pessoal do ACBR auxilie nesse sentido, uma vez que deverá ser regra daqui pra frente estas integrações entre sistemas e softwares contábeis.

Pretendo iniciar o desenvolvimento dessa integração nos próximos dias, e gostaria de deixar o canal aqui aberto no sentido de solicitar possível auxílio caso seja necessário.

Obrigado pela atenção,

Michel.

Olá as implementações feitas pelo Willian, ainda não foram incorporadas ao fonte do SVN, por não estarem totalmente dentro dos padrões, mas prometo dar uma olhada se tiver di acordo faço o merge e subo.

Abraço

--
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

 

Link para o comentário
Compartilhar em outros sites

Olá Isaque,

Desde já agradecemos pela sua atenção com relação ao assunto, e faço votos para que você consiga analisar a rotina do Willian e incorporá-la ao SVN.

Acredito que seria o início de um projeto para integração do ACBR aos sistemas contábeis utilizados no nosso país.

Assim que o fizer, favor nos dar um retorno, se possível.

Obrigado,

Michel.

Link para o comentário
Compartilhar em outros sites

Olá Isaque,

Você já chegou a analisar as alterações? Se precisa mexer em algo mais, ou já daria pra incorporar ao projeto.

Obrigado

Estou bem apertado essa semana e semana que vem, implantando sistema em clientes novos a noite chego só a casca, mas prometo que assim que sobrar um tempinho vou analisa.

Só posso pedir desculpas no momento.

--
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

 

Link para o comentário
Compartilhar em outros sites

Pessoal tive um problema aqui e creio que vocês também dependendo da situação.

Tenho um cliente que utiliza alíquotas diferenciadas do PIS/COFINS que utilizam 3 casas decimais, mas o componente formata as aliquotas para duas casas, isso não gerou erro na validação, porém o valor da aliquota saiu arredondado.

Esse problema identifiquei tanto no componente ACBrPisCofins e o ACBrSpedFiscal, vou verificar meus ajustes aqui e se possível estarei disponibilizando aqui.

Até.

Willians R. Gonçalves

[email protected]

"Sou louco porque vivo em um mundo que não merece minha lucidez" (Bob Marley)

Link para o comentário
Compartilhar em outros sites

Pessoal tive um problema aqui e creio que vocês também dependendo da situação.

Tenho um cliente que utiliza alíquotas diferenciadas do PIS/COFINS que utilizam 3 casas decimais, mas o componente formata as aliquotas para duas casas, isso não gerou erro na validação, porém o valor da aliquota saiu arredondado.

Esse problema identifiquei tanto no componente ACBrPisCofins e o ACBrSpedFiscal, vou verificar meus ajustes aqui e se possível estarei disponibilizando aqui.

Até.

Veja no Guia Pratico, se pede o campo com 2 ou 3 casas decimais, temos que respeitar o guia.

--
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

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

No guia prático do SPED PIS/COFINS versão 1.0.4 não há nenhum campo do registro A170 que possua 4 dígitos nos decimais.

Tem certeza que isso está no manual? Pode indicar a página?

[]'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.
Link para o comentário
Compartilhar em outros sites

No guia prático do SPED PIS/COFINS versão 1.0.4 não há nenhum campo do registro A170 que possua 4 dígitos nos decimais.

Tem certeza que isso está no manual? Pode indicar a página?

Como eu disse no post anterior " apenas no registro A170 do pis/cofins que está como duas casas decimais.", não ficou muito claro, mas era pra dizer que no registro A170 esta especificado que as alíquotas deveriam ser com duas casas decimais.

Willians R. Gonçalves

[email protected]

"Sou louco porque vivo em um mundo que não merece minha lucidez" (Bob Marley)

Link para o comentário
Compartilhar em outros sites

Isaque

No manual SPED Fiscal e do PIS/COFINS consta como 4 casas decimais, apenas no registro A170 do pis/cofins que está como duas casas decimais.

Até.

Verdade somente o A170 os campo ALIQ_PIS e ALIQ_COFINS estão com 2 casas decimais, corrigido e disponibilizado no SVN, veja se não dará erro no validador agora e nos reporte.

--
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

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Isaque

No manual SPED Fiscal e do PIS/COFINS consta como 4 casas decimais, apenas no registro A170 do pis/cofins que está como duas casas decimais.

Até.

Verdade somente o A170 os campo ALIQ_PIS e ALIQ_COFINS estão com 2 casas decimais, corrigido e disponibilizado no SVN, veja se não dará erro no validador agora e nos reporte.

Mas no guia prático está com 2 casas decimais. O guia prático está errado?

[]'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.
Link para o comentário
Compartilhar em outros sites

Isaque

No manual SPED Fiscal e do PIS/COFINS consta como 4 casas decimais, apenas no registro A170 do pis/cofins que está como duas casas decimais.

Até.

Verdade somente o A170 os campo ALIQ_PIS e ALIQ_COFINS estão com 2 casas decimais, corrigido e disponibilizado no SVN, veja se não dará erro no validador agora e nos reporte.

Mas no guia prático está com 2 casas decimais. O guia prático está errado?

Suponho que sim, porque aliquota de Pis e Cofins é a mesma para todos o sregistros, e só esse registro pede 2 casas, todos os demais registros pedem 4 decimais.

A única coisa que poderá barrar isso será o validador, caso contrário, acreditamos que há um erro no registro A170.

--
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

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Olá valmir,

Eu sugiro você ler esse tópico primeiro.

[]'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.
Link para o comentário
Compartilhar em outros sites

Ola Willians, boa tarde...

Estou usando o componente do ACBRSped Fiscal que vc disponibilizou para nos, para gerar os dados para o Contmatic e para o PVA Validador, mas estou fazendo uma comparação com o ACBRSped Fiscal do SVN com o que vc alterou, e tem bastante alterações que foram feito no SVN, sera que isso vai dar problema qdo for gerar o arquivo para o PVA validador, só isso que esta me preocupando, desde ja agradeço a sua atenção e parabens pela iniciativa, ficaria melhor ainda qdo essas alterações forem implementadas no SVN.

Abraços

Luciano

Link para o comentário
Compartilhar em outros sites

Ola Willians, boa tarde...

Estou usando o componente do ACBRSped Fiscal que vc disponibilizou para nos, para gerar os dados para o Contmatic e para o PVA Validador, mas estou fazendo uma comparação com o ACBRSped Fiscal do SVN com o que vc alterou, e tem bastante alterações que foram feito no SVN, sera que isso vai dar problema qdo for gerar o arquivo para o PVA validador, só isso que esta me preocupando, desde ja agradeço a sua atenção e parabens pela iniciativa, ficaria melhor ainda qdo essas alterações forem implementadas no SVN.

Abraços

Luciano

Luciano eu também já verifiquei e percebi que tem varias alterações no componente original, até umas delas que percebi foi a questão das alíquotas de pis e cofins antes estavam saindo somente com duas casas decimais, mas tirando isso ja tenho dois cliente que entregaram o arquivos e amanhã querendo ou não tenho mais dois que vão entregar, e os unicos problemas que estamos tendo é referente aos dados mesmo, pois colocaram CSTs errados, alíquotas erradas ai já viu né, mas de resto pra gente aqui está funcionando perfeitamente.

Até.

Willians R. Gonçalves

[email protected]

"Sou louco porque vivo em um mundo que não merece minha lucidez" (Bob Marley)

Link para o comentário
Compartilhar em outros sites

Estou bem apertado essa semana e semana que vem, implantando sistema em clientes novos a noite chego só a casca, mas prometo que assim que sobrar um tempinho vou analisa.

Só posso pedir desculpas no momento.

Comecei a analise, e já surgiu uma coisa estranha, pois na unit ACBrEFDBloco_0_Class tem um método "WriteBloco_A", isso não deve existir no código do componente, e sim dentro do código de sistema, o qual poderá ser disparado de um dos eventos.

Outro detalhe o evento TWriteRegistro0208Event, como não existe esse registro 0208 no SPED o evento deve ser TAfterWriteRegistro0206Event, e disparado do registro 0206 e não do 0200.

Bom vou criar mudar aqui para que atenda as exigências do padrão do componente, em seguida anexo aqui e vocês fazem um teste e assim vamos até ficar 100% funcional para ambas as partes.

Amanhã já disponibilizo algo.

Por gentileza reveja isso e anexe a alteração para que eu possa continuar a analise.

--
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

 

Link para o comentário
Compartilhar em outros sites

Ok, Isaque vou analisar aqui e ver o que consigo fazer também, infelizmente meu conhecimento sobre criação de componente é meio limitado, então teve alguns casos que não achei outra opção, mas vou analisar aqui.

Obrigado pela a atenção e pelas dicas.

Até.

Willians R. Gonçalves

[email protected]

"Sou louco porque vivo em um mundo que não merece minha lucidez" (Bob Marley)

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2779 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.

The popup will be closed in 10 segundos...