FONTE NFE VB.NET
Barros,
Obrigado pela sua atenção.
O UNINFE, não cria o xml e nem gera a tag idlote.
Vou manter essa linha, por isso, a duvida que continua é, porque não consigo enviar uma unica nota sem a tag idlote.
O uninfe não gera essa tag, a não ser que ele gera e depois apaga, o que não acredito.
Sera que sempre terei que gerar um numero de lote antes de enviar, mesmo sendo uma nota por vez.
Inclusive no proprio fonte daqui diz que é opcional.
Desculpe a ignorancia, fico até meio constrangido, porque ninguem teve essa duvida até agora, só eu.
Barros , mais uma vez Obrigado.
Obrigado pela sua atenção.
O UNINFE, não cria o xml e nem gera a tag idlote.
Citação:é mais fácil vc mandar uma a uma, até por questões de controle.
Vou manter essa linha, por isso, a duvida que continua é, porque não consigo enviar uma unica nota sem a tag idlote.
O uninfe não gera essa tag, a não ser que ele gera e depois apaga, o que não acredito.
Sera que sempre terei que gerar um numero de lote antes de enviar, mesmo sendo uma nota por vez.
Inclusive no proprio fonte daqui diz que é opcional.
Desculpe a ignorancia, fico até meio constrangido, porque ninguem teve essa duvida até agora, só eu.
Barros , mais uma vez Obrigado.
Olá [txt-color=#0000f0]Barros[/txt-color];
Você quis dizer que não iremos ter então um projeto de NFe de código aberto modular aqui no fórum ?
Pelo que vi, o [txt-color=#0000f0]DANIELCPAETE [/txt-color]criou este tópico para cada participante contribuir com o projeto de código aberto.
Não quero nada de mão beijada, porém é isto que entendi.
Gostaria mesmo de participar do código aberto, podendo contribuir também.
Abraços a todos.
E vamos lá.
Você quis dizer que não iremos ter então um projeto de NFe de código aberto modular aqui no fórum ?
Pelo que vi, o [txt-color=#0000f0]DANIELCPAETE [/txt-color]criou este tópico para cada participante contribuir com o projeto de código aberto.
Não quero nada de mão beijada, porém é isto que entendi.
Gostaria mesmo de participar do código aberto, podendo contribuir também.
Abraços a todos.
E vamos lá.
NILSONTRES, quando estava desenvolvendo a nfe com o fonte do FORUM, tambem passei por esse impasse, e após pesquisar e analisar, vi que a SEFAZ só aceita o xml em lote, mesmo que só mande um por vez. abaixo o fragmento de código que uso:
Private Sub sacPastaEnviaNota(ByVal cArq As String, ByVal PastaAmbiente As String)
Dim WebS As New C_WebService, cBuffer As String, NDoc As New XmlDocument, Sqlc As String = [Ô][Ô]
Try [ô] tratamento para o caso do arquivo xml ainda estar preso no sistema textil
txtResu.Text = [Ô]Enviando Nf-e [Ô] & cArq : Application.DoEvents()
FileCopy(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\xml_cru\[Ô] & cArq, _
sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\BKP_xml_cru\[Ô] & cArq) [ô] faz um backup do arquivo original
[ô] ----------------------------CHECAR se houve sucesso na copia do arquivo
If Dir(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\BKP_xml_cru\[Ô] & cArq) = [Ô][Ô] Then Exit Sub [ô] volta para tentar novamente
Kill(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\xml_cru\[Ô] & cArq) [ô] apaga
ValidaNfe(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\BKP_xml_cru\[Ô] & cArq, PastaAmbiente) [ô] valida e assina o arquivo xml
[ô]by sac 15/07/2010 - Apos assinar e validar o xml, tenho que embutir o arquivo em um lote, pois o web service so aceita o arquivo em lote
If Dir(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\assinada\[Ô] & cArq) <> [Ô][Ô] Then [ô] se conseguir assinar e validar o xml
FileOpen(1, sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\assinada\[Ô] & cArq, OpenMode.Input, OpenAccess.Read, OpenShare.Shared)
cBuffer = LineInput(1)
FileClose(1)
cBuffer = [Ô]<?xml version=[Ô] & Chr(34) & [Ô]1.0[Ô] & Chr(34) & _
[Ô] encoding=[Ô] & Chr(34) & [Ô]UTF-8[Ô] & Chr(34) & _
[Ô] standalone=[Ô] & Chr(34) & [Ô]no[Ô] & Chr(34) & _
[Ô]?><enviNFe xmlns=[Ô] & Chr(34) & [Ô]http://www.portalfiscal.inf.br/nfe[Ô] & Chr(34) & _
[Ô] versao=[Ô] & Chr(34) & [Ô]2.00[Ô] & Chr(34) & [Ô]><idLote>[Ô] & sacLote(cArq) & [Ô]</idLote>[Ô] & cBuffer & [Ô]</enviNFe>[Ô]
NDoc.LoadXml(cBuffer)
Using xmltw As New XmlTextWriter(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\Lote\[Ô] & cArq, New UTF8Encoding(False))
NDoc.WriteTo(xmltw) [ô] grava a parte de lote no xml da nota fiscal
xmltw.Close()
End Using
sacEnviaNota(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\Lote\[Ô] & cArq, PastaAmbiente)
Else [ô] se nao consegui assinar e validar o xml, ele foi para a pasta recusada
[ô]------------------------------------------------ libera o sistema textil, para enviar o xml novamente
Sqlc = [Ô]UpDate dbo.Sdb_Nfe Set Xml_Cru_Na_Pasta = [ô][ô] Where NotaFatura = [ô][Ô] & _
Mid(cArq, 26, 9) & [Ô][ô] and Chave_Nfe = [ô][Ô] & Mid(cArq, 1, 44) & [Ô][ô][Ô]
cnO.Execute(Sqlc)
End If
Catch ex As Exception
txtResu.Text = Err.Description & [Ô] - [Ô] & Err.Number [ô] sai fora e tenta de novo
End Try
End Sub
abraço
Private Sub sacPastaEnviaNota(ByVal cArq As String, ByVal PastaAmbiente As String)
Dim WebS As New C_WebService, cBuffer As String, NDoc As New XmlDocument, Sqlc As String = [Ô][Ô]
Try [ô] tratamento para o caso do arquivo xml ainda estar preso no sistema textil
txtResu.Text = [Ô]Enviando Nf-e [Ô] & cArq : Application.DoEvents()
FileCopy(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\xml_cru\[Ô] & cArq, _
sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\BKP_xml_cru\[Ô] & cArq) [ô] faz um backup do arquivo original
[ô] ----------------------------CHECAR se houve sucesso na copia do arquivo
If Dir(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\BKP_xml_cru\[Ô] & cArq) = [Ô][Ô] Then Exit Sub [ô] volta para tentar novamente
Kill(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\xml_cru\[Ô] & cArq) [ô] apaga
ValidaNfe(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\BKP_xml_cru\[Ô] & cArq, PastaAmbiente) [ô] valida e assina o arquivo xml
[ô]by sac 15/07/2010 - Apos assinar e validar o xml, tenho que embutir o arquivo em um lote, pois o web service so aceita o arquivo em lote
If Dir(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\assinada\[Ô] & cArq) <> [Ô][Ô] Then [ô] se conseguir assinar e validar o xml
FileOpen(1, sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\assinada\[Ô] & cArq, OpenMode.Input, OpenAccess.Read, OpenShare.Shared)
cBuffer = LineInput(1)
FileClose(1)
cBuffer = [Ô]<?xml version=[Ô] & Chr(34) & [Ô]1.0[Ô] & Chr(34) & _
[Ô] encoding=[Ô] & Chr(34) & [Ô]UTF-8[Ô] & Chr(34) & _
[Ô] standalone=[Ô] & Chr(34) & [Ô]no[Ô] & Chr(34) & _
[Ô]?><enviNFe xmlns=[Ô] & Chr(34) & [Ô]http://www.portalfiscal.inf.br/nfe[Ô] & Chr(34) & _
[Ô] versao=[Ô] & Chr(34) & [Ô]2.00[Ô] & Chr(34) & [Ô]><idLote>[Ô] & sacLote(cArq) & [Ô]</idLote>[Ô] & cBuffer & [Ô]</enviNFe>[Ô]
NDoc.LoadXml(cBuffer)
Using xmltw As New XmlTextWriter(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\Lote\[Ô] & cArq, New UTF8Encoding(False))
NDoc.WriteTo(xmltw) [ô] grava a parte de lote no xml da nota fiscal
xmltw.Close()
End Using
sacEnviaNota(sacUnidadeLogica & [Ô]nf_eletronica\[Ô] & PastaAmbiente & [Ô]\Lote\[Ô] & cArq, PastaAmbiente)
Else [ô] se nao consegui assinar e validar o xml, ele foi para a pasta recusada
[ô]------------------------------------------------ libera o sistema textil, para enviar o xml novamente
Sqlc = [Ô]UpDate dbo.Sdb_Nfe Set Xml_Cru_Na_Pasta = [ô][ô] Where NotaFatura = [ô][Ô] & _
Mid(cArq, 26, 9) & [Ô][ô] and Chave_Nfe = [ô][Ô] & Mid(cArq, 1, 44) & [Ô][ô][Ô]
cnO.Execute(Sqlc)
End If
Catch ex As Exception
txtResu.Text = Err.Description & [Ô] - [Ô] & Err.Number [ô] sai fora e tenta de novo
End Try
End Sub
abraço
SANKARVA,
Amigo Obrigado, incrivel que eu nunca havia nem visto a tag idlote, nem em todos os xml processados pelo Uninfe, e nem nos que os meus fornecedores
me mandam quando compro algum produto.
Amigo Obrigado, incrivel que eu nunca havia nem visto a tag idlote, nem em todos os xml processados pelo Uninfe, e nem nos que os meus fornecedores
me mandam quando compro algum produto.
NILSONTRES, essa tag serve somente para enviar o lote a SEFAZ, ela não deve fazer parte do seu xml. No meu caso eu gravo em outra pasta o xml com essa tag, mas voce pode por em memória no momento de enviar. O UNINFE provavelmente faz em memória.
abraço
abraço
Cara este projeto esta sendo tirado com base em algum livro ou apostila?
Eu estou querendo começar a desenvolver um projeto de NF-E, mas não sei
nem por onde começar, vcs tem algum livro ou algo do tipo para eu poder dar inicio?!
Eu estou querendo começar a desenvolver um projeto de NF-E, mas não sei
nem por onde começar, vcs tem algum livro ou algo do tipo para eu poder dar inicio?!
Felipe, tudo que precisa para iniciar está no manual da Sefaz e nas paginas deste tópico.
Vlw DANIELCPAETE!!
Faça seu login para responder