Pesquisa ente periodos com substring

Delphi

21/12/2004

Pessoal

Estou com um problema...
Tenho uma tabela em DBF que possui o contas a raceber de uma determinada empresa.
Estou fazendo uma select para que ele me retorne todos os registros entre um periodo onde ele faz a comparação entre os campos DATA_EMISSÃO que esta em char.
O meu campo de input é uma string tb.
O que acontece:

Quando eu rodo esse select no database explore do delphi ela me retorna os dados pedidos

SELECT * FROM IC_CNTF
WHERE SUBSTRING(EMI_CNTF FROM 7 FOR 4)+SUBSTRING(EMI_CNTF
FROM 4 FOR 2)+SUBSTRING(EMI_CNTF FROM 1 FOR 2) >= ´20041201´;
AND SUBSTRING(EMI_CNTF FROM 7 FOR 4)+SUBSTRING(EMI_CNTF FROM 4 FOR 2)+SUBSTRING(EMI_CNTF FROM 1 FOR 2) = ´+inicio+´´);
SQL.Add(´AND SUBSTRING(EMI_CNTF FROM 7 FOR 4)+SUBSTRING(EMI_CNTF FROM 4 FOR 2)+SUBSTRING(EMI_CNTF FROM 1 FOR 2) <= ´+fim+´´);
Open;
end;

OBS: inicio e fim são parametros de entrada usando edit´s

Alguem poderia me ajudar ???

[]´s

Marcos


Marcosmp

Marcosmp

Curtidas 0

Respostas

Gandalf.nho

Gandalf.nho

21/12/2004

Tente assim:

With DM.qryTable1 do
begin
SQL.Clear;
SQL.Add(´SELECT * FROM ´+Path2+´ ´);
SQL.Add(´WHERE SUBSTRING(EMI_CNTF FROM 7 FOR 4)+SUBSTRING (EMI_CNTF FROM 4 FOR 2)+SUBSTRING(EMI_CNTF FROM 1 FOR 2) >= ´+QuotedStr(inicio)+´´);
SQL.Add(´AND SUBSTRING(EMI_CNTF FROM 7 FOR 4)+SUBSTRING(EMI_CNTF FROM 4 FOR 2)+SUBSTRING(EMI_CNTF FROM 1 FOR 2) <= ´+QuotedStr(fim)+´´);
Open;
end;


GOSTEI 0
POSTAR