selecionar periodo de datas e fornecedor
Olá Senhores, estou fazendo um sistema simples de estoque, uso o Access e ADO
Tenho as seguintes tabelas:
TabProduto(cod_prod, produto, qtde, un)
TabEntraProduto(cod_entrada, cod_prod, cod_fornecedor, dataentrada)
TabFornecedor(cod_fornecedor, fornecedor)
Coloquei no form os seguintes componentes: 2 wwDBDateTimePicker e 1 wwDBLookupCombo e um btnOK. Como faço a Procedure para com o click do botão OK, selecione quantas vezes um determinado fornecedor, em um período de datas, deu entrada com produtos no sistema? O meu código segue abaixo, mas não dá certo
Procedure TFrmPeriodoFornecedor.Button1Click(Sender: TObject);
var
cod:string;
begin
If wwDBDateTimePicker2.Date < wwDBDateTimePicker1.Date Then
begin
ShowMessage(´ Data inválida! Informe a data correta ´);
wwDBDateTimePicker2.Date := wwDBDateTimePicker1.Date;
end
Else
begin
AdoQuery2.Active:=false;
AdoQuery2.sql.Clear;
cod := wwDBLookupCombo1.Value;
AdoQuery2.sql.text:=´select * from tabentraproduto where dataentrada>=:data1 AND dataentrada<=:data2 order by dataentrada´;
AdoQuery2.SQL.Text:=´select * from tabproduto where produto =´ + QuotedStr(cod);
AdoQuery2.Parameters[0].Value := wwDBDateTimePicker1.Date;
AdoQuery2.Parameters[1].Value := wwDBDateTimePicker2.Date;
Adoquery2.prepared;
AdoQuery2.Active:=true;
ppReportRelPeriodoFornecedor.Print;
AdoQuery2.Active:=false;
end;
end;
Tenho as seguintes tabelas:
TabProduto(cod_prod, produto, qtde, un)
TabEntraProduto(cod_entrada, cod_prod, cod_fornecedor, dataentrada)
TabFornecedor(cod_fornecedor, fornecedor)
Coloquei no form os seguintes componentes: 2 wwDBDateTimePicker e 1 wwDBLookupCombo e um btnOK. Como faço a Procedure para com o click do botão OK, selecione quantas vezes um determinado fornecedor, em um período de datas, deu entrada com produtos no sistema? O meu código segue abaixo, mas não dá certo
Procedure TFrmPeriodoFornecedor.Button1Click(Sender: TObject);
var
cod:string;
begin
If wwDBDateTimePicker2.Date < wwDBDateTimePicker1.Date Then
begin
ShowMessage(´ Data inválida! Informe a data correta ´);
wwDBDateTimePicker2.Date := wwDBDateTimePicker1.Date;
end
Else
begin
AdoQuery2.Active:=false;
AdoQuery2.sql.Clear;
cod := wwDBLookupCombo1.Value;
AdoQuery2.sql.text:=´select * from tabentraproduto where dataentrada>=:data1 AND dataentrada<=:data2 order by dataentrada´;
AdoQuery2.SQL.Text:=´select * from tabproduto where produto =´ + QuotedStr(cod);
AdoQuery2.Parameters[0].Value := wwDBDateTimePicker1.Date;
AdoQuery2.Parameters[1].Value := wwDBDateTimePicker2.Date;
Adoquery2.prepared;
AdoQuery2.Active:=true;
ppReportRelPeriodoFornecedor.Print;
AdoQuery2.Active:=false;
end;
end;
Alvaro_web
Curtidas 0
Respostas
Rafaela.campos
10/05/2006
Alvaro, pelo q entendi sua duvida está na clausula SQL que vc tem q montar, se quiser passe +- o resultado do relatorio e a estrutura das tabelas, q ai fica mais facil pra ajudar.
Att
Att
GOSTEI 0
Alvaro_web
10/05/2006
Colega Rafaela, a clausula sql está funcionando certo, veja o codigo:
select ep.cod_entrada, ep.notafiscal, ep.qtde, ep.datanota, ep.dataentrada, p.produto, f.fornecedor
from tabentraproduto ep, tabproduto p, tabfornecedor f
where ep.cod_prod = p.cod_prod and ep.cod_fornecedor = f.cod_fornecedor
order by ep.dataentrada desc
o problema é para filtrar os dados no botao OK
select ep.cod_entrada, ep.notafiscal, ep.qtde, ep.datanota, ep.dataentrada, p.produto, f.fornecedor
from tabentraproduto ep, tabproduto p, tabfornecedor f
where ep.cod_prod = p.cod_prod and ep.cod_fornecedor = f.cod_fornecedor
order by ep.dataentrada desc
o problema é para filtrar os dados no botao OK
GOSTEI 0
Alvaro_web
10/05/2006
Colega Rafaela, a clausula sql está funcionando certo, veja o codigo:
select ep.cod_entrada, ep.notafiscal, ep.qtde, ep.datanota, ep.dataentrada, p.produto, f.fornecedor
from tabentraproduto ep, tabproduto p, tabfornecedor f
where ep.cod_prod = p.cod_prod and ep.cod_fornecedor = f.cod_fornecedor
order by ep.dataentrada desc
o problema é para filtrar os dados no botao OK
Quando eu rodo o sistema e seleciono as datas e o fornecedor, ele da o seguinte erro: ´list index out of bounds (0)´
GOSTEI 0