SELECT 3 ITENS BD
Pessoal preciso de fazer um select no access que a ele ta funcionando assim hoje
SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Ped WHERE Prod LIKE [ô]%[Ô] & Co4 & [Ô]%[ô] AND Clie LIKE [ô]%[Ô] & Co3 & [Ô]%[ô] [ô] order by id[Ô]
Eu preciso que ele filtre mais um txtbox TIPO ESSA LINHA ABAIXO
SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Ped WHERE Prod LIKE [ô]%[Ô] & Co4 & [Ô]%[ô] AND Clie LIKE [ô]%[Ô] & Co3 & [Ô]%[ô] [ô] AND ORÇ LIKE [ô]%[Ô] & Co5 & [Ô]%[ô] [ô] order by id[Ô]
MAS COM UM 3 AND NA SELECT ELE NÃO TA TRAZENDO OS RESULTADOS CERTOS
COMO QUE EU COLOCARIA NESSA SELECT A COMPARAÇÃO DE UM TERCEIRO ITEM
Poste um SELECT com os VALORES que está passando para o banco no ato da pesquisa.
Além disso, poste também um PRINTSCREEN dos registros que tem na TABELA atualmente.
Além disso, poste também um PRINTSCREEN dos registros que tem na TABELA atualmente.
ok
vou preparar e jaja envio.
vou preparar e jaja envio.
NESSA TELA DE PESQUISA EU COLOCO O CLIENTE E O PRODUTO E NO CODIGO COM A SELECT EU COLOCO QUE é PRA ELE PESQUISAR EM EM UM TXT.VISIBLE = FALSE QUE TEM UM * JA FIXADO NELE .
============================ MODELO DO CODIGO ===========================================
cone.CursorLocation = adUseClient
cone.Open strConnString
[ô]carregando o recordset com campos desejados da tabela
With cmd
.ActiveConnection = cone
.CommandType = adCmdText
.CommandText = [Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] AND Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô] AND Pedidos LIKE [ô]%[Ô] & txtPedido & [Ô]%[ô] order by Codigo[Ô]
Set rsLider = .Execute
[ô]
End With
[ô]carregando o Mshflex com o recordset
With rsLider
Set MSHFlexGrid1.DataSource = rsLider
[ô] .ShowLegend = False
End With
[ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô] GRID2 VENDIDOS [ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô]
[ô]carregando o recordset com campos desejados da tabela
With cmd
.ActiveConnection = cone
.CommandType = adCmdText
.CommandText = [Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] OR Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô] AND Orçamento LIKE [ô]%[Ô] & txtOrçamento & [Ô]%[ô] order by Codigo[Ô]
Set rsLider1 = .Execute
[ô]
End With
[ô]carregando o Mshflex com o recordset
With rsLider1
Set MSHFlexGrid2.DataSource = rsLider1
[ô] .ShowLegend = False
End With
sub_Ajuda_Grid
========================== FIM =========================================
SE EU COLOCO PARA FILTRAR SOMENTE COM O CLINTE E O PRODUTO ELE RETORNA EXATO .
QUANDO COLOCO + UM AND PARA FILTRAR O TXTORÇAMENTO OU TXTPEDIDO ELE NÃO TRAZ SOMENTE O QUE é FILTRADO
CLIENTE + PRODUTO + PEDIDO
CLIENTE + PRODUTO + ORÇAMENTO
COMO MOSTRA NA IMAGEM ELE TRAZ VALORES QUE NÃO SÃO DA PESQUISA POIS O QUE ELE TEM QUE TRAZER é
LINHA DA TABELA COM CLINTE - PRODUTO E PEDIDO QUE TENHA *
ELE TA TRAZENDO OS QUE NÃO TEM O * HAHAHAAA [S80]
BOM NÃO SEI SE DEU PARA INTENDER A IDEIA, RESUMINDO EU QUERIA ACREENTAR NESSA SEECT PRA ELE BUSCAR JUNTO COM O CLIENTE + PRODUTO O CAMPO PEDIDO QUE ESTEJA COM VALOR DE * NO GRID1 E NO GRID 2 ORÇAMENTO QUE TENHA O VALOR * .O QUE TA EM BRANCO ELE NÃO TRAZ
============================ MODELO DO CODIGO ===========================================
cone.CursorLocation = adUseClient
cone.Open strConnString
[ô]carregando o recordset com campos desejados da tabela
With cmd
.ActiveConnection = cone
.CommandType = adCmdText
.CommandText = [Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] AND Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô] AND Pedidos LIKE [ô]%[Ô] & txtPedido & [Ô]%[ô] order by Codigo[Ô]
Set rsLider = .Execute
[ô]
End With
[ô]carregando o Mshflex com o recordset
With rsLider
Set MSHFlexGrid1.DataSource = rsLider
[ô] .ShowLegend = False
End With
[ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô] GRID2 VENDIDOS [ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô][ô]
[ô]carregando o recordset com campos desejados da tabela
With cmd
.ActiveConnection = cone
.CommandType = adCmdText
.CommandText = [Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] OR Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô] AND Orçamento LIKE [ô]%[Ô] & txtOrçamento & [Ô]%[ô] order by Codigo[Ô]
Set rsLider1 = .Execute
[ô]
End With
[ô]carregando o Mshflex com o recordset
With rsLider1
Set MSHFlexGrid2.DataSource = rsLider1
[ô] .ShowLegend = False
End With
sub_Ajuda_Grid
========================== FIM =========================================
SE EU COLOCO PARA FILTRAR SOMENTE COM O CLINTE E O PRODUTO ELE RETORNA EXATO .
QUANDO COLOCO + UM AND PARA FILTRAR O TXTORÇAMENTO OU TXTPEDIDO ELE NÃO TRAZ SOMENTE O QUE é FILTRADO
CLIENTE + PRODUTO + PEDIDO
CLIENTE + PRODUTO + ORÇAMENTO
COMO MOSTRA NA IMAGEM ELE TRAZ VALORES QUE NÃO SÃO DA PESQUISA POIS O QUE ELE TEM QUE TRAZER é
LINHA DA TABELA COM CLINTE - PRODUTO E PEDIDO QUE TENHA *
ELE TA TRAZENDO OS QUE NÃO TEM O * HAHAHAAA [S80]
BOM NÃO SEI SE DEU PARA INTENDER A IDEIA, RESUMINDO EU QUERIA ACREENTAR NESSA SEECT PRA ELE BUSCAR JUNTO COM O CLIENTE + PRODUTO O CAMPO PEDIDO QUE ESTEJA COM VALOR DE * NO GRID1 E NO GRID 2 ORÇAMENTO QUE TENHA O VALOR * .O QUE TA EM BRANCO ELE NÃO TRAZ
Vejo alguns erros no seu código:
.CommandText = [Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE
(Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] OR Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô])
AND Orçamento LIKE [ô]%[Ô] & txtOrçamento & [Ô]%[ô] order by Codigo[Ô]
Você deve definir como será o AND e o OR. Se deve trazer o (PRODUTO ou CLIENTE) e ORCAMENTO. Se deve trazer o PRODUTO ou (CLIENTE e ORCAMENTO).
Outra verificação é o CEDILHA. Não costumo utilizar campos com acentuação no SQL.
Também costumo utilizar o .TEXT para TEXTBOX e COMBO
.CommandText = [Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE
(Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] OR Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô])
AND Orçamento LIKE [ô]%[Ô] & txtOrçamento & [Ô]%[ô] order by Codigo[Ô]
Você deve definir como será o AND e o OR. Se deve trazer o (PRODUTO ou CLIENTE) e ORCAMENTO. Se deve trazer o PRODUTO ou (CLIENTE e ORCAMENTO).
Outra verificação é o CEDILHA. Não costumo utilizar campos com acentuação no SQL.
Também costumo utilizar o .TEXT para TEXTBOX e COMBO
[Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] AND Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô] order by Codigo[Ô]
EU TENHO ESSE SELECT FUNCIONANDO COMO ESTÃ ACIMA MAS PRECISO COMPARAR COM MAIS UM CAMPO.
ENTÃO NESSA SELECT TENHO TAMBéM COM O Orçamento LIKE [ô]%[Ô] & txtOrçamento & [Ô]%[ô]
MAS NÃO TO SABENDO COMO APLICAR MAIS UM CAMPO NESSA SELECT, é ESSA A DUVIDA.
EU TENHO ESSE SELECT FUNCIONANDO COMO ESTÃ ACIMA MAS PRECISO COMPARAR COM MAIS UM CAMPO.
ENTÃO NESSA SELECT TENHO TAMBéM COM O Orçamento LIKE [ô]%[Ô] & txtOrçamento & [Ô]%[ô]
MAS NÃO TO SABENDO COMO APLICAR MAIS UM CAMPO NESSA SELECT, é ESSA A DUVIDA.
Talvez vc esteja querendo algo assim:
1º SELECT
e no 2º SELECT
1º SELECT
.CommandText = [Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] AND Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô] [Ô]
If txtPedido.Visible Then
.CommandText = .CommandText & [Ô]AND Pedidos = [Ô] & txtPedido & [Ô] [Ô]
End If
.CommandText = .CommandText & [Ô]order by Codigo[Ô]
e no 2º SELECT
.CommandText = [Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE (Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] OR Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô]) [Ô]
If txtOrçamento.Visible Then
.CommandText = .CommandText & [Ô]AND Orçamento = [Ô] & txtOrçamento.Text & [Ô] [Ô]
End If
.CommandText = .CommandText & [Ô]order by Codigo[Ô]
Citação:NETVOO escreveu:
[Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] AND Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô] order by Codigo[Ô]
EU TENHO ESSE SELECT FUNCIONANDO COMO ESTÃ ACIMA MAS PRECISO COMPARAR COM MAIS UM CAMPO.
ENTÃO NESSA SELECT TENHO TAMBéM COM O Orçamento LIKE [ô]%[Ô] & txtOrçamento & [Ô]%[ô]
MAS NÃO TO SABENDO COMO APLICAR MAIS UM CAMPO NESSA SELECT, é ESSA A DUVIDA.
Seu pensamento está correto. Basta acrescentar AND .....
Porem o problema pode estar ou no nome do campo (ORÇAMENTO com CEDILHA) ou na combinação para a pesquisa.
O Campo ORÇAMENTO é TEXTO? Se for NUMéRICO não funciona o LIKE.
Caro amigo EDERMIR. acho que não pois o campo Pedidos não tem acentuação e nem caracter e tambem não traz o resultado certo.
Citação:RCMRO escreveu:
Talvez vc esteja querendo algo assim:
1º SELECT.CommandText = [Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] AND Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô] [Ô]
If txtPedido.Visible Then
.CommandText = .CommandText & [Ô]AND Pedidos = [Ô] & txtPedido & [Ô] [Ô]
End If
.CommandText = .CommandText & [Ô]order by Codigo[Ô]
e no 2º SELECT.CommandText = [Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE (Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] OR Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô]) [Ô]
If txtOrçamento.Visible Then
.CommandText = .CommandText & [Ô]AND Orçamento = [Ô] & txtOrçamento.Text & [Ô] [Ô]
End If
.CommandText = .CommandText & [Ô]order by Codigo[Ô]
CARA TENTEI COLOCAR MAIS ELE DEERRO
RCMRO
[ô] abrindo a conexão com o Banco BD que esta na mesma pasta do projeto
Const strConnString = [Ô]Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\Arquivos de programas\winnetNet.mdb; bUid=Administrador; Pwd=00000[Ô]
cone.CursorLocation = adUseClient
cone.Open strConnString
[ô]carregando o recordset com campos desejados da tabela
With cmd
.ActiveConnection = cone
.CommandType = adCmdText
.CommandText = [Ô]SELECT Data, Quantidade, TotalVenda, Orçamento, Status FROM Pedido WHERE Produto LIKE [ô]%[Ô] & Combo4 & [Ô]%[ô] AND Cliente LIKE [ô]%[Ô] & Combo3 & [Ô]%[ô] [Ô]
If txtPedido.Visible Then
.CommandText = .CommandText & [Ô]AND Pedidos = [Ô] & txtPedido & [Ô] [Ô]
End If
.CommandText = .CommandText & [Ô]order by Codigo[Ô]
Set rsLider = .Execute --------->> ERRO NESSA LINHA AQUI
[ô]
End With
[ô]carregando o Mshflex com o recordset
With rsLider
Set MSHFlexGrid1.DataSource = rsLider
O PRINT DO ERRO
Tópico encerrado , respostas não são mais permitidas