Closed robertorp closed 8 years ago
Boa tarde,
Desde que seja algo que não interfira no que existe hoje não vejo problemas...
Particularmente, eu HOJE nem cogito usar algo assim, trabalhei uns 3-4 anos com SPED logo no comecinho do projeto, e peguei a NFe no início da versão 2.0, hoje meu sistema tem uma classe que faz vários cálculos, posso ate tentar adaptar ela, mas no meu próprio sistema tenho uma opção de ignorar minha classe e oriento no manual de uso e no treinamento a desmarcar a opção "cálculo automático" em caso de dúvidas e digo no contrato que as informações enviadas sao de responsabilidade exclusiva dos clientes...
Na minha opinião é algo sensível demais e a tendência é mais criar do que resolver problemas...
De qualquer forma é só uma opinião, basta ver que componentes a muito mais tempo no mercado não fazem, como o ACBr, até houve uma proposta desse tipo, mas a comunidade não achou viável.
De qualquer forma, não me oponho se for algo opcional, eu só tenho um ponto de vista diferente...
Abraço
Sim seria algo totalmente desacoplado aos documentos eletrônicos, totalmente opcional. Poderia até criar um outro projeto no github com isso, seria tipo oque disse algo fácil de mexer e fácil de implementar cálculos próprios porque se não agradar a pessoa implementa o calculo próprio. Você disse que tem uma classe para isso, poderia adapta-la ou simplesmente nos conversaríamos por skype me de alguns passos e o resto faço com o maior prazer.
@robertorp,
Poderíamos fazer algo no Utils como um método "CalcularTotais" aonde passa um objeto NFe como parâmetro e ele devolve os totais preenchidos em cima dos itens, e "CalcularItem()" aonde os valores de impostos preenchidos em cima da base e aliquota, etc.
A minha classe faz os calculos em cima dos objetos do meu sistema, tem N enums meus próprios é mais fácil fazer do zero direto no NFe, posso até pensar em algo assim em breve, mas atualmente estou numa correria insana, preciso implementar o CTe e estou esperando até essa semana o CTe ser liberado aqui ou o ACBrCTe, caso contrário vou ter que correr implementar no Lazarus mesmo, preciso entrar em Dezembro com o CTe rodando...
Abraço
@marcosgerene Tenho um projeto separado aqui para CT-e que inclusive quero adaptar ele para colocar no Zeus somente não fiz isso ainda por falta de tempo, estou correndo para entregar o MDF-e (Dentro do sistema da empresa a previsão é para dia 30 agora) . Mas o projeto do CT-e atualmente esta somente para simples nacional ou seja impressão de nota somente com imposto SN mas e fácil implementar as outras alíquotas, se quiser posso estar te passando ele. (Vou adaptar ele para o zeus mas.. não é agora, a ordem para eu mexer nele para o zeus e a seguinte.. Entrego o MDF-e ai sim volto no CT-e para adaptá-lo para o Zeus) Se quiser posso arrumar e explico como usar ele. Uma previsão +- para entrega do CT-e aqui no zeus é dia 10 de Dezembro.
Se possível me add no skype robertoalves18@hotmail.com , porque ai podemos trocar ideias no CT-e é nos cálculos de impostos porque logo depois que implementar o CT-e posso estar implementando os cálculos de impostos
@robertorp
Seu projeto está em produção já (CTe)? Poderia me mandar ele? mgf.spirito@gmail.com
Meu skype é mgf.spirito, mas fico muito tempo sem entrar, me manda o e-mail, lá ja te passo o meu whatsapp, mais fácil, abraço
@marcosgerene acabei de enviar o email
@robertorp ,Ok, ja te respondi, fecha esta insue, depois a gente reabre como pull requet... abraço
Pessoal,
Fiz a consulta de valores direto no IBPT. Não é bem o "Motor Tributário" que almejamos mas é possível sim fazer algo legal que não vá dar mais trabalho do que os métodos atuais.
Aproveitei e criei um novo projeto que tenho vontade de tocar a bastante tempo, se chama FiscalBr e conterá todos os indicadores fiscais e consultas fáceis para o desenvolvedor.
Tem muita gente que usa essa consulta direto nas planilhas do IBPT, eu fiz pela API pois a tempos atrás havia aberto um issue para eles arrumarem pois estava com problemas, agora parece estar certinho. Fiz testes e está tudo ok.
// Exemplo de consulta de produto
var meuToken = "SEU_TOKEN_AQUI";
var meuCnpj = "SEU_CNPJ_AQUI";
var codNcmOuCodServ = "21011110"; // Café
var minhaUf = "GO";
var resultado = FiscalBr.MotorTributario.TributacaoMediaIbpt.ConsultarProdutoServicoIbpt(meuToken, meuCnpj, codNcmOuCodServ, minhaUf, 0, TributacaoMediaIbpt.TipoConsulta.Produto);
// Exemplo de consulta de serviço
var meuToken = "SEU_TOKEN_AQUI";
var meuCnpj = "SEU_CNPJ_AQUI";
var codNcmOuCodServ = "0101"; // Análise e desenvolvimento de sistemas
var minhaUf = "GO";
var resultado = FiscalBr.MotorTributario.TributacaoMediaIbpt.ConsultarProdutoServicoIbpt(meuToken, meuCnpj, codNcmOuCodServ, minhaUf, TributacaoMediaIbpt.TipoConsulta.Servico);
// Exemplo p/ obter tributação média do produto em %.
var meuToken = "SEU_TOKEN_AQUI";
var meuCnpj = "SEU_CNPJ_AQUI";
var codNcmOuCodServ = "22011000"; // Água Mineral
var valorProduto = 3.50M;
var minhaUf = "GO";
var resultado = FiscalBr.MotorTributario.TributacaoMediaIbpt.ObterTributacaoMedia(meuToken, meuCnpj, codNcmOuCodServ, valorProduto, minhaUf, 0, TributacaoMediaIbpt.TipoConsulta.Produto);
Qualquer dúvida estou à disposição.
Abraços.
Bom sei que tem complexidades de estado para estado enfim..
Seria algo tipo você implementa uma interface no produto
a interface teria atributos de valores do produto sóh isso.
e teríamos a implementação do calculo baseado na interface do produto.
mas sempre temos diferenças de cálculos etc.. etc.. talvez os cálculos fiquem errados para uns e para outros não enfim.. Seria somente a pessoa fazer uma implementação baseada na interface do produto e bingo! um calculo customizável hehe
teriamos um padrão de calculo mas teríamos como ir alem fugir do padrão
obs: fazer isso inicialmente somente para simples nacional para ver se a ideia iria para frente obs2: se eu tiver ajuda com alguns cálculos topo fazer logo depois que eu entregar o mdf-e https://github.com/adeniltonbs/Zeus.Net.NFe.NFCe/pull/248