Nfe to MG Submission in Version 3.10

Asked

Viewed 918 times

1

After the tips I changed the method code as well as applied the fixes in the web service changing from:

System.Xml.Serialization.XmlArrayItemAttribute("retEnviNFe", IsNullable:=False)

for:

System.Xml.Serialization.XmlArrayItemAttribute("retEnviNFe", [Namespace]:="http://www.portalfiscal.inf.br/nfe", IsNullable:=False)

However I receive as return an empty object. My God what is wrong?
Someone has already succeeded in sending (3.10) to MG?
Follow the modified method:

        Public Function enviaNFe_(ByVal NumeroDoLote As Integer, ByVal ListiView As ListView, ByVal Label As ToolStripStatusLabel) As Boolean
    Dim ret As Boolean = False
    Dim result() As String
    Dim xmlDoc As XmlDocument = Nothing
    Dim arquivoRetorno As String = Nothing

    Try
        'vrifica a existência do arquivo
        If File.Exists(Me.ArquivoXml) = True Then

            Me.labelMsg.Visible = True
            Me.labelMsg.Text = Space(40) & "Aguarde um instante por Favor. Enviando o arquivo...."
            My.Application.DoEvents()

            'Carrega o arquivo xml para dentro do objeto xmlDoc
            xmlDoc = New XmlDocument
            xmlDoc.Load(Me.ArquivoXml)
            'Cria um objeto XmlNode
            Dim oNode As XmlNode = xmlDoc.DocumentElement

            'Seleciona o certificado digital e devolve o xml assinado
            If Me.SelecionarCertificado = True Then

                'Define o cabeçalho
                Dim NFeCabecMsg As pNfeAutorizacao3.nfeCabecMsg = New pNfeAutorizacao3.nfeCabecMsg
                With NFeCabecMsg
                    .cUF = "31"
                    .versaoDados = "3.10"
                End With

                'Dados da NFe
                Dim NFeDadosMsg As pNfeAutorizacao3.nfeDadosMsg = New pNfeAutorizacao3.nfeDadosMsg
                NFeDadosMsg.Any = New XmlNode() {xmlDoc}
                NFeDadosMsg.Any(0) = oNode

                'Envia o arquivo .xml (Consome o WS)
                Dim oWS_pNFeAutorizacao3 As pNfeAutorizacao3.NfeAutorizacao = New pNfeAutorizacao3.NfeAutorizacao
                With oWS_pNFeAutorizacao3
                    .Url = "https://nfe.fazenda.mg.gov.br/nfe2/services/NfeAutorizacao.asmx"
                    .nfeCabecMsgValue = NFeCabecMsg
                    .Timeout = 50000
                    .ClientCertificates.Add(Me.X509Cert)
                    .SoapVersion = Web.Services.Protocols.SoapProtocolVersion.Soap12
                    result = New String() {.NfeAutorizacaoLote(NFeDadosMsg).ToString}
                End With
            End If
        End If

        '...aqui eu trataria o retorno (result)
    Catch ex As Exception
        MessageBox.Show("Erro no envio da NFe.", "Gestor .NET" & vbNewLine & ex.ToString, MessageBoxButtons.OK, MessageBoxIcon.Error)
    End Try
End Function
  • Are you sure? Have you found here (http://answall.com/questions/50629/retorno-authorization%C3%A7%C3%A3o-nfe-3-10-mg-c/50720#50720) that the return is an object and not a string? @yelar

  • Yes, the return is 'System.Object()' type, but assuming that everything in . net is an object when I do ". Nfeautorizacaolote(Nfedadosmsg). Tostring" if there was any information it would not be converted to a string object? The problem is that it returns a System.Object() with no values. The return looks like this: result {Lenght=1} (0) "System.Object[]". Could you if possible post or send an email showing how to pick up this return? Sorry, I hope I’m not abusing.

  • Take this example: http://1drv.ms/1EFJESd @yelar

2 answers

1

A way to pick up on string: result(0)(0).OwnerElement.OuterXml , then just convert to XML. In this case it is on the return of Consultingprotocolonfe MG.

0

It seems that you are only having trouble reading the value of this variable.

In my case I did so and get the return.

    Dim result As Object
    result = servidor.consultaCadastro2(cabecalho, dados)

    MsgBox(result(0)(2).OuterXml)

The hardest thing was to find that the MG server was in trouble. What I find absurd.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.