none
Emissão NF-e RRS feed

  • Pergunta

  • Boa tarde,

    estou começando a desenvolver um sistema de emissão de nota fiscal, peguei os schemas no site da receita para poder utilizá-los, estou tentando transformá-los em classe, para facilitar, porém tentei pelo xsd.exe e todos vem com erro de ambíguos e quando tento pelo paste special, me informa este erro:

    "Paste XML As Classes
    The content int the clipboard is an XML schema. Please save it to an XSD file and add the file to the project to use it as type definition language." 

    Como é a primeira vez que estou trabalhando com xml, ainda estou com um pouco de dúvida, se estou no caminho certo, e se devo mesmo usar esses arquivos transformando em classe, para desenvolver o form e passar os dados pela classe.

    Agradeço quem puder me ajudar. 

    quinta-feira, 13 de outubro de 2016 15:57

Respostas

  • Bom dia Mariana C. Costa,

    Verifique se essas opções a ajudam:

    https://dennymichael.net/2014/05/30/convert-xml-to-csharp-classes/comment-page-1/

    http://www.codeproject.com/Articles/11317/From-XML-to-Strong-Types-in-C

    http://stackoverflow.com/questions/8009672/how-can-i-convert-xsd-file-to-c-sharp-class

    Atenciosamente,


    Robson William Silva

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    • Marcado como Resposta Mariana C. Costa sexta-feira, 14 de outubro de 2016 13:51
    sexta-feira, 14 de outubro de 2016 12:20
    Moderador
  • Robson, muito legal isso - não sabia que era possível.

    Mariana, tadinha de você (rsrs).
    O maior problema de programas que emitem notas fiscais são as diversas obrigações e alterações que são feitas na parte tributária do sistema. Você precisará ficar constantemente atualizada em todas as alterações de legislação e tributação o que é bem difícil.

    Note por exemplo que ST (Substituição Tributária) e DIFAL (Diferencial de Alíquota) são bastante trabalhosos e, recentemente Minas Gerais fez uma regra que só se aplica para ele no cálculo da base da ST/DIFAL. Isso não estará no XML/XSD (a forma de fazer digo), mas deverá ser calculado pelo seu programa e preenchido de acordo; até que um dia eles mudem de ideia - ai você tem que mexer no código de novo ... rsrsrs ... isso é muito ruim.

    Os XSD apenas mostram o esquema que permite o preenchimento do XML (campos - tags, tipos e obrigatoriedade) mas não a conta que você irá usar para chegar em cada um deles. Sugiro pesquisar um pouco a parte tributária pois o seus sistema terá que fazer bastante cálculos.

    • Marcado como Resposta Mariana C. Costa sexta-feira, 14 de outubro de 2016 14:31
    sexta-feira, 14 de outubro de 2016 13:53

Todas as Respostas

  • Bom dia Mariana C. Costa,

    Verifique se essas opções a ajudam:

    https://dennymichael.net/2014/05/30/convert-xml-to-csharp-classes/comment-page-1/

    http://www.codeproject.com/Articles/11317/From-XML-to-Strong-Types-in-C

    http://stackoverflow.com/questions/8009672/how-can-i-convert-xsd-file-to-c-sharp-class

    Atenciosamente,


    Robson William Silva

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    • Marcado como Resposta Mariana C. Costa sexta-feira, 14 de outubro de 2016 13:51
    sexta-feira, 14 de outubro de 2016 12:20
    Moderador
  • Obrigado, consegui resolver essa parte de XML e entender um pouco mais.
    sexta-feira, 14 de outubro de 2016 13:51
  • Robson, muito legal isso - não sabia que era possível.

    Mariana, tadinha de você (rsrs).
    O maior problema de programas que emitem notas fiscais são as diversas obrigações e alterações que são feitas na parte tributária do sistema. Você precisará ficar constantemente atualizada em todas as alterações de legislação e tributação o que é bem difícil.

    Note por exemplo que ST (Substituição Tributária) e DIFAL (Diferencial de Alíquota) são bastante trabalhosos e, recentemente Minas Gerais fez uma regra que só se aplica para ele no cálculo da base da ST/DIFAL. Isso não estará no XML/XSD (a forma de fazer digo), mas deverá ser calculado pelo seu programa e preenchido de acordo; até que um dia eles mudem de ideia - ai você tem que mexer no código de novo ... rsrsrs ... isso é muito ruim.

    Os XSD apenas mostram o esquema que permite o preenchimento do XML (campos - tags, tipos e obrigatoriedade) mas não a conta que você irá usar para chegar em cada um deles. Sugiro pesquisar um pouco a parte tributária pois o seus sistema terá que fazer bastante cálculos.

    • Marcado como Resposta Mariana C. Costa sexta-feira, 14 de outubro de 2016 14:31
    sexta-feira, 14 de outubro de 2016 13:53
  • Justamente Sammuel, realmente é bem complicado, ainda estou meio "perdida" no assunto.

    Tudo isso porque o governo vai tirar o emissor de nfe gratuito. 

    Pelo menos a parte do xml estou conseguindo gerar, ainda estou fazendo, mais aparentemente está dando certo.

    Só depois que irei fazer a parte do design . kkkkk 

    Realmente é muito difícil, ainda mais como não havia enfrentando esse tipo de situação.

    Você já desenvolveu um emissor de nfe ? 

    sexta-feira, 14 de outubro de 2016 14:31
  • Do zero ainda não, no entanto na empresa existe um ERP que faz toda a parte de cliente/pedido/produto/finan/nf ...
    O ponto de usar um ERP é justamente deixa-lo encarregado de fazer tudo sozinho, ficando para os usuários abastecerem as informações pertinentes de forma que na tomada de pedidos (por exemplo), toda parte tributária esteja em ordem (cadastrado no cliente e produto de acordo).

    No entanto, se você for fazer apenas um substituto do emissor gratuito é outro papo, visto que ele não fazia "nada" sozinho, e a pessoa que o usava tinha que digitar tudo que ia na nota, ele apenas validava schema e transmitia - ai seu trabalho diminui bastante, pois o usuário irá fazer todo o preenchimento sem auxílio do programa.

    sexta-feira, 14 de outubro de 2016 15:00
  • Sim, utilizamos um sistema próprio, mais a princípio o meu objetivo principal é emitir a nota fiscal, transmitir e validar, pois inicialmente o meu tempo é muito curto para desenvolvimento do emissor, depois irei implementa-lo para facilitar pro usuário, conforme as necessidades.

    Mais ainda assim é bem complicado, estou tentando aos poucos, pelo menos no 0 eu já sai, já estou gerando o XML incompleto, mais estou gerando .. kkk

    Para fazer a comunicação com a receita, transmitir e validar, eu iria utilizar um código open source uninfe. (Se tudo der certo)

    Assim agilizaria o meu serviço.

    sexta-feira, 14 de outubro de 2016 15:16
  • Vc se refere a esse programa: https://sourceforge.net/p/uninfe/code/HEAD/tree/trunk/fontes

    Bem, eu vi e ele parece fazer o serviço, o que gera a dúvida: porque você vai desenvolver algo a parte?
    Não poderia usa-lo diretamente na empresa? Veja que nas informações de "licença" deles é permitido uso gratuito na empresa e até modificações. Então você poderia trabalhar em cima dele ajustando a sua necessidade ao invés de iniciar algo totalmente novo - não há restrições de uso.

    sexta-feira, 14 de outubro de 2016 15:32
  • Então Sammuel, mais a parte de gerar o XML eles não fazem, então seria necessário eu fazer a parte de geração de XML para assim utilizar o sistemas dele (assim acredito eu, pois a parte de comunicação com a receita eles fazem), e também preciso fazer a impressão do DANFE, eles fazem, mais não em PDF, para PDF é necessário utilizar um sistema pago deles. 

    Se for só isso que estiver faltando, pra mim vai ser bem mais fácil. :)

    sexta-feira, 14 de outubro de 2016 15:43