MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


2 participantes

    [Resolvido]Anexa foto - Alteração de nome do documento anexo

    paulodaeira
    paulodaeira
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 83
    Registrado : 02/10/2012

    [Resolvido]Anexa foto - Alteração de nome do documento anexo Empty [Resolvido]Anexa foto - Alteração de nome do documento anexo

    Mensagem  paulodaeira 25/1/2016, 09:53

    Olá a todos

    Tendo como base o documento anexo no exemplo do link Forum redeaccess "João Terra.zip", no formulário "FormEvolucaoObra_Picture", supondo que o utilizador elimina a foto da pasta por engano e de seguida usa o botão "Excluir foto" do formulário, este irá dar erro de visual basic, visto que a foto já não existe.
    Como coloco a aparecer uma mensagem tipo "A foto já não existe" por exemplo

    outra duvida que tenho é:
    Será possível que ao "inserir Foto" o programa ao copiar a foto para a pasta correspondente, lhe altere o nome para um igual ao "ID" da tabela?

    O código usado é:

    (Inserir foto)
    Código:
    Private Sub btInserirFoto_Click()
    Dim strLocalFoto$, strNomeFoto$, strPastaOrigem$, strPastaDestino$
    If Me.NewRecord Then DoCmd.RunCommand acCmdSaveRecord
    strLocalFoto = fncLocalizarArquivo
    If strLocalFoto = "" Then Exit Sub
    strNomeFoto = Mid(strLocalFoto, InStrRev(strLocalFoto, "\") + 1)
    CurrentDb.Execute "UPDATE tabEvolucaoObra SET NomeFoto= '" & strNomeFoto & "' WHERE código = " & Me!Código & ";"
    strPastaOrigem = Mid(strLocalFoto, 1, InStrRev(strLocalFoto, "\"))
    strPastaDestino = CurrentProject.Path & "\Fotos\"
    If strPastaOrigem <> strPastaDestino Then
        FileSystem.FileCopy strLocalFoto, strPastaDestino & strNomeFoto
    End If
    CurrentDb.Execute "UPDATE tabEvolucaoObra SET LocalPastaObra = '" & strPastaOrigem & "' WHERE código = " & Me!Código & ";"
    Me.Repaint
    End Sub

    (Eliminar foto)
    Código:
    Private Sub btExcluir_Click()
    If IsNull(Me!NomeFoto) Then Exit Sub
    If MsgBox("Deseja excluir a foto ?", vbQuestion + vbYesNo, "Confirmação") = vbNo Then Exit Sub
    FileSystem.Kill CurrentProject.Path & "\fotos\" & Me!NomeFoto
    Me!NomeFoto = Null
    Me!LocalPastaObra = Null
    DoCmd.RunCommand acCmdSaveRecord
    Call Form_Current
    End Sub

    Obrigado
    Paulo Delgado
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Anexa foto - Alteração de nome do documento anexo Empty Re: [Resolvido]Anexa foto - Alteração de nome do documento anexo

    Mensagem  Alvaro Teixeira 25/1/2016, 14:08

    Olá Paulo Delgado, na instrução abaixo é onde faz a cópia

    FileSystem.FileCopy strLocalFoto, strPastaDestino & strNomeFoto

    o strNomeFoto deve ser alterado par ao que pretende (ID), talvez ficando assim:

    FileSystem.FileCopy strLocalFoto, strPastaDestino & Me!Código

    Abraço
    paulodaeira
    paulodaeira
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 83
    Registrado : 02/10/2012

    [Resolvido]Anexa foto - Alteração de nome do documento anexo Empty Re: [Resolvido]Anexa foto - Alteração de nome do documento anexo

    Mensagem  paulodaeira 26/1/2016, 00:04

    Obrigado pela ajuda ahteixeira

    a 2ª duvida está resolvida

    quanto à primeira, no botão "btExcluir" o que tenho de acrescentar ao código?

    cumprimentos
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Anexa foto - Alteração de nome do documento anexo Empty Re: [Resolvido]Anexa foto - Alteração de nome do documento anexo

    Mensagem  Alvaro Teixeira 26/1/2016, 08:32

    Olá, na minha opinião tem duas soluções:

    A) Antes de eliminar verifica se existe:

    B) verifica o código do erro ao eliminar quando não existe, e faz um tratamento de erros.

    Abraço
    paulodaeira
    paulodaeira
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 83
    Registrado : 02/10/2012

    [Resolvido]Anexa foto - Alteração de nome do documento anexo Empty Re: [Resolvido]Anexa foto - Alteração de nome do documento anexo

    Mensagem  paulodaeira 26/1/2016, 10:19

    olá mais uma vez

    visto que ainda não estou muito à vontade no VBA, e não fazer ideia como resolver o problema, solicito a Vossa ajuda

    Código:
    Private Sub btExcluir_Click()
    If IsNull(Me!NomeFoto) Then Exit Sub
    If MsgBox("Deseja excluir a foto ?", vbQuestion + vbYesNo, "Confirmação") = vbNo Then Exit Sub
    FileSystem.Kill CurrentProject.Path & "\fotos\" & Me!NomeFoto
    Me!NomeFoto = Null
    Me!LocalPastaObra = Null
    DoCmd.RunCommand acCmdSaveRecord
    Call Form_Current
    End Sub

    o que tenho de acrescentar para me dar erro do tipo "O documento já não existe" por exemplo

    Cumprimentos
    Paulo Delgado
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Anexa foto - Alteração de nome do documento anexo Empty Re: [Resolvido]Anexa foto - Alteração de nome do documento anexo

    Mensagem  Alvaro Teixeira 26/1/2016, 15:27

    Olá Paulo Delgado,
    No seu código onde tem:
    Código:
    FileSystem.Kill CurrentProject.Path & "\fotos\" & Me!NomeFoto

    Alrere por:
    Código:
    '==========================================
    'ahteixeira - 2016 para MaximoAccess
    '1º Verifica se existe o caminho (pasta)
    '2º Caso exista, verifica se existe ficheiro
    '3º Neste exemplo apaga o ficheiro.
    '==========================================

    '--------------------------
    'verifica se existe a pasta
    If Len(Dir(CurrentProject.Path & "\fotos\" & "", vbDirectory)) = 0 Then
        '------------------------------
        'informa que nao existe caminho
        MsgBox "Não existe o caminho configurado.", vbInformation, ""
    Else
        '-----------------------------
        'verifica se existe o ficheiro
        If Len(Dir(CurrentProject.Path & "\fotos\" & Me!NomeFoto & "")) = 0 Then
            '-------------------------------
            'informa que nao existe ficheiro
            MsgBox "Não existe o ficheiro.", vbInformation, ""
        Else
            '----------------
            'apaga o ficheiro
            FileSystem.Kill CurrentProject.Path & "\fotos\" & Me!NomeFoto
        End If
    End If
    '==========================================

    Para quem pretende verificar se existe o ficheiro ou pasta, vejam esta função do Grande MVP de Access Allen Browne.

    Abraço
    paulodaeira
    paulodaeira
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 83
    Registrado : 02/10/2012

    [Resolvido]Anexa foto - Alteração de nome do documento anexo Empty Re: [Resolvido]Anexa foto - Alteração de nome do documento anexo

    Mensagem  paulodaeira 27/1/2016, 22:53

    Muito obrigado pela ajuda

    Funcionou na perfeição era mesmo o que queria

    Cumprimentos
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Anexa foto - Alteração de nome do documento anexo Empty Re: [Resolvido]Anexa foto - Alteração de nome do documento anexo

    Mensagem  Alvaro Teixeira 28/1/2016, 08:22

    Olá Paulo, obrigado pelo retorno.
    Os utilizadores do fórum agradecem.
    Abraço

    Conteúdo patrocinado


    [Resolvido]Anexa foto - Alteração de nome do documento anexo Empty Re: [Resolvido]Anexa foto - Alteração de nome do documento anexo

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 8/11/2024, 03:43