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]Verificar/Limitar tamanho de arquivo/Objeto OLE

    Compartilhe

    natan29
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 17/03/2014

    [Resolvido]Verificar/Limitar tamanho de arquivo/Objeto OLE

    Mensagem  natan29 em Seg 17 Mar 2014, 20:17

    Boa tarde,
    tenho um bd no access e em uma das tabelas eu tenho que anexar arquivos, em sua grande maioria arquivos do office. Porém, como o mdb tem limite máximo de 2gb, queria limitar o tamanho máximo que um arquivo/objeto OLE pode ter. Meu objetivo é impedir que arquivos maiores que 5mb sejam inseridos na tabela .

    Segue abaixo o meu código para inserção de arquivos

    Código:
    Private Sub bt_teste_Click()

    Dim strFilter As String
    Dim strInputFileName As String

    strFilter = ahtAddFilterItem(strFilter, "JPEG Files (*.jpg, *.jpeg)", "*.jpg;*.jpeg")
    strFilter = ahtAddFilterItem(strFilter, "bmp Files (*.bmp)", "*.bmp")
    strFilter = ahtAddFilterItem(strFilter, "all Files (*.*)", "*.*")

    strInputFileName = ahtCommonFileOpenSave( _
                                Filter:=strFilter, _
                                OpenFile:=True, _
                                DialogTitle:="Choose an image file...", _
                                Flags:=ahtOFN_HIDEREADONLY)


    If strInputFileName <> "" Then
       Me.teste.OLETypeAllowed = acOLEEmbedded
       Me.teste.SourceDoc = strInputFileName
       Me.teste.Action = acOLECreateEmbed
      
    End If
    Me.teste.SetFocus

    End Sub


    Algum de vcs pode me ajudar? obrigado

    natan29
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 17/03/2014

    Re: [Resolvido]Verificar/Limitar tamanho de arquivo/Objeto OLE

    Mensagem  natan29 em Qua 19 Mar 2014, 17:31

    Alguém conseguiria me ajudar com esse mistério, que me atormenta ha 1 semana ?

    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8907
    Registrado : 04/11/2009

    Re: [Resolvido]Verificar/Limitar tamanho de arquivo/Objeto OLE

    Mensagem  JPaulo em Qua 19 Mar 2014, 17:44

    Antes de mais, diga-me porque está a utilizar objetos OLE e não usa apenas os caminhos e guarda os ficheiros numa pasta junto do banco ?

    Uma das grandes vantagens é que aumenta a durabilidade do banco.

    Aqui existem inumeros exemplos sobre esse tema, mas se mesmo assim preferir o objeto OLE, vamos tentar chekar o size do ficheiro antes de inserir,


    .................................................................................
    Sucesso e Bons Estudos
    Success and Good Studies

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

    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8907
    Registrado : 04/11/2009

    Re: [Resolvido]Verificar/Limitar tamanho de arquivo/Objeto OLE

    Mensagem  JPaulo em Qua 19 Mar 2014, 18:00

    Pode testar ae...

    If strInputFileName <> "" And Round(FileLen(strInputFileName) / 1024) >= 5000 Then
    MsgBox "Ficheiro é superior a 5 Megas...", vbCritical
    Exit Sub
    Else
    Me.teste.OLETypeAllowed = acOLEEmbedded
    Me.teste.SourceDoc = strInputFileName
    Me.teste.Action = acOLECreateEmbed
    End If



    .................................................................................
    Sucesso e Bons Estudos
    Success and Good Studies

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

    natan29
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 17/03/2014

    Re: [Resolvido]Verificar/Limitar tamanho de arquivo/Objeto OLE

    Mensagem  natan29 em Qua 19 Mar 2014, 19:14

    Jpaulo,
    Primeiramente muito obrigado pela ajuda !

    Bom, preciso usar objeto OLE pois o mdb do Access vai ficar numa rede interna, e será acessado por pessoas diferentes em máquinas diferentes. Nesse caso, usar o caminho para máquina de outro usuário não daria certo, caso estivesse desligada a máquina, por exemplo. Assim, não tive outra solução além dessa.

    Em relação ao código que você me ajudou, toda vez que eu clicava em cancelar, ele dava erro e ia para o depurador. Assim, tive que fazer a seguinte alteração:

    Código:

    If strInputFileName = "" Then
          Exit Sub

       ElseIf Round(FileLen(strInputFileName) / 1024) >= 5000 Then
          MsgBox "Ficheiro é superior a 5 Megas...", vbCritical
          Exit Sub

          Else
              Me.teste.OLETypeAllowed = acOLEEmbedded
              Me.teste.SourceDoc = strInputFileName
              Me.teste.Action = acOLECreateEmbed

    End If

    Novamente, muito obrigado pela grande ajuda!

    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8907
    Registrado : 04/11/2009

    Re: [Resolvido]Verificar/Limitar tamanho de arquivo/Objeto OLE

    Mensagem  JPaulo em Qua 19 Mar 2014, 19:16

    Obrigado pelo retorno o forum agradece.


    .................................................................................
    Sucesso e Bons Estudos
    Success and Good Studies

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

      Data/hora atual: Qui 08 Dez 2016, 23:54