MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]ajuda para importa xml nota fiscal eletronica duplicata

    Compartilhe

    lctenca
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 13/11/2013

    [Resolvido]ajuda para importa xml nota fiscal eletronica duplicata

    Mensagem  lctenca em Qua 03 Jun 2015, 05:32

    PRECISO IMPORTA DUPLICATA NOTA FISCAL ELETRÔNICA

    EXEMPLO SÓ CONSIGO IMPORTA A PRIMEIRA LINHA


    580221-01  03/10/2014 1319,63


    Última edição por lctenca em Sex 05 Jun 2015, 06:10, editado 4 vez(es)

    NADIRONUNES
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 408
    Registrado : 30/08/2010

    Re: [Resolvido]ajuda para importa xml nota fiscal eletronica duplicata

    Mensagem  NADIRONUNES em Qua 03 Jun 2015, 12:30

    esse codigo do seu exemplo acho que foi um que postei, mas consegui resolver com outro


    Private Sub dupllic()
    Me.Caption = "Importando Duplicatas da Nota Fiscal Eletronica"
    Me.msg = "Importando Duplicatas da Nota Fiscal Eletronica"
    Dim cdados As String
    cdados = arquivo
    Open cdados For Input As #2
    Do Until EOF(2)
    Line Input #2, textoLinha
    textoXml = textoXml & textoLinha
    Loop

    Dim I As Long, j As Long, l As Long, m As Long, N As Long, P As Long
    Dim strInico, strFim, strSaida, strInicod, strFimd, strSaidad, strInicov, strFimv, strSaidav As String
    Dim tf, Contador As Integer
    EscreveLog ("Foram adicionados as seguintes Duplicatas : ")
    strInicio = ""
    strFim = "
    "
    strIniciod = ""
    strFimd = "
    "
    strIniciov = ""
    strFimv = "
    "

    I = 1
    j = 1
    l = 1
    m = 1
    N = 1
    P = 1
    tf = InStrRev(textoXml, strInicio)
    Contador = 0
    calc:
    I = InStr(I, textoXml, strInicio)
    j = InStr(j, textoXml, strFim)
    l = InStr(l, textoXml, strIniciod)
    m = InStr(m, textoXml, strFimd)
    N = InStr(N, textoXml, strIniciov)
    P = InStr(P, textoXml, strFimv)



    strSaida = Mid(textoXml, I + Len(strInicio), j - I - Len(strInicio))
    strSaidad = Mid(textoXml, l + Len(strIniciod), m - l - Len(strIniciod))
    strSaidav = Mid(textoXml, N + Len(strIniciov), P - N - Len(strIniciov))
    Me!numdup = strSaida
    Me!datadup = strSaidad
    Me!valordup = Replace((strSaidav), ".", ",")
    I = I + 1
    j = j + 1
    l = l + 1
    m = m + 1
    N = N + 1
    P = P + 1
    st = Contador + 1
    Contador = Contador + 1
    EscreveLog ([numdup] & " - " & Format(datadup, "dd-mm-yyyy") & " - " & valordup)
    Call DD
    If I <> tf + 1 Then
    GoTo calc
    End If

    Close #2
    End Sub
    --------------------------------------
    Private Function DD()
    Dim sf As Byte
    ServerIp = DLookup("[Path_0]", "tblCaminhoBe")
    dadosarquivo = AbreXML(arquivo)
    N = BUSCANO(BUSCANO(dadosarquivo, "ide"), "nNF")
    Dim ws As DAO.Workspace
    Dim RS, rst As DAO.Recordset
    Set ws = DBEngine.Workspaces(0)
    Set Db = ws.OpenDatabase(ServerIp, False, False, "MS Access;PWD=senha")
    StrSql = "select * from Duplicatas;"
    Set RS = Db.OpenRecordset(StrSql)
    RS.AddNew
    RS!NNOTA = Me.num
    RS!Duplicata = Format(numdup, "000000-0")
    RS!Codemp = st & "/" & Me.dupic
    RS!Histórico = Me.emitente
    RS!DtCadastro = Date
    RS!DtMovimento = Format([datadup], "DD/MM/YYYY")
    RS!vlr = valordup
    RS!VlrP = "0,00"
    RS!pago = "N"
    RS!DC = "D"
    RS.Update

    End Function

    lctenca
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 13/11/2013

    Re: [Resolvido]ajuda para importa xml nota fiscal eletronica duplicata

    Mensagem  lctenca em Qui 04 Jun 2015, 23:16

    infelizmente não deu certo

    Tiago123
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1
    Registrado : 31/05/2012

    Importando dados duplicata nfe

    Mensagem  Tiago123 em Qui 18 Jun 2015, 00:28

    Ola, resolvi esse problema mais ou menos assim.
    Espero ajudar....

    Sub CaptarDadosDupl()

    Dim RS As Recordset
    Set RS = CurrentDb.OpenRecordset("select * from Detalhes_dupl")
    Dim D2 As Date
    Dim Cont As Integer
    strCaminhoXML = Me.DiretorioXml

    If Trim$(strCaminhoXML) = vbNullString Then
    Exit Sub
    End If

    Dim oChild As IXMLDOMElement
    Dim oNode As IXMLDOMNode
    Dim oChild3 As IXMLDOMNode
    Dim oChild2 As IXMLDOMNode
    Dim oChild4 As IXMLDOMNode

    Set XML = New DOMDocument
    XML.async = False

    If XML.Load(strCaminhoXML) Then

    For Each oNode In XML.childNodes
    For Each oChild1 In oNode.childNodes
    If UCase(oChild1.nodeName) = "NFe" Then
    For Each oChild2 In oChild1.childNodes
    If UCase(oChild2.nodeName) = "infNFe" Then
    For Each oChild3 In oChild2.childNodes
    If UCase(oChild3.nodeName) = "cobr" Then
    For Each oChild In oChild3.childNodes
    If UCase(oChild.nodeName) = "dup" Then
    For Each oChild4 In oChild.childNodes
    If oChild4.nodeName = "nDup" Then
    nDup = oChild4.Text
    End If
    If oChild4.nodeName = "dVenc" Then
    dVenc = oChild4.Text
    End If
    If oChild4.nodeName = "vDup" Then
    vDup = oChild4.Text
    End If
    Next
    RS.AddNew
    Cont = Cont + 1
    RS("id") = Cont
    RS("id_dupl") = nDup
    RS("Venc_dupl") = dVenc
    RS("vlr_dupl") = Format(Replace(vDup, ".", ","), "Standard")
    RS.Update
    End If
    Next
    End If
    Next
    End If
    Next
    End If
    Next
    Next
    Else
    MsgBox "Não foi possível abrir o arquivo XML da NFe especificada para Leitura.", vbCritical, "Erro."
    End If
    End Sub

      Data/hora atual: Dom 04 Dez 2016, 01:57