SELECT 3 ITENS BD

NETVOO 24/10/2009 00:12:43
#326204


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
TECLA 24/10/2009 11:11:51
#326219
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.
NETVOO 24/10/2009 12:58:10
#326222
ok
vou preparar e jaja envio.
NETVOO 25/10/2009 02:22:32
#326243
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
EDERMIR 25/10/2009 17:52:57
#326255
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
NETVOO 25/10/2009 20:33:03
#326261
[Ô]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.
RCMRO 26/10/2009 06:58:22
#326265
Resposta escolhida
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[Ô]

EDERMIR 26/10/2009 07:51:50
#326267
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.
NETVOO 26/10/2009 08:46:05
#326270
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.
NETVOO 26/10/2009 08:53:18
#326271


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
NETVOO 26/10/2009 09:04:01
#326272


O PRINT DO ERRO
Página 1 de 2 [14 registro(s)]
Tópico encerrado , respostas não são mais permitidas