Ajuda para acertar um select !
Bom tenho que fazer um select para um filtro de um relatório em que será impresso todas as compras dos fornecedores ou se o usuário preferir somente de um fornecedor, se puderem dar sugestões ou outra forma correta de se fazer já ajudaria
select T4.razaosocial, T1.NOTAFISCAL, T1.DATA_EMISSAO, T2.IDPRODUTO, T3.DESCRICAO, T2.QUANTIDADE, T2.VLRUNITARIO, T2.PERC_DESC, sum(T2.quantidade * T2.vlrunitario) as Total FROM tb_compra T1, tb_itemcompra T2, tb_produto T3, tb_fornecedor T4 where T1.idcompra = T2.idcompra and T2.idproduto = T3.IDPRODUTO and T1.idfornecedor = T4.idfornecedor and t1.idfornecedor = :pCodigo and t1.data_emissao between :pDataIni and :pDataFin GROUP BY T4.razaosocial, T1.NOTAFISCAL, T1.DATA_EMISSAO, T2.IDPRODUTO, T3.DESCRICAO, T2.QUANTIDADE, T2.VLRUNITARIO, T2.PERC_DESC
Afterdev
Curtidas 0
Respostas
Afterdev
28/10/2008
O codigo do filtro está desta maneira
procedure TFiltroRelCompra.BitBtn1Click(Sender: TObject); begin if checkbox1.Checked = true then begin DM.ibdCompForn.Active:= False; DM.ibdCompForn.ParamByName(´pDataIni´).AsDate:= strtodate(DataIni.Text); DM.ibdCompForn.ParamByName(´pDataFin´).AsDate:= strtodate(DataFin.Text); DM.ibdCompForn.Open; DM.rvCompras.SetParam(´pDataIni´,DataIni.Text); DM.rvCompras.SetParam(´pDataFin´,DataFin.Text); DM.rvCompras.ExecuteReport(´Report1´); end else begin DM.ibdCompForn.Active:= False; DM.ibdCompForn.ParamByName(´pDataIni´).AsDate:= strtodate(DataIni.Text); DM.ibdCompForn.ParamByName(´pDataFin´).AsDate:= strtodate(DataFin.Text); DM.ibdCompForn.ParamByName(´pCodigo´).AsInteger:= strtoint(Edit1.Text); DM.ibdCompForn.Open; DM.rvCompras.SetParam(´pDataIni´,DataIni.Text); DM.rvCompras.SetParam(´pDataFin´,DataFin.Text); DM.rvCompras.SetParam(´pCodigo´,Edit1.Text); DM.rvCompras.ExecuteReport(´Report1´); end; end;
GOSTEI 0
Afterdev
28/10/2008
Apesar de nenhuma ajuda já acertei o problema ! valeu...............
GOSTEI 0