MaximoAccess

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

Obrigado

Administração do MaximoAccess

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


    [Resolvido]Sql no VBA não acha o registro

    avatar
    Ruiborges
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 85
    Registrado : 17/06/2011

    [Resolvido]Sql no VBA não acha o registro Empty [Resolvido]Sql no VBA não acha o registro

    Mensagem  Ruiborges em 26/6/2019, 19:55

    Prezados, tenho uma consulta em sql que não retorna o registro. Todos os campos são string.

    "SELECT * FROM TblObsrelacaoMisturas where diagnostico= """ & TxtCodimuno & """" & " and concentracao= """ & TxtCodilui & """" & " and volume= """ & TxtCodvol & """" & " and itens like " & "'" & "*" & NumeroItens & "*" & "'" & " and porcento= """ & ComPorcentagem & """"

    Segue resultado da janela imediata:
    SELECT * FROM TblObsrelacaoMisturas where diagnostico= "AP5" and concentracao= "y1" and volume= "5" and itens like '*2*' and porcento= ""

    Dá certo até o campo itens. O que estou errando?
    Obrigado


    .................................................................................
    Borges
    ronaldojr1
    ronaldojr1
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 418
    Registrado : 01/08/2011

    [Resolvido]Sql no VBA não acha o registro Empty Re: [Resolvido]Sql no VBA não acha o registro

    Mensagem  ronaldojr1 em 26/6/2019, 21:10

    boa tarde,
    arrumei apenas a construção da consulta, nao sei se sua logica esta correta.

    segue:
    "SELECT * FROM TblObsrelacaoMisturas where diagnostico= '" & TxtCodimuno & "' and concentracao= '" & TxtCodilui & "' and volume= '" & TxtCodvol & "' and itens like '*' and NumeroItens like '*' and porcento= '" & ComPorcentagem & "'"
    avatar
    renpv
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 182
    Registrado : 12/01/2015

    [Resolvido]Sql no VBA não acha o registro Empty Re: [Resolvido]Sql no VBA não acha o registro

    Mensagem  renpv em 26/6/2019, 23:44

    Ruiborges escreveu:SELECT * FROM TblObsrelacaoMisturas where diagnostico= "AP5" and concentracao= "y1" and volume= "5" and itens like '*2*' and porcento= ""
    Cria uma consulta com esse SQL e veja se retorna alguma coisa
    avatar
    Ruiborges
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 85
    Registrado : 17/06/2011

    [Resolvido]Sql no VBA não acha o registro Empty Re: [Resolvido]Sql no VBA não acha o registro

    Mensagem  Ruiborges em 28/6/2019, 16:27

    Segui as duas sugestões e vi que o problema é que na tabela o campo [porcento] quando não tem informação é "Null" aí ,
    porcento= "" ou porcento='' não retorna nenhum resultado.
    Tentei: { and (porcento= """ & ComPorcentagem & """ or porcento is null) } mas não deu certo também.


    .................................................................................
    Borges
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 819
    Registrado : 13/12/2016

    [Resolvido]Sql no VBA não acha o registro Empty Re: [Resolvido]Sql no VBA não acha o registro

    Mensagem  Alexandre Fim em 28/6/2019, 16:50

    Olá Rui Borges,

    Procure "quebrar" o select em várias linhas, concatenando-as.
    Coloquei uma condição onde verifica se o valor é NULL.
    Segue:
    Código:

    Dim sSQL As String

    sSQL = "SELECT FROM TblObsrelacaoMisturas "
    sSQL = sSQL & " WHERE diagnostico= '" & Trim(TxtCodimuno) & "' "
    sSQL = sSQL & " AND concentracao= '" & Trim(TxtCodilui) & "' "
    sSQL = sSQL & " AND volume= '" & Trim(TxtCodvol) & "' "
    sSQL = sSQL & " AND itens LIKE '*' "
    sSQL = sSQL & " AND NumeroItens LIKE '*' "
    sSQL = sSQL & " AND porcento= " & IIf(IsNull(ComPorcentagem), "NULL", ComPorcentagem) & ""



    Boa sorte
    avatar
    Ruiborges
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 85
    Registrado : 17/06/2011

    [Resolvido]Sql no VBA não acha o registro Empty Re: [Resolvido]Sql no VBA não acha o registro

    Mensagem  Ruiborges em 1/7/2019, 20:14

    Obrigado pela colaboração de todos. O meu código ficou assim:
    strSQL = "SELECT * FROM TblObsrelacaoMisturas"
    strSQL = strSQL & " WHERE diagnostico= """ & Trim(TxtCodimuno) & """"
    strSQL = strSQL & " AND concentracao= """ & Trim(TxtCodilui) & """"
    strSQL = strSQL & " AND volume= """ & Trim(TxtCodvol) & """"
    strSQL = strSQL & " AND itens LIKE '*" & NumeroItens & "*'"
    strSQL = strSQL & " AND (porcento " & IIf(ComPorcentagem = "", "is Null" & " or porcento="""")", "=""" & ComPorcentagem & """)")

    Muito obrigado


    .................................................................................
    Borges

    Conteúdo patrocinado

    [Resolvido]Sql no VBA não acha o registro Empty Re: [Resolvido]Sql no VBA não acha o registro

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 16/9/2019, 01:51