Git Product home page Git Product logo

sintegrabr.net's People

Contributors

orochasamuel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sintegrabr.net's Issues

Erros na DLL quando em produção

Samuel,
nosso Devops encontrou algumas inconsistência na biblioteca. Segue abaixo o que modificarão para que seja corrigido ok.

Depois podemos olhar uma forma de testes para que estes tipos de erros não aconteça, facilitando assim o devel mesmo, pois isto acaba atrasando todo o processo, pois sempre achamos que a culpa é da parte criadora e não da DLL pronta em si. O que acha da ideia?

Segue:

(1) - LINHAS 75,82 e 88 da classe EscreveCamposSintegraByAttribute do projeto SintegraBr.Common:
- Onde estava:
sb.Append(...).Replace(...).PadRight(sintegraCampoAttr.Tamanho, '0'));
- Foi substituído por ->
sb.Append(...).Replace(...).PadLeft(sintegraCampoAttr.Tamanho, '0'));

  • Esta alteração permite que os 0's que antes estavam sendo inseridos a direta para os campos 11, 12, 13, 14 e 15 (campos que representam valores numéricos e devem ser colocados na posição correta), agora são inseridos a esquerda (o que deve ser feito pois 0's a direita alteram no valor dos campos).

(2) - LINHA 97 da classe EscreveCamposSintegraByAttribute do projeto SintegraBr.Common:
- Onde estava:
if(isCode)sb.Append(propertyValue.ToString().PadRight(sintegraCampoAttr.Tamanho, ' '));
- Foi adicionado em seguida:
else if(isCode) sb.Append(' ');

- Esta alteração permite que os quando o parâmetro é código (representa caractere) porém não tem valor, é inserido um espaço em branco. Esta alteração trata o campo 10 do registro 50: Emitente da Nota Fiscal (P-próprio/T-terceiros) -> (MANUAL DO SINTEGRA) 11.1.9.2 No caso de Nota Fiscal, modelo 1 e 1-A (código 01), preencher com brancos.
- Antes quando enviava um espaço em branco (' ') o SintegraBR substituía por nenhum espaço (''), porém o tópico do manual afirma que deve ser substituído por ' '.

No registro54, o modelo não está na ordem correta. Ele está na ultima posição, enquanto deveria estar na terceira posição. Fizemos a seguinte alteração que resolveu o problema:
- Na classe Registro54 linha 24: Onde era -> [SintegraCampos(3, "MODELO", "N", 2, 0, true)]
- Foi substituído por -> [SintegraCampos(2, "MODELO", "N", 2, 0, true)]
- Foi alterada a ordem do modelo onde a nova ordem é igual a ordem de todos os campos do registro54 (ordem = 2).
- Logo, o modelo que antes estava sendo impresso no fim, agora está sendo impresso na posição correta.

Outra alteração foi na da quantidade de casas decimais para o campo quantidade.
Este campo precisa de 3 casas decimais, portanto o valor exibido no arquivo sintegra não tinha nenhuma casa decimal (embora o atributo casas decimais ser igual 3).
- Foi alterado o tipo do atributo quantidade da classe Registro54.
- Antes era do tipo long, passou a ser do tipo decimal (igual aos tipos dos outros atributos, como valorProduto, valorDesconto).

Algumas correções que fizemos em nosso sistema que na verdade creio que poderia ser tratado pela DLL, fica a dica:

(1) - O SintegraBR não trata cnpj null, portanto em nosso sistema gerador sintegra foi adicionado um cnpj zerado (assim como foi dito para fazer no manual do sintegra) antes que fosse enviado para o a função de escrita do SintegraBR.

(2) - O SintegraBR não refatora tamanho da inscrição estadual, portanto em nosso sistema gerador sintegra foi removido casas decimais que sobram a esquerda antes que fosse enviado para o a função de escrita do SintegraBR.

Em anexo envio ai .cs que foram alterados, facilitando ainda mais a atualização dos mesmos

SintegraBR(.Cs Modificados).zip

Limite do tamanho de numero de fax. R10

Quando insiro um telefone (campo fax no registro 10) com tamanho maior do que 10 posições, por exemplo 12 posições, então é gerado no arquivo do sintegra as 12 posições enquanto deveria ser refatorado para o tamanho 10.

NF-e com 3 itens, sendo que dois itens tem o mesmo CFOP e um dos itens CFOP diferente

NF-e com 3 itens, sendo que dois itens tem o mesmo CFOP e um dos itens CFOP diferente
e os três tem alíquotas diferentes

Como gero o Registro 50 com base nisso?

Tenho uma revenda que me passou o seguinte

Gerar 3 Registros 50 são idênticos quase
Dois teriam o mesmo CFOP
Um teria o CFOP diferente
Os três teriam alíquotas diferentes

e se por caso os três tivessem alíquotas iguais
eu teria que gerar 2 Registros 50
Mudando apenas o CFOP

Isso se aplica a tudo? Digo tem base de calculo também isso se aplica lá também?
Realmente e assim?

CST registro 54

image

E somente CST ou CSOSN?

Quando for uma energia elétrica, os itens relacionados a ela entram aqui no registro 54 que é produto? ou energia elétrica eu lanço somente no registro 50 e pronto?

Registro 70 , Data Emissao / Utilização

image

Prestador de serviço seria quando uma transportadora contrata outra transportadora?

"ou data de utilização do serviço para o tomador" Não sei o que é hehehe

Integração

Como faço para utilizar essa biblioteca em meu sistema ?
Quais classes devo usar para pegar os dados do BD e gerar o arquivo.

Produção

Bom dia @samuelrochaoliveira

Este projeto está em produção?

Casas decimais em valor de venda bruta R60M

Olá,
A quantidade de casas decimais em valor de venda bruta R60M deve ser 2, porém está 0. Linha 76 Registro60M.
No manual não fala a quantidade porém é um numérico e dá erro se não colocar, portanto é bem provável que seja com 2 casas decimais mesmo. Testei com 2 casas e deu certo aqui!

Desde já obrigado.

Erro no tamanho dos campos R60R.

Olá.

Sobre a quantidade de casas decimais do campo receita bruta e totalizador geral (R60R), o correto não seria tamanho 16 com 2 casas decimais? Na ultima versão o tamanho está 14. Rodei aqui e deu certo nas linhas do registro R60R.

Att,

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.