ordernar por nome, data...

Delphi

26/11/2007

Boa tarde a todos,

Seguinte,eu preciso não somente ordenar por nome e data mas tbm apresenta os somente por data vencida, a vencer e normais.

Eu estou apagando a Query, utilizo o componente SQLQuery, e substituindo por um novo comando SQL pra query. Bom essa troca de SQl esta ok, o problema eh na criação do parametro. Segue o trecho do codigo

CdsTabela1.Close;
QrTabela1.Params.Clear;
QrTabela1.SQL.Clear;
QrTabela1.SQL.Add.(CdsTabela2SQL.Value);
QrTabela1.Params[0].AsInteger := DblookupComboBox1.KeyValue;
CdsTabela1.Open;


até o momento que é feito o add da SQl na query esta ok, mas qndo vai ser passado o parametro que ocorre o erro.

Tentei acresentar o QrTabela1.Params.Create mas emperrei nessa parte e não encontrei um exemplo para isso.

Bom se alguem poder me ajudar ficarei grato.


Jsrodrigo

Jsrodrigo

Curtidas 0

Respostas

Silviogs

Silviogs

26/11/2007

Olá


Dependendo do tipo de dado que esteja usando.

Integer, Date, TimeStamp, String etc.

QrTabela1.Params[0].AsInteger := DblookupComboBox1.KeyValue;
QrTabela1.Params[0].AsString := DblookupComboBox1.KeyValue;
QrTabela1.Params[0].AsVarinat := DblookupComboBox1.KeyValue;

Silvio Guedes


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

26/11/2007

ser passado o parametro que ocorre o erro.


que erro ???????

exiba também a instrução utilizada.


GOSTEI 0
Jsrodrigo

Jsrodrigo

26/11/2007

o erro é esse ´list index out of bounds(0)´ qndo chega na linha

QrTabela1.Params[0].AsInteger := DBLookupComboBox.KeyValue;

a instrução vem de banco como colocado acima

QrTabela1.SQL.Add(CdsTabela2SQL.Value); Esse campo SQL na tabela 2 é String.

Vou passar o código inteiro

CdsTabela2.Close;
QrTabela2.Params[0].Value := 1;
QrTabela2.Params[1].Value := ´QrTabela1´;
CdsTabela2.Open;
CdsTabela1.Close;
QrTabela1.Params.Clear;
QrTabela1.SQL.Clear;
QrTabela1.SQL.Add(CdsTabela2SQL.Value);
QrTabela1.Params[0].AsInteger := DBLookupComboBox.KeyValue;
CdsTabela1.Open;


GOSTEI 0
Lab

Lab

26/11/2007

Se o campo SQL é uma instrução ele deve ter os parâmetros já incluído, por exemplo:

Select * from clientes
where id_clientes = :CODIGO


GOSTEI 0
Jsrodrigo

Jsrodrigo

26/11/2007

Sim ja esta incluido os parametros, mas ele diz q nao encontrou o parametro 0, não seria o caso de criar esse parametro passando ftInteger e ptInput? tentei usar o params.createparam mas não tive sucesso pq o delphi acusava que nao era acessivel algo assim.


GOSTEI 0
POSTAR