 |
ActiveDelphi .: O site do programador Delphi! :.
|
Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
dcbfreitas21 Membro Junior

Registrado: Sábado, 30 de Janeiro de 2010 Mensagens: 323
|
Enviada: Ter Jul 19, 2011 12:33 pm Assunto: Erro no inner join |
|
|
Tenho um aplicativo de cadastro de pedido e ao mesmo tempo o cadastro de produtos, pois tenho diversos produtos para um unico pedido. Criei um topico estes tempos com duvida no inner join pois precisava mostrar os dois em uma dbgrid. Conseguiram resolver meu problema com o seguinte codigo:
Select oc.codigo, oc.fornecedor, oc.estatus, oc.valor4,
it.produto, it.unidade, it.valorunitario, it.qtd, it.valortotal
from tabelaoc as oc inner join tabelaitem as it on oc.codigo = it.codigo
Porem no relatorio devo pesquisar os pedidos atraves de dois radiobuttons:
if radiobutton1.Checked = true then
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * from TABELAOC');
ADOQuery1.SQL.Add('where CODIGO LIKE ' + QuotedStr('%' + edit1.Text + '%'));
ADOQuery1.SQL.Add('and ESTATUS = ' + QuotedStr('False'));
ADOQuery1.SQL.Add('order by CODIGO');
ADOQuery1.Open;
end;
if radiobutton2.Checked = true then
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * from TABELAOC');
ADOQuery1.SQL.Add('where FORNECEDOR LIKE ' + QuotedStr('%' + edit1.Text + '%'));
ADOQuery1.SQL.Add('and ESTATUS = ' + QuotedStr('False'));
ADOQuery1.SQL.Add('order by FORNECEDOR');
ADOQuery1.Open;
end;
Ao tentar procurar na edit ele da o seguinte erro:
'ADOQuery1: Field 'produto' not found.'
Nao sei pq ele nao localiza o produto. |
|
Voltar ao Topo |
|
 |
joemil Moderador

Registrado: Quinta-Feira, 25 de Março de 2004 Mensagens: 9100 Localização: Sinop-MT
|
Enviada: Ter Jul 19, 2011 12:49 pm Assunto: |
|
|
vc tem q usar o mesmo select (aquele com inner join) pra realizar a pesquisa _________________ <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/ |
|
Voltar ao Topo |
|
 |
Fpierin Novato


Registrado: Sexta-Feira, 2 de Mai de 2008 Mensagens: 30 Localização: São Paulo
|
Enviada: Ter Jul 19, 2011 12:50 pm Assunto: |
|
|
dcbfreitas21,
Esse ADOQuery1 é o mesmo que provê os dados do DBgrid?
Abcs, _________________ Bacharel em Sistemas de Informação pela USP
Desenvolvedor Java/Delphi/Php/Ruby
Blog: http://oreboladodeturing.wordpress.com
Twitter: http://www.twitter.com/fpierin
Yahoo messenger: felipe.pierin[at]yahoo.com.br |
|
Voltar ao Topo |
|
 |
dcbfreitas21 Membro Junior

Registrado: Sábado, 30 de Janeiro de 2010 Mensagens: 323
|
Enviada: Ter Jul 19, 2011 12:53 pm Assunto: |
|
|
joemil escreveu: | vc tem q usar o mesmo select (aquele com inner join) pra realizar a pesquisa |
Kra eu entendo muito pouco de sql, tem como me mostrar como montar o inner join com a pesquisa por codigo ou fornecedor.
Agradeço a ajuda |
|
Voltar ao Topo |
|
 |
Fpierin Novato


Registrado: Sexta-Feira, 2 de Mai de 2008 Mensagens: 30 Localização: São Paulo
|
Enviada: Ter Jul 19, 2011 12:55 pm Assunto: |
|
|
Por fornecedor
Código: |
Select oc.codigo, oc.fornecedor, oc.estatus, oc.valor4,
it.produto, it.unidade, it.valorunitario, it.qtd, it.valortotal
from tabelaoc as oc inner join tabelaitem as it on oc.codigo = it.codigo
order by oc.fornecedor
|
Por código
Código: |
Select oc.codigo, oc.fornecedor, oc.estatus, oc.valor4,
it.produto, it.unidade, it.valorunitario, it.qtd, it.valortotal
from tabelaoc as oc inner join tabelaitem as it on oc.codigo = it.codigo
order by oc.codigo
|
_________________ Bacharel em Sistemas de Informação pela USP
Desenvolvedor Java/Delphi/Php/Ruby
Blog: http://oreboladodeturing.wordpress.com
Twitter: http://www.twitter.com/fpierin
Yahoo messenger: felipe.pierin[at]yahoo.com.br |
|
Voltar ao Topo |
|
 |
dcbfreitas21 Membro Junior

Registrado: Sábado, 30 de Janeiro de 2010 Mensagens: 323
|
Enviada: Ter Jul 19, 2011 1:06 pm Assunto: |
|
|
Fpierin escreveu: | Por fornecedor
Código: |
Select oc.codigo, oc.fornecedor, oc.estatus, oc.valor4,
it.produto, it.unidade, it.valorunitario, it.qtd, it.valortotal
from tabelaoc as oc inner join tabelaitem as it on oc.codigo = it.codigo
order by oc.fornecedor
|
Por código
Código: |
Select oc.codigo, oc.fornecedor, oc.estatus, oc.valor4,
it.produto, it.unidade, it.valorunitario, it.qtd, it.valortotal
from tabelaoc as oc inner join tabelaitem as it on oc.codigo = it.codigo
order by oc.codigo
|
|
onde devo colocar para procurar pelo que eu digitar 'edit1.text', pois o primeiro select que coloquei no forum foi do sql do adoquery, ja o if foi no evento onchange da edit, este devo continar colocando no evento onchange? |
|
Voltar ao Topo |
|
 |
joemil Moderador

Registrado: Quinta-Feira, 25 de Março de 2004 Mensagens: 9100 Localização: Sinop-MT
|
Enviada: Ter Jul 19, 2011 2:22 pm Assunto: |
|
|
prefiro colocar no onclick do button pra nao demorar mto a pesquisa _________________ <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/ |
|
Voltar ao Topo |
|
 |
dcbfreitas21 Membro Junior

Registrado: Sábado, 30 de Janeiro de 2010 Mensagens: 323
|
Enviada: Ter Jul 19, 2011 2:31 pm Assunto: |
|
|
joemil escreveu: | prefiro colocar no onclick do button pra nao demorar mto a pesquisa |
mas de qualquer forma, como devo deixar o codigo |
|
Voltar ao Topo |
|
 |
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|