FONTE NFE C#

ELUCIMAR 25/02/2015 21:32:24
#444794
Fiz varias melhorias nas classes da NFe em relação ao primeiro Projeto que postei:

  • Parametrizei as configurações da NFe e armazenei em um banco SQLite.Criei duas classes para consumir os Serviços da NFe e criei uma Interface para que ambas classes possam implementar essa Interface.Uma das classes monta dinamicamente os Webservices através de Reflection usando cliente SoapHttpClientProtocol .E a outra classe usa HttpWebRequest para consumir os Webservice da NFe.

  • Implantação do Serviço NFeDistribuicaoDFe que substituirá o NFeDestinadas.

  • Melhorias nos Danfes gerados pelo PrintDocument.

  • Classe Importação Tags Html Portal Nacional NFe(Para quem não possui Certificado Digital). No caso o correto é fazer manifestação do destinatário e baixar o Xml completo pelo Webservice.

  • Classe Importação Arquivo/String Xml para Entrada da NFe

  • Todas respostas proveniente dos Serviços da NFe foram serializadas

    Link:
    http://rcafe.com.br/NFeVBMania/NFeVBMania.rar

    Link do Software para Editar a estrutura do Banco do Banco SQLite:
    http://rcafe.com.br/NFeVBMania/sqlitestudio.rar

  • [txt-color=#e80000]Gostaria se possível quando algum colega tiver uma idéia/sugestão para implementar no Projeto que me comunicasse,ou se fizer alguma melhoria que compartilhasse com todos no Fórum para que o Projeto não pare mais sim cresça cada dia mais.

    Conhecimento foi feito para ser partilhado e não guardado.
    Edward Klumpp[/txt-color]
    DANIELCPAETE 03/03/2015 10:55:02
    #444893
    Meus parabéns pelo projeto ELUCIMAR.
    ELUCIMAR 03/03/2015 11:36:28
    #444897
    Obrigado DANIELCPAETE !

    Como disse no Post do Tópico Fonte NFe -VB.NET página 170, o pontapé inicial para mim fazer este Projeto em C# foi o seu projeto modificado pelo colega PAULOPHC. Sua disposição em compartilhar o Fonte NFe VB.NET foi de suma importância para mim e para vários colegas aqui no VBM.
    Fica aqui os meus agradecimentos para você e tantos colegas mais que colaboraram com o Projeto NFe VBM.
    Precisamos manter sempre esse espirito entre a Comunidade VBM.
    TEKO 04/03/2015 12:36:33
    #444950
    Primeiro parabéns ao Elucimar por este tópico tão importante quanto ao NFe/VB.net.

    Pessoal é o seguinte, me perguntaram e não soube explicar;
    Alguém saberia dizer se mesmo tendo o NFe o comércio será obrigado emitir cupom fiscal ?
    O ramo é de auto peças e serviços.

    Abraços!
    ELUCIMAR 05/03/2015 12:36:51
    #444999
    Obrigado TEKO !

    Citação:

    Pessoal é o seguinte, me perguntaram e não soube explicar;
    Alguém saberia dizer se mesmo tendo o NFe o comércio será obrigado emitir cupom fiscal ?
    O ramo é de auto peças e serviços.



    Até onde sei sim e no caso do seu estado SP creio que deve começar este ano a substituição do Cupom Fiscal pelo SAT/NFC-e. No site do Sefaz do seu estado tem o cronograma.
    http://www.nfce.fazenda.sp.gov.br/NFCePortal/
    http://www.fazenda.sp.gov.br/sat/
    FOXMAN 05/03/2015 15:07:20
    #445004
    Citação:

    :
    Primeiro parabéns ao Elucimar por este tópico tão importante quanto ao NFe/VB.net.

    Pessoal é o seguinte, me perguntaram e não soube explicar;
    Alguém saberia dizer se mesmo tendo o NFe o comércio será obrigado emitir cupom fiscal ?
    O ramo é de auto peças e serviços.

    Abraços!



    Citação:

    Em regra, as operações de venda a varejo não estão alcançadas pela obrigatoriedade de emissão de NF-e, exceto nas operações destinadas à órgãos públicos, de comércio exterior e para destinatários localizados em unidade da Federação diferente daquela do emitente (conforme cláusula segunda do Protocolo ICMS 42/2009).
    Caso a empresa de varejo também atue como fabricante e/ou atacadista de atividade enquadrada na obrigatoriedade, deverá emitir NF-e nas situações em que emitia a nota fiscal modelo 1 ou 1-A. No caso de efetuar a venda no varejo por meio de cupom fiscal ou de nota fiscal de venda a consumidor (modelo 2), estas continuarão sendo normalmente emitidas em papel.

    Fonte : Portal Nacional NF-e

    TEKO 05/03/2015 22:28:54
    #445024
    aff nossa

    bom então ta neh

    Obrigado pessoal
    Abraços
    WPIMENTEL 06/03/2015 11:45:40
    #445034
    Parabens Elucimar e obrigado por disponibilizar este Projeto.
    Estou implantando a sua dll no meu projeto e estou tento uma dificuldade.
    Ja consegui gerar o XML que aparente esta correto usando o
    [Ô]Dim nfe_Autorizacao As NFeAutorizacao = New NFeAutorizacao(New List(Of NFeBase)(NFE_Dados_Base), NFE_Configuracao, NFE_Finalidade, Nothing, procEnvio, 1, [Ô]55[Ô], [Ô]0[Ô], Nothing, 0)[Ô]
    mas quando envio utilizando [Ô]nfe_Autorizacao.EnviarSefaz()[Ô] o servidor ele esta retornando falha [Ô]<cStat>215</cStat><xMotivo>Rejeição: Falha no schema XML</xMotivo>[Ô] voces ja tiveram este problema?

    Segue o arquivo XML


    Att.
    Wellington
    ELUCIMAR 06/03/2015 12:45:27
    #445035
    WPIMENTEL enviei o seu xml para Sefaz SP e autorizou a NFe normalmente. Olha o protocolo da mesma.
    WPIMENTEL 06/03/2015 15:48:01
    #445042
    Rapaz, sem querer abusar, mas acredito que não esta faltando nada nesta rotina abaixo, o que sera que estou fazendo errado. Voce tem um exemplo de emissão e transmissão, pode ser em c mesmo.

    Dim NFE_Dados_Base(0) As NFeBase
    Dim NFE_Configuracao As NFeConfig = New NFeConfig
    Dim NFE_Finalidade As String = [Ô]1[Ô]
    Dim NFE_Modelo As String = [Ô]55[Ô]
    Dim NFE_FormaPgto As String = [Ô]1[Ô]

    configServico = ConfigServWeb.ConfigServico([Ô]SP[Ô], [Ô]55[Ô], TipoServico.NfeStatusServico)

    Dim cd As CertificadoDigital = New CertificadoDigital()
    Dim certDig As X509Certificate2 = cd.SelecionarCertificado([Ô][Ô])

    Dim procEnvio As ProcEnvNFe = ProcEnvNFe.Assincrono

    NFE_Dados_Base(0) = New NFeBase
    Gera_NFE_XML(NFE_Dados_Base(0), NFE_Configuracao)


    Dim nfe_Autorizacao As NFeAutorizacao = New NFeAutorizacao(New List(Of NFeBase)(NFE_Dados_Base), NFE_Configuracao, NFE_Finalidade, Nothing, procEnvio, 1, [Ô]55[Ô], [Ô]0[Ô], Nothing, 0)
    nfe_Autorizacao.CertDigital = certDig
    nfe_Autorizacao.ConfigServico = configServico

    ListBox1.Items.Add([Ô]Enviando Lote Sefaz...[Ô])
    Me.Refresh()

    nfe_Autorizacao.EnviarSefaz()
    If Not IsNothing(nfe_Autorizacao.RetornoSefaz) Then

    Dim retEnvio As BaseNF.Servicos.Autorizacao.retEnviNFe = nfe_Autorizacao.RetornoSefaz
    If (retEnvio.cStat = [Ô]103[Ô]) Then

    ListBox1.Items.Add([Ô]Status........: [Ô] + retEnvio.cStat)
    ListBox1.Items.Add([Ô]Tipo Ambiente.: [Ô] + retEnvio.tpAmb)
    ListBox1.Items.Add([Ô]Nº Recibo.....: [Ô] + retEnvio.infRec.nRec)
    ListBox1.Items.Add([Ô]Data Recibo...: [Ô] + retEnvio.dhRecbto)
    ListBox1.Items.Add([Ô]Motivo........: [Ô] + retEnvio.xMotivo)
    ListBox1.Items.Add([Ô]Versão........: [Ô] + retEnvio.versao)
    [ô]ListBox1.Items.Add(new String([ô]-[ô], 100))
    ListBox1.Items.Add([Ô]---------------------------------[Ô])
    ListBox1.Items.Add([Ô]Buscando Retorno Lote Sefaz...[Ô])
    Me.Refresh()
    [ô]//Tempo de aguardo em milesimos de Segundos para buscar retorno
    [ô]//Coloquei esse tempo só pra Testes
    Sleep(5000)

    configServico = ConfigServWeb.ConfigServico([Ô]SP[Ô], [Ô]55[Ô], TipoServico.NFeRetAutorizacao)
    Dim NFeRetAutorizacao As NFeRetAutorizacao = New NFeRetAutorizacao(retEnvio.infRec.nRec)
    NFeRetAutorizacao.CertDigital = certDig
    NFeRetAutorizacao.ConfigServico = configServico
    NFeRetAutorizacao.EnviarSefaz()

    If Not IsNothing(NFeRetAutorizacao.RetornoSefaz) Then

    Dim retConsRec As BaseNF.Servicos.Autorizacao.retConsReciNFe = NFeRetAutorizacao.RetornoSefaz
    [ô]// Status = 100 NF Autorizada
    If (retConsRec.protNFe.Count > 0) Then
    For l = 0 To retConsRec.protNFe.Count - 1
    ListBox1.Items.Add([Ô]Chave..........: [Ô] + retConsRec.protNFe(l).infProt.chNFe)
    ListBox1.Items.Add([Ô]Num Protocolo..: [Ô] + retConsRec.protNFe(l).infProt.nProt)
    ListBox1.Items.Add([Ô]Status.........: [Ô] + retConsRec.protNFe(l).infProt.cStat)
    ListBox1.Items.Add([Ô]Motivo.........: [Ô] + retConsRec.protNFe(l).infProt.xMotivo)
    ListBox1.Items.Add([Ô]-------------------------------------[Ô])
    Next

    End If
    End If

    Else

    ListBox1.Items.Add([Ô]Status........: [Ô] + retEnvio.cStat)
    ListBox1.Items.Add([Ô]Tipo Ambiente.: [Ô] + retEnvio.tpAmb)
    ListBox1.Items.Add([Ô]Nº Recibo.....: [Ô] + retEnvio.infRec.nRec)
    ListBox1.Items.Add([Ô]Data Recibo...: [Ô] + retEnvio.dhRecbto)
    ListBox1.Items.Add([Ô]Motivo........: [Ô] + retEnvio.xMotivo)
    ListBox1.Items.Add([Ô]Versão........: [Ô] + retEnvio.versao)
    ListBox1.Items.Add([Ô]---------------------------------[Ô])
    [ô]ListBox1.Items.Add(new String([ô]-[ô], 100))
    Me.Refresh()
    End If

    Else
    MsgBox(nfe_Autorizacao.GetErros)
    End If
    ELUCIMAR 06/03/2015 16:52:02
    #445044
    Só pra testar,gera um xml sem a tag de enviNFe. E usa o projeto de exemplo em C# que postei no Topo da página e testa o envio.
    Página 1 de 14 [140 registro(s)]
    Faça seu login para responder