Consulta entre datas SQL
usei isso no delphi 5 e funcionou:
dados.consulta_compras.close;
dados.consulta_compras.SQL.Text := ´Select * from compras where data_compra >= :data_inicial and ´ + ´ data_compra <= :data_final´ + ´ order by Codigo_compra´;
dados.consulta_compras.ParamByName(´data_inicial´).AsDateTime := data_inicial_consulta_compras.datetime;
dados.consulta_compras.ParamByName(´data_final´ ).AsDateTime := data_final_consulta_compras.datetime;
dados.consulta_compras.open;
Agora to com o delphi 6, ele dá a msg que:
´[Error] U_Relatorios.pas(69): Undeclared identifier: ´ParamByName´´
dados.consulta_compras.close;
dados.consulta_compras.SQL.Text := ´Select * from compras where data_compra >= :data_inicial and ´ + ´ data_compra <= :data_final´ + ´ order by Codigo_compra´;
dados.consulta_compras.ParamByName(´data_inicial´).AsDateTime := data_inicial_consulta_compras.datetime;
dados.consulta_compras.ParamByName(´data_final´ ).AsDateTime := data_final_consulta_compras.datetime;
dados.consulta_compras.open;
Agora to com o delphi 6, ele dá a msg que:
´[Error] U_Relatorios.pas(69): Undeclared identifier: ´ParamByName´´
Henrique Rodrigues
Curtidas 0
Respostas
Bon Jovi
19/06/2004
Isso depende da classe q vc ta usando.
Se for ADO:
ADODataSet1.Parameters.ParamByName(´CAMPO´).Value := 0;
Se for cliente Midas:
ClientDataSet1.Params.ParamByName(´CAMPO´).AsInteger := 0;
Se for dbExpress e a mairia dos outros:
SQLDataSet1.ParamByName(´CAMPO´).AsInteger := 0;
ou tb
SQLDataSet1.Params.ParamByName(´CAMPO´).AsInteger := 0;
Se for ADO:
ADODataSet1.Parameters.ParamByName(´CAMPO´).Value := 0;
Se for cliente Midas:
ClientDataSet1.Params.ParamByName(´CAMPO´).AsInteger := 0;
Se for dbExpress e a mairia dos outros:
SQLDataSet1.ParamByName(´CAMPO´).AsInteger := 0;
ou tb
SQLDataSet1.Params.ParamByName(´CAMPO´).AsInteger := 0;
GOSTEI 0
Otto
19/06/2004
aproveitando seu codigo:
Select * from compras where data_compra >= :data_inicial and ´ + ´ data_compra <= :data_final´ + ´ order by Codigo_compra
dados.consulta_compras.Params[00].AsDateTime := data_inicial_consulta_compras.datetime; dados.consulta_compras.Params[01].AsDateTime := data_final_consulta_compras.datetime; dados.consulta_compras.open;
GOSTEI 0
Henrique Rodrigues
19/06/2004
tentei isso
dados.Q_C_REL_Estoque.close;
dados.Q_C_REL_Estoque.sql.clear;
dados.Q_C_REL_Estoque.sql.text := ´select * from C_Venda_REL_Produto where cod_produto = ´+ localizar_produto +´ and data >= :data_inicial and data <= :data_final´;
dados.Q_C_REL_Estoque.Parameters.ParamByName(´data_inicial´).Value := DateTimePicker1.Date;
dados.Q_C_REL_Estoque.Parameters.ParamByName(´data_final´).value := DateTimePicker2.Date;
dados.Q_C_REL_Estoque.open;
aparece um erro assim
´tipo de dados incompatível n aexpressão critério
dados.Q_C_REL_Estoque.close;
dados.Q_C_REL_Estoque.sql.clear;
dados.Q_C_REL_Estoque.sql.text := ´select * from C_Venda_REL_Produto where cod_produto = ´+ localizar_produto +´ and data >= :data_inicial and data <= :data_final´;
dados.Q_C_REL_Estoque.Parameters.ParamByName(´data_inicial´).Value := DateTimePicker1.Date;
dados.Q_C_REL_Estoque.Parameters.ParamByName(´data_final´).value := DateTimePicker2.Date;
dados.Q_C_REL_Estoque.open;
aparece um erro assim
´tipo de dados incompatível n aexpressão critério
GOSTEI 0
Henrique Rodrigues
19/06/2004
o com ponente é ADOQuery
GOSTEI 0
Emerson Nascimento
19/06/2004
dados.Q_C_REL_Estoque.close;
dados.Q_C_REL_Estoque.sql.clear;
dados.Q_C_REL_Estoque.sql.text := ´select * from C_Venda_REL_Produto where cod_produto = ´+ localizar_produto +´ and data >= :data_inicial and data <= :data_final´;
dados.Q_C_REL_Estoque.Parameters.ParamByName(´data_inicial´).Value := DateTimePicker1.Date;
dados.Q_C_REL_Estoque.Parameters.ParamByName(´data_final´).value := DateTimePicker2.Date;
dados.Q_C_REL_Estoque.open;
[size=18:206740ed19]o que é ´localizar_produto´ ?[/size:206740ed19]
dados.Q_C_REL_Estoque.sql.clear;
dados.Q_C_REL_Estoque.sql.text := ´select * from C_Venda_REL_Produto where cod_produto = ´+ localizar_produto +´ and data >= :data_inicial and data <= :data_final´;
dados.Q_C_REL_Estoque.Parameters.ParamByName(´data_inicial´).Value := DateTimePicker1.Date;
dados.Q_C_REL_Estoque.Parameters.ParamByName(´data_final´).value := DateTimePicker2.Date;
dados.Q_C_REL_Estoque.open;
[size=18:206740ed19]o que é ´localizar_produto´ ?[/size:206740ed19]
GOSTEI 0
Aroldo Zanela
19/06/2004
Colega,
Ou:
Ou:
With dados.Q_C_REL_Estoque do begin close; sql.text := ´select * from C_Venda_REL_Produto where cod_produto = :produto and data between :data_inicial and :data_final´; Parameters.ParamByName(´produto´).Value := localizar_produto; Parameters.ParamByName(´data_inicial´).Value := DateTimePicker1.Date; Parameters.ParamByName(´data_final´).value := DateTimePicker2.Date; open; end;
GOSTEI 0
Henrique Rodrigues
19/06/2004
deu o mesmo erro, localizar_produto é uma variável.
o objetivo é listar um certo código de produtos entre datas
o objetivo é listar um certo código de produtos entre datas
GOSTEI 0
Henrique Rodrigues
19/06/2004
agora deu certo, usei tudo string aí funcionou
GOSTEI 0