Dúvida em Consulta SQL.....
Tenho uma FORM de Consulta (Utilizada por vários cadastros) com um IBQuery,Edit, DBGrid e um RadioGroup para escolher o Item(parametro) desejado exemplo: item[0]= Código,item[1]= Cargo.
A consulta esta funcionando corretamente quando utilizo somente um ITEM(PARAMETRO).
EXEMPLO: item[0]= Código ..... consigo consultar normalmente.... mas quando vou para o outro item e realizo uma nova consulta não apaga o resultado anterior e acrescenta o novo.....
PQ acontece????
O Q. FALTA NO CÓDIGO ABAIXO????
OBS: Já dei Refresh só que não funciona.....
O Texto da Query :
Select ID_CARGO, CARGO, STATUS From CARGO
where ID_CARGO LIKE:ID_CARGO OR CARGO LIKE:CARGO
Segue o Código abaixo:
begin
with DS2.DataSet as TIBQuery do
begin
case RadioConsultar.ItemIndex of
0 : begin
try
Screen.Cursor:= crSQLWait;
DisableControls;
Close;
Params[0]..AsStringr := Edit1.Text;
Open;
DBGrid1.SetFocus;
EnableControls;
finally
Screen.Cursor:= crDefault;
end;
end;
1 : begin
try
Screen.Cursor:= crSQLWait;
DisableControls;
Close;
Params[1].AsString:= Edit1.Text+´¬´;
Open;
DBGrid1.SetFocus;
EnableControls;
finally
Screen.Cursor:= crDefault;
end;
end;
end;
OBRIGADO.......
A consulta esta funcionando corretamente quando utilizo somente um ITEM(PARAMETRO).
EXEMPLO: item[0]= Código ..... consigo consultar normalmente.... mas quando vou para o outro item e realizo uma nova consulta não apaga o resultado anterior e acrescenta o novo.....
PQ acontece????
O Q. FALTA NO CÓDIGO ABAIXO????
OBS: Já dei Refresh só que não funciona.....
O Texto da Query :
Select ID_CARGO, CARGO, STATUS From CARGO
where ID_CARGO LIKE:ID_CARGO OR CARGO LIKE:CARGO
Segue o Código abaixo:
begin
with DS2.DataSet as TIBQuery do
begin
case RadioConsultar.ItemIndex of
0 : begin
try
Screen.Cursor:= crSQLWait;
DisableControls;
Close;
Params[0]..AsStringr := Edit1.Text;
Open;
DBGrid1.SetFocus;
EnableControls;
finally
Screen.Cursor:= crDefault;
end;
end;
1 : begin
try
Screen.Cursor:= crSQLWait;
DisableControls;
Close;
Params[1].AsString:= Edit1.Text+´¬´;
Open;
DBGrid1.SetFocus;
EnableControls;
finally
Screen.Cursor:= crDefault;
end;
end;
end;
OBRIGADO.......
Msr
Curtidas 0
Respostas
Fernando
14/07/2003
A SINTEXE QUE USO É A SEGUINTE
With dm_Estoque.tb_Linha do
begin
Close;
ParamByName(´Codigo_Aux´).AsInteger := Codigo_Aux;
Open;
FetchAll
end;
Vc poderá usar outros parametros
qualquer dúvida me mende um e-mail e a tabela que testo para vc
With dm_Estoque.tb_Linha do
begin
Close;
ParamByName(´Codigo_Aux´).AsInteger := Codigo_Aux;
Open;
FetchAll
end;
Vc poderá usar outros parametros
qualquer dúvida me mende um e-mail e a tabela que testo para vc
GOSTEI 0
Msr
14/07/2003
Caro Fernando não posso utilizar desta maneira pq e um ´FORM DE COSULTA´ utilizado para vários cadastros....
Então tenho que usar:
Params[0].AsString:= Edit1.Text;
ou
Params[1].AsString:= Edit1.Text´¬´;
O meu problema esta na no ´´´´REFRESH´´´´´ pq quando mudo de item e realizo a consulta fica o registro anteiror e o novo......
Então tenho que usar:
Params[0].AsString:= Edit1.Text;
ou
Params[1].AsString:= Edit1.Text´¬´;
O meu problema esta na no ´´´´REFRESH´´´´´ pq quando mudo de item e realizo a consulta fica o registro anteiror e o novo......
GOSTEI 0
Rjanuzzi
14/07/2003
Tenta inserir as linhas:
...
0 : begin
try
[b:c3eafea0ec]Params[1].AsString:= ´´;[/b:c3eafea0ec]
Screen.Cursor:= crSQLWait;
...
ou
...
1 : begin
try
[b:c3eafea0ec]Params[0].AsString:= ´´;[/b:c3eafea0ec]
Screen.Cursor:= crSQLWait;
...
rjanuzzi
...
0 : begin
try
[b:c3eafea0ec]Params[1].AsString:= ´´;[/b:c3eafea0ec]
Screen.Cursor:= crSQLWait;
...
ou
...
1 : begin
try
[b:c3eafea0ec]Params[0].AsString:= ´´;[/b:c3eafea0ec]
Screen.Cursor:= crSQLWait;
...
rjanuzzi
GOSTEI 0
Renato Morais
14/07/2003
tenta colocar o fechar o dataset antes de tudo!!!
Renato!!!
renatomorais@hotmail.com
Renato!!!
renatomorais@hotmail.com
GOSTEI 0
Msr
14/07/2003
[quote=´rjanuzzi´]Tenta inserir as linhas:
...
0 : begin
try
[b]Params[1].AsString:= ´´;[/b]
Screen.Cursor:= crSQLWait;
...
ou
...
1 : begin
try
[b]Params[0].AsString:= ´´;[/b]
Screen.Cursor:= crSQLWait;
...
rjanuzzi
...
0 : begin
try
[b]Params[1].AsString:= ´´;[/b]
Screen.Cursor:= crSQLWait;
...
ou
...
1 : begin
try
[b]Params[0].AsString:= ´´;[/b]
Screen.Cursor:= crSQLWait;
...
rjanuzzi
FUNCIONOU COM A RESPOSTA DO NOSSO AMIGO [b]RJANUZZI[/b]
OBRIGADO
GOSTEI 0