FONTE NFE VB.NET

NILSONTRES 21/09/2012 00:31:06
#410124
Barros,
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.


TEKO 21/09/2012 11:47:52
#410163
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á.
SANKARVA 21/09/2012 12:39:46
#410167
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
NILSONTRES 21/09/2012 13:03:59
#410169
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.

SANKARVA 21/09/2012 15:47:56
#410189
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
FELIPEDRONI 24/09/2012 11:21:54
#410328
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?!
DANIELCPAETE 24/09/2012 16:49:41
#410373
Felipe, tudo que precisa para iniciar está no manual da Sefaz e nas paginas deste tópico.
FELIPEDRONI 25/09/2012 09:27:13
#410418
Vlw DANIELCPAETE!!
Página 140 de 228 [2276 registro(s)]
Faça seu login para responder