Ajudem-me!!! Onde está o erro nessa instrução SQL?
18/03/2003
0
Olá pessoal!
Estou usando Delphi 7, ADO com bd MSAccess, e estou tendo o seguinte problema ao gerar o relatório a partir de um botão em uma tela de pesquisa:
´ Tipo de dados incompatível na expressão de critério.´
Segue abaixo o código que utilizei:
procedure TF_Pesq.btnImprimirClick(Sender: TObject);
var
i: Integer;
begin
i:= rgOrdem.ItemIndex;
with Modulo.qryListaPr do
begin
Close;
with SQL do
begin
if cTodos.Checked then
begin
Clear;
Add(´SELECT Protocolo, DV, Dependencia, Cliente, DataDaEntrada,´
+´ DataDaSaida, Valor, LnCredito, Situacao, Funcionario, Area´); //Selecionar os campos
Add(´FROM TBL_OPERACAO´); //Selecionar a tabela
Add(´ORDER BY ´ + rgOrdem.Items[i]); //Selecionar a ordem
end
else
begin
Clear;
Add(´SELECT Protocolo, DV, Dependencia, Cliente, DataDaEntrada,´
+´ DataDaSaida, Valor, LnCredito, Situacao, Funcionario, Area´); //Selecionar os campos
Add(´FROM TBL_OPERACAO´); //Selecionar a tabela
Add(´WHERE Cliente LIKE ´+´´´´+´¬´+ Edit1.Text + ´¬´
+´´´ AND Funcionario LIKE ´+´´´´+´¬´+ lkeFunci.Text + ´¬´
+´´´ AND LnCredito LIKE ´+´´´´+´¬´+ lkeLnCred.Text + ´¬´
+´´´ AND Situacao LIKE ´+´´´´+´¬´+ lkeSituacao.Text + ´¬´
+´´´ AND Area LIKE ´+´´´´+´¬´+ cbArea.Text + ´¬´
+´´´ AND Dependencia LIKE ´+´´´´+´¬´+ lkeDep.Text + ´¬´
+´´´ AND DataDaEntrada BETWEEN ´+´´´´+´¬´+ deEntradaI.Text + ´¬´ + ´´´ AND ´+´´´´+´¬´+ deEntradaF.Text + ´¬´
+´´´ AND DataDaSaida BETWEEN ´+´´´´+´¬´+ deSaidaI.Text + ´¬´ + ´´´ AND ´+´´´´+´¬´+ deSaidaF.Text + ´¬´+´´´´);
Add(´ORDER BY ´ + rgOrdem.Items[i]); //Selecionar a ordem
end;
end;
Open;
end;
Application.CreateForm(TQR_ListaPr, QR_ListaPr); //Carrega form na memória
QR_ListaPr.Preview; //Mostra form em modo exclusivo
QR_ListaPr.Free; //Libera Memória
with Modulo do
qryListaPr.Close; //Fecha a ADOQuery
end;
Onde está o erro, ou o que posso fazer para que dê certo esta instrução?
Estou usando Delphi 7, ADO com bd MSAccess, e estou tendo o seguinte problema ao gerar o relatório a partir de um botão em uma tela de pesquisa:
´ Tipo de dados incompatível na expressão de critério.´
Segue abaixo o código que utilizei:
procedure TF_Pesq.btnImprimirClick(Sender: TObject);
var
i: Integer;
begin
i:= rgOrdem.ItemIndex;
with Modulo.qryListaPr do
begin
Close;
with SQL do
begin
if cTodos.Checked then
begin
Clear;
Add(´SELECT Protocolo, DV, Dependencia, Cliente, DataDaEntrada,´
+´ DataDaSaida, Valor, LnCredito, Situacao, Funcionario, Area´); //Selecionar os campos
Add(´FROM TBL_OPERACAO´); //Selecionar a tabela
Add(´ORDER BY ´ + rgOrdem.Items[i]); //Selecionar a ordem
end
else
begin
Clear;
Add(´SELECT Protocolo, DV, Dependencia, Cliente, DataDaEntrada,´
+´ DataDaSaida, Valor, LnCredito, Situacao, Funcionario, Area´); //Selecionar os campos
Add(´FROM TBL_OPERACAO´); //Selecionar a tabela
Add(´WHERE Cliente LIKE ´+´´´´+´¬´+ Edit1.Text + ´¬´
+´´´ AND Funcionario LIKE ´+´´´´+´¬´+ lkeFunci.Text + ´¬´
+´´´ AND LnCredito LIKE ´+´´´´+´¬´+ lkeLnCred.Text + ´¬´
+´´´ AND Situacao LIKE ´+´´´´+´¬´+ lkeSituacao.Text + ´¬´
+´´´ AND Area LIKE ´+´´´´+´¬´+ cbArea.Text + ´¬´
+´´´ AND Dependencia LIKE ´+´´´´+´¬´+ lkeDep.Text + ´¬´
+´´´ AND DataDaEntrada BETWEEN ´+´´´´+´¬´+ deEntradaI.Text + ´¬´ + ´´´ AND ´+´´´´+´¬´+ deEntradaF.Text + ´¬´
+´´´ AND DataDaSaida BETWEEN ´+´´´´+´¬´+ deSaidaI.Text + ´¬´ + ´´´ AND ´+´´´´+´¬´+ deSaidaF.Text + ´¬´+´´´´);
Add(´ORDER BY ´ + rgOrdem.Items[i]); //Selecionar a ordem
end;
end;
Open;
end;
Application.CreateForm(TQR_ListaPr, QR_ListaPr); //Carrega form na memória
QR_ListaPr.Preview; //Mostra form em modo exclusivo
QR_ListaPr.Free; //Libera Memória
with Modulo do
qryListaPr.Close; //Fecha a ADOQuery
end;
Onde está o erro, ou o que posso fazer para que dê certo esta instrução?
Vega.x
Curtir tópico
+ 0
Responder
Posts
18/03/2003
Torres Delphi
Com certeza vc esta tentando juntar tipos diferentes de dados, caracter com inteiro, data com inteiro, essas coisas.
Como nao sei o conteudo dos campos que vc mandou na mensagem, sugiro que teste o codigo separado do seu projeto e vai incluindo condicao por condicao, ate dar o erro.
Como nao sei o conteudo dos campos que vc mandou na mensagem, sugiro que teste o codigo separado do seu projeto e vai incluindo condicao por condicao, ate dar o erro.
Responder
19/03/2003
Vega.x
Olá Torres de Delphi!
Pesquisando até o campo ´Dependência´ dá certo!
O problema acontece quando eu coloco a pesquisa entre datas.
Valeuzzz!
Pesquisando até o campo ´Dependência´ dá certo!
O problema acontece quando eu coloco a pesquisa entre datas.
Valeuzzz!
Responder
Clique aqui para fazer login e interagir na Comunidade :)