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]Alterar SQL via VBA com multiplas condições (OR)

    Compartilhe

    Josué Carvalho
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 06/10/2015

    [Resolvido]Alterar SQL via VBA com multiplas condições (OR)

    Mensagem  Josué Carvalho em Qua 07 Out 2015, 20:16

    Tenho uma combobox ligada ao campo "Facility".
    Há variáveis públicas que armazenam o perfil do usuário. São elas UsuarioMaster, UsuarioAcesso1, Usuarioacesso2.
    Um usuário "Master" pode ter acesso a toda a lista. Caso contrário, terá acesso apenas à informação de duas filiais (facility) que estão armazenados nas variáveis mencionadas acima.

    No evento Ao carregar (Form Load) inseri as seguintes linhas:
    Código:

    If UsuarioMaster Then
        vSQL = "SELECT Tab_Facility.Facility, Tab_Facility.Nome FROM Tab_Facility ORDER BY Tab_Facility.Nome;"
    Else
        vSQL = "SELECT Tab_Facility.Facility, Tab_Facility.Nome FROM Tab_Facility "
        vSQL = vSQL & "WHERE (((Tab_Facility.Facility) = ('" & UsuarioAcesso1 & "')) Or (((Tab_Facility.Facility) = ('" & UsuarioAcesso2 & "')) "
        vSQL = vSQL & "ORDER BY Tab_Facility.Nome;"
    End If
    Me.Facility.RowSource = vSQL

    Entretanto, na execução do formulário, na combobox mencionada, um erro aponta para a falta de operador.
    O que está errado? Alguém pode me ajudar?

    Marcelo David
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2287
    Registrado : 21/04/2011

    Re: [Resolvido]Alterar SQL via VBA com multiplas condições (OR)

    Mensagem  Marcelo David em Qua 07 Out 2015, 21:40

    Ponha um breakpoint na linha: Me.Facility.RowSource = vSQL

    Na janela de verificação imediata, poste a SQL gerada do da
    variável vSQL para analisarmos...


    .................................................................................
    Marcelo David
    [Você precisa estar registrado e conectado para ver este link.] (em construção)

    Josué Carvalho
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 06/10/2015

    Linha de SQL gerada.

    Mensagem  Josué Carvalho em Qui 08 Out 2015, 03:57

    Esta é a sql gerada:

    Código:

    SELECT Tab_Facility.Facility, Tab_Facility.Nome FROM Tab_Facility WHERE (((Tab_Facility.Facility) = ('R0028502')) Or (((Tab_Facility.Facility) = ('R0028609')) ORDER BY Tab_Facility.Nome;

    Marcelo David
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2287
    Registrado : 21/04/2011

    Re: [Resolvido]Alterar SQL via VBA com multiplas condições (OR)

    Mensagem  Marcelo David em Qui 08 Out 2015, 05:13

    O nome do campo "Tab_Facility.Nome" mude para outro, pois "Nome" é uma palavra reservada do Access. Teste.

    Outra sugestão é ao invés de usar Or, usar IN...

    Caso não resolva, poste seu aplicativo com as partes envolventes aqui para darmos uma olhada...

    No aguardo.


    .................................................................................
    Marcelo David
    [Você precisa estar registrado e conectado para ver este link.] (em construção)

    Josué Carvalho
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 38
    Registrado : 06/10/2015

    Re: [Resolvido]Alterar SQL via VBA com multiplas condições (OR)

    Mensagem  Josué Carvalho em Qui 08 Out 2015, 13:22

    Utilizei o IN e funcionou! Obrigado.
    Não foi preciso alterar o campo Nome.

    Marcelo David
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2287
    Registrado : 21/04/2011

    Re: [Resolvido]Alterar SQL via VBA com multiplas condições (OR)

    Mensagem  Marcelo David em Qui 08 Out 2015, 15:28

    Grato pelo retorno!


    .................................................................................
    Marcelo David
    [Você precisa estar registrado e conectado para ver este link.] (em construção)

      Data/hora atual: Sab 10 Dez 2016, 04:58