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]Importar a Versão do Arquivo XML

    Compartilhe

    Junior Meireles
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 56
    Registrado : 14/08/2010

    [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  Junior Meireles em Qui 14 Maio 2015, 21:03

    Boa tarde,

    Tenho este código que me importa do arquivo XML estes itens para uma tabela,
    o que preciso é que me importe para a tabela a Versão do Arquivo XML que não estou conseguindo
    importar

    <nfeProc versao="3.10" xmlns="http://www.portalfiscal.inf.br/nfe">


    Exemplo de parte do XML


    Código:
    <?xml version="1.0" encoding="UTF-8" ?>
    <nfeProc versao="3.10" xmlns="http://www.portalfiscal.inf.br/nfe">
    <NFe xmlns="http://www.portalfiscal.inf.br/nfe">
    <infNFe Id="NFe31150418212479000195550010000007131100007117" versao="3.10">
    <ide>
     <cUF>31</cUF>
     <cNF>10000711</cNF>
     <natOp>Venda</natOp>
     <indPag>0</indPag>
     <mod>55</mod>
     <serie>1</serie>
     <nNF>713</nNF>
     <dhEmi>2015-04-30T16:56:00-03:00</dhEmi>
     <dhSaiEnt>2015-04-30T16:56:00-03:00</dhSaiEnt>
     <tpNF>1</tpNF>
     <idDest>1</idDest>
     <cMunFG>3118304</cMunFG>
     <tpImp>1</tpImp>
     <tpEmis>1</tpEmis>
     <cDV>7</cDV>
     <tpAmb>1</tpAmb>
     <finNFe>1</finNFe>
     <indFinal>0</indFinal>
     <indPres>1</indPres>
     <procEmi>0</procEmi>
     <verProc>15.03.03</verProc>
     </ide>
    - <emit>

    o código de Importação é este mas esta meio gambiarrado mas funciona

    Código:
    Private Sub cmdSaidasTotais_Click()
         Dim Pasta As Folder, Ficheiro As file, objFileSys
         Dim xmlDoc As New MSXML2.DOMDocument30
         Dim objNodeList As IXMLDOMNodeList
         'Dim rst As Recordset
         'Dim Dbs As Database
         Dim myErr
         xmlDoc.async = False
        
         Set objFileSys = CreateObject("Scripting.FileSystemObject")
         Set Pasta = objFileSys.GetFolder("D:\ArquivosXMLJIVendas310\")
        
        CurrentDb.Execute "DELETE * FROM tblDados"
        Me.Requery
        
    For Each Ficheiro In Pasta.Files
    'xmlDoc.Load Ficheiro.Name
    xmlDoc.Load Ficheiro.Path
    If (xmlDoc.parseError.errorCode <> 0) Then
    Set myErr = xmlDoc.parseError
    MsgBox ("Ocorreu um erro " & myErr.reason)
    Else
        
        
    'For h = 0 To xmlDoc.getElementsByTagName("prod").length - 1
            
            Set objNodeList = xmlDoc.getElementsByTagName("dhEmi")
            Emissao = Mid(objNodeList.Item(i).Text, 9, 2) & "/" & Mid(objNodeList.Item(i).Text, 6, 2) & "/" & Left(objNodeList.Item(i).Text, 4)
            Me.Competencia = Format(Emissao, "mmm/yyyy")
            
            Set objNodeList = xmlDoc.getElementsByTagName("ide")
            NotaFiscal = objNodeList.Item(i).childNodes(6).Text
            
            'Set objNodeList = xmlDoc.getElementsByTagName("prod")
            'Produtos = objNodeList.Item(h).childNodes(2).Text
            
            'VlrProduto = Nz(Format(Replace(objNodeList.Item(h).childNodes(8).Text, ".", ","), "Standard"))
            'CFOP = objNodeList.Item(h).childNodes(4).Text
        
            Set objNodeList = xmlDoc.getElementsByTagName("ICMSTot")
            VlrProduto = Nz(Format(Replace(objNodeList.Item(i).childNodes(5).Text, ".", ","), "Standard"))
            
        
            Set objNodeList = xmlDoc.getElementsByTagName("ICMSTot")
            VlrDesconto = Nz(Format(Replace(objNodeList.Item(i).childNodes(8).Text, ".", ","), "Standard"))
            
            DoCmd.GoToRecord , "", acNext
    'Next h
      
    End If
    Next
    Me.Requery
    End Sub


    Obrigado a que puder me ajudar

    chsestrem
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 466
    Registrado : 01/03/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  chsestrem em Qui 14 Maio 2015, 23:39


    Boa noite,

    tente algo como getAttributeName:


    Set objNodeList = xmlDoc.getElementsByTagName("nfeProc")

    debug.print objNodeList.getAttributeName("versao")

    Sds,


    .................................................................................
    Charles Sestrem
    [Você precisa estar registrado e conectado para ver este link.]

    Junior Meireles
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 56
    Registrado : 14/08/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  Junior Meireles em Sex 15 Maio 2015, 00:57

    Charles Sestrem, obrigado pela ajuda mas tentei o codigo

    Set objNodeList = xmlDoc.getElementsByTagName("nfeProc")
    Versao = objNodeList.getAttributeName("versao")

    Deu uma mensagem:


    Erro de Compilação:
    Método ou membro de dados não encontrato


    O campo versao é o campo onde seria registrado a versão do arquivo XML no formulario       

    Mas obrigado pela ajuda, se tiver outra saida, agradeço

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3195
    Registrado : 15/03/2013

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  ahteixeira em Sex 15 Maio 2015, 08:27

    Olá a todos.
    Junior, veja se ajuda:
    [Você precisa estar registrado e conectado para ver este link.]
    Abraço

    Junior Meireles
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 56
    Registrado : 14/08/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  Junior Meireles em Sex 15 Maio 2015, 14:09

    Teixeira, obrigado pela sua atenção,
    Olhei os exemplos mas não consegui adaptar
    Precisava de uma linha de comando e não estou conseguindo fazer
    que seria retirar desta tag só a versão do XML que seri 3.10


    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3195
    Registrado : 15/03/2013

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  ahteixeira em Sex 15 Maio 2015, 15:21

    Olá, veja se é o que pretende:

    1º baixe este exemplo: [Você precisa estar registrado e conectado para ver este link.]
    2º altere o código do formuário XML_TESTE por este:
    Código:
    Option Compare Database
    Dim meuFicheiro As String, textoXml As String, textoLinha As String

    Private Sub Comando0_Click()

    meuFicheiro = Application.CurrentProject.Path & "\43140887456562000807550080001925541047421805-procNFe.xml"
        
        
        Open meuFicheiro For Input As #1
            Do Until EOF(1)
                Line Input #1, textoLinha
                 textoXml = textoXml & textoLinha
            Loop
        Close #1

    MsgBox "Campo Pretendido:   " & separaEntreDuasStringsXML(textoXml, "<?xml version='1.0' encoding='UTF-8'?>", "<NFe xmlns=")
    'é só ajustar os delimitadores da busca de inicio e do fim:

    End Sub

    '2014 Alvaro Teixeira
    Function separaEntreDuasStringsXML(strTotal As String, strInicio As String, strFim As String)
    Dim i As Long, j As Long
        i = InStr(strTotal, strInicio)
        j = InStr(strTotal, strFim)
        separaEntreDuasStringsXML = Mid(strTotal, i + Len(strInicio), j - i - Len(strInicio))
    End Function
    Abraço

    Junior Meireles
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 56
    Registrado : 14/08/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  Junior Meireles em Sex 15 Maio 2015, 15:45

    Teixeira obrigado pela sua atenção
    Vou fazer uns teste e dou retorno

    chsestrem
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 466
    Registrado : 01/03/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  chsestrem em Sex 15 Maio 2015, 22:33

    Dá sim amigo,

    Já viu quantas classes pra manipular XML estão disponíveis ?

    O importante é saber qual delas você pode extrair o que pretende.

    Chame esta função na Janela imediata e coloque o caminho completo do xml na NFE entre aspas

    Código:


    Public Function Imp_Versao(End_XML As String)

    Dim xmlDoc      As DOMDocument
    Dim xmlResp      As IXMLDOMNode

      Set xmlDoc = New DOMDocument
     
      xmlDoc.Load (End_XML)
     
    ''### Exibe a versao

      For Each xmlResp In xmlDoc.getElementsByTagName("nfeProc")
        MsgBox xmlResp.Attributes(1).Text
      Next xmlResp
    End Function


    Sds,


    .................................................................................
    Charles Sestrem
    [Você precisa estar registrado e conectado para ver este link.]

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3195
    Registrado : 15/03/2013

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  ahteixeira em Sab 16 Maio 2015, 11:42

    Olá a todos.
    Com o maximoaccess estamos sempre aprender.
    Charles, algum manual ou tutorial em português sobre MSXML Object Library?
    Antecipadamente grato.
    Abraço

    Junior Meireles
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 56
    Registrado : 14/08/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  Junior Meireles em Sab 16 Maio 2015, 15:03

    Amigos, estou tentando anexar o arquivo para analise, mas não estou consegundo.
    Está com problema no forum para anexar arquivos?

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3195
    Registrado : 15/03/2013

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  ahteixeira em Sab 16 Maio 2015, 17:47

    Ola, coloque na dropbox mega ou meocloud.pt e partilhe, depois poste o link.
    Abraço

    Junior Meireles
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 56
    Registrado : 14/08/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  Junior Meireles em Sab 16 Maio 2015, 17:54

    Vou fazer isso aguarde e obrigado

    Junior Meireles
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 56
    Registrado : 14/08/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  Junior Meireles em Dom 17 Maio 2015, 02:50

    Se não conseguirem baixar os arquivos posso enviar para o e-mail de alguém que consiga postar?
    Obrigado

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Junior Meireles
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 56
    Registrado : 14/08/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  Junior Meireles em Dom 17 Maio 2015, 05:14

    Charles Sestrem, consegui o pretendido com a ajuda de seu código.
    Talvez não me expressei bem quanto ao motivo de saber a versão
    da NFe, pois dependendo da versão os nós mudam de lugar e nome, dai
    a necessidade de saber a versão para para colocar um "If" dependendo da versão.

    Ficou assim, se alguem tiver mais alguma ideia

    Código:
    Dim Pasta As Folder, Ficheiro As file, objFileSys
         Dim xmlDoc As New MSXML2.DOMDocument30
         Dim objNodeList As IXMLDOMNodeList
         'Dim rst As Recordset
         'Dim Dbs As Database
         Dim myErr
         xmlDoc.async = False
        
         Dim xmlResp      As IXMLDOMNode

         Set xmlDoc = New DOMDocument
        
        
         Set objFileSys = CreateObject("Scripting.FileSystemObject")
         Set Pasta = objFileSys.GetFolder("C:\ArquivosXMLJIVendas\")
        
        CurrentDb.Execute "DELETE * FROM tblDados"
        Me.Requery
        
    For Each Ficheiro In Pasta.Files
    'xmlDoc.Load Ficheiro.Name
    xmlDoc.Load Ficheiro.Path
    If (xmlDoc.parseError.errorCode <> 0) Then
    Set myErr = xmlDoc.parseError
    MsgBox ("Ocorreu um erro " & myErr.reason)
    Else

            'Verificar a Versão da NFe
            For Each xmlResp In xmlDoc.getElementsByTagName("nfeProc")
            VersaoNF = xmlResp.Attributes(0).Text
            Next xmlResp
            
            Set objNodeList = xmlDoc.getElementsByTagName("ide")
            NotaFiscal = objNodeList.Item(i).childNodes(6).Text
            
            
            If VersaoNF = "2.00" Then
            Set objNodeList = xmlDoc.getElementsByTagName("dEmi")
            Emissao = Mid(objNodeList.Item(i).Text, 9, 2) & "/" & Mid(objNodeList.Item(i).Text, 6, 2) & "/" & Left(objNodeList.Item(i).Text, 4)
            Me.Competencia = Format(Emissao, "mmm/yyyy")
            
            Set objNodeList = xmlDoc.getElementsByTagName("ICMSTot")
            VlrProduto = Nz(Format(Replace(objNodeList.Item(i).childNodes(4).Text, ".", ","), "Standard"))
            
            Set objNodeList = xmlDoc.getElementsByTagName("ICMSTot")
            VlrProduto = Nz(Format(Replace(objNodeList.Item(i).childNodes(4).Text, ".", ","), "Standard"))
      
            Set objNodeList = xmlDoc.getElementsByTagName("ICMSTot")
            VlrDesconto = Nz(Format(Replace(objNodeList.Item(i).childNodes(7).Text, ".", ","), "Standard"))
            
            Else
            Set objNodeList = xmlDoc.getElementsByTagName("dhEmi")
            Emissao = Mid(objNodeList.Item(i).Text, 9, 2) & "/" & Mid(objNodeList.Item(i).Text, 6, 2) & "/" & Left(objNodeList.Item(i).Text, 4)
            Me.Competencia = Format(Emissao, "mmm/yyyy")
            
            Set objNodeList = xmlDoc.getElementsByTagName("ICMSTot")
            VlrProduto = Nz(Format(Replace(objNodeList.Item(i).childNodes(5).Text, ".", ","), "Standard"))
            
            Set objNodeList = xmlDoc.getElementsByTagName("ICMSTot")
            VlrDesconto = Nz(Format(Replace(objNodeList.Item(i).childNodes(8).Text, ".", ","), "Standard"))
            
            Set objNodeList = xmlDoc.getElementsByTagName("ICMSTot")
            VlrProduto = Nz(Format(Replace(objNodeList.Item(i).childNodes(5).Text, ".", ","), "Standard"))
            End If
                    
            
            DoCmd.GoToRecord , "", acNext
    'Next h
      
    End If
    Next
    Me.Requery

    End Sub


    Obrigado a todos que se dispuseram a me ajudar

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3195
    Registrado : 15/03/2013

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  ahteixeira em Dom 17 Maio 2015, 10:52

    Olá Junior, obrigado pelo retorno.
    Ainda bem que resolveu.
    Ficamos aguardar opinião do colega Charles Sestrem.
    Abraço

    chsestrem
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 466
    Registrado : 01/03/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  chsestrem em Ter 19 Maio 2015, 13:14

    Bom dia Alvaro,

    Uma boa documentação que pode ser estudada é do MSDN mesmo.

    Usando o tradutor, dá pra ter uma idéia dos componentes.

    Dê uma olhada neste link.

    MSDN

    Sds,


    .................................................................................
    Charles Sestrem
    [Você precisa estar registrado e conectado para ver este link.]

    chsestrem
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 466
    Registrado : 01/03/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  chsestrem em Ter 19 Maio 2015, 13:55

    Junior,


    Segue exemplo de uma função bem enxuta para estudos

    que captura algumas informações do XML da NFe.

    Ela já trata as tags que mudam da versão 2.00 para 3.10

    Não foram muitas tags que mudaram, isso vai depender de quantas informações você

    vai precisar tirar.

    Cole a função em um módulo e atribua o caminho de um arquivo XML.

    A função valida se o XML é de NFe mesmo. Se for CTe ou outro ela não vai importar.

    '### Alteração em 18/05/2015a s 14:14

    '### Declarar a variável ValidaNfe como Booleana

    Public ValidaNfe As Boolean

    ''''''''''''''''''''''''''''''''''''''

    Código:


    Public Function Imp_XML(End_XML As String) As String


    On Error GoTo Err_XML

    '#### ATRIBUIR COMO VERDADEIRO A VALIDAÇÃO DO XML

    ValidaNfe = True

    '###VARIAVEIS DO XML ####
        
    Dim xmlDoc       As DOMDocument
    Dim xmlResp      As IXMLDOMNode

    '### VARIÁVEIS DO BLOCO IDE

    Dim ReqNroFatura, ReqMesAno, ReqDataEmissao

    '### VARIÁVEIS DO BLOCO EMITENTE

    Dim ReqEmit, ReqCNPJEmit

    '### VARIÁVEIS DO BLOCO DESTINATÁRIO

    Dim ReqDest, ReqCNPJDest

    '### VARIÁVELS DO TOTAL DA NOTA

    Dim ReqTotalNota

    '### VARIÁVEL CHAVE DA NOTA

    Dim ReqInfChave

       Set xmlDoc = New DOMDocument
      
       xmlDoc.Load (End_XML)
      
       For Each xmlResp In xmlDoc.getElementsByTagName("ide")
      
         'Verificar se o XML é Nfe
         If xmlResp.SelectNodes("nNF").Length = 0 Then
           ValidaNfe = False
           Exit Function
         End If
        
         ReqNroFatura = xmlResp.SelectNodes("nNF")(0).Text
        
         'Dependendo da versao o nó pode ser 'dhEmi' ou 'dhEmi'
         If xmlResp.SelectNodes("dEmi").Length > 0 Then
           ReqMesAno = Format(xmlResp.SelectNodes("dEmi")(0).Text, "mm/yyyy")
           ReqDataEmissao = Format(xmlResp.SelectNodes("dEmi")(0).Text, "dd/mm/yyyy")
         ElseIf xmlResp.SelectNodes("dhEmi").Length > 0 Then
           ReqMesAno = Format(Left$(xmlResp.SelectNodes("dhEmi")(0).Text, InStr(xmlResp.SelectNodes("dhEmi")(0).Text, "T") - 1), "mm/yyyy")
           ReqDataEmissao = Format(Left$(xmlResp.SelectNodes("dhEmi")(0).Text, InStr(xmlResp.SelectNodes("dhEmi")(0).Text, "T") - 1), "dd/mm/yyyy")
         End If
       Next xmlResp
      
    '### DADOS EMITENTE

       For Each xmlResp In xmlDoc.getElementsByTagName("emit")
         ReqEmit = xmlResp.SelectNodes("xNome")(0).Text
         ReqCNPJEmit = Format(xmlResp.SelectNodes("CNPJ")(0).Text, "00\.000\.000\/0000\-00")
       Next xmlResp
      
    '### DADOS DESTINATÁRIO

       For Each xmlResp In xmlDoc.getElementsByTagName("dest")
         ReqDest = xmlResp.SelectNodes("xNome")(0).Text
         ReqCNPJDest = Format(xmlResp.SelectNodes("CNPJ")(0).Text, "00\.000\.000\/0000\-00")
       Next xmlResp
      
    '### VALOR TOTAL DA NOTA

       For Each xmlResp In xmlDoc.getElementsByTagName("ICMSTot")
         If xmlResp.SelectNodes("vNF").Length > 0 Then
           ReqTotalNota = Replace(xmlResp.SelectNodes("vNF")(0).Text, ".", ",")
         End If
       Next xmlResp

    '### CHAVE DA NOTA

       For Each xmlResp In xmlDoc.getElementsByTagName("infProt")
         If xmlResp.SelectNodes("chNFe").Length > 0 Then
           ReqInfChave = xmlResp.SelectNodes("chNFe")(0).Text
         End If
       Next xmlResp
      
       Set xmlDoc = Nothing
      
      If ReqNroFatura = "" Then
      
      MsgBox "Erro na formatação do XML do arquivo em : " & vbCrLf & _
      Chr(34) & End_XML & Chr(34), vbInformation, gstrNomSis
        
      ValidaNfe = False
      
      Else
      
      Imp_XML = ReqNroFatura & "|" & ReqMesAno & "|" & ReqDataEmissao & "|" & _
      ReqEmit & "|" & ReqCNPJEmit & "|" & ReqDest & "|" & ReqCNPJDest & "|" & ReqTotalNota & "|" & ReqInfChave
      
      MsgBox Imp_XML
      
      End If
      
    Err_XML:
      If Err.Number <> 0 Then
        MsgBox Err.Number & " - " & Err.Description, vbInformation, gstrNomSis
      End If
      
    End Function



    Última edição por chsestrem em Ter 19 Maio 2015, 18:15, editado 1 vez(es)


    .................................................................................
    Charles Sestrem
    [Você precisa estar registrado e conectado para ver este link.]

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3195
    Registrado : 15/03/2013

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  ahteixeira em Ter 19 Maio 2015, 15:22

    Boa tarde Charles,
    Obrigado pela dica e partilha.
    Abraço cheers

    Junior Meireles
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 56
    Registrado : 14/08/2010

    Re: [Resolvido]Importar a Versão do Arquivo XML

    Mensagem  Junior Meireles em Ter 19 Maio 2015, 18:06

    Obrigado Charles, vou adaptar em meu projeto

      Data/hora atual: Sab 03 Dez 2016, 04:38