Filtro com Data como? Aonde está o erro?

Delphi

14/04/2007

Informa que parametro data_recadastramento não encontrado.
Oque pode ser? Aonde estou errando.
Se o campo Data_Recadastramento existe.

_DM.IBQDATA_RECADASTRAMENTO.Open;
DataRecadastramento:= _DM.IBQDATA_RECADASTRAMENTO.fieldbyname(´DATA_RECADASTRAMENTO´).AsString;


with _DM.IBQDocumentacao do
begin
Close;
Sql.Clear;
Sql.Add(´select * from DOCUMENTACAO WHERE DATA_RECADASTRAMENTO :DataRecadastramento´);
ParamByName(´DATA_RECADASTRAMENTO´).AsString := DataRecadastramento;

Open;
if IsEmpty then
MessageDlg(´Não existem dados.´, mtInformation, [mbOk], 0);
end;


Max2006

Max2006

Curtidas 0

Respostas

Marco Salles

Marco Salles

14/04/2007

talves :

_DM.IBQDATA_RECADASTRAMENTO.Open; DataRecadastramento:= _DM.IBQDATA_RECADASTRAMENTO.fieldbyname(´DATA_RECADASTRAMENTO´).AsString; with _DM.IBQDocumentacao do begin Close; Sql.Clear; Sql.Add(´select * from DOCUMENTACAO WHERE DATA_RECADASTRAMENTO [b:0d819a6e63]Falta Sinal[/b:0d819a6e63]:DataRecadastramento´); ParamByName(´DataRecadastramento´).AsString :=[b:0d819a6e63] FaltaUmaDataValida[/b:0d819a6e63]; Open; if IsEmpty then MessageDlg(´Não existem dados.´, mtInformation, [mbOk], 0); end;


FaltaSinal : Pode ser igau , maior , menor , maior ou igual etc....

Falta Uma Data Valida : Pode ser a Data atua (date)



GOSTEI 0
Max2006

Max2006

14/04/2007

_DM.IBQDATA_RECADASTRAMENTO.Open;
//Eu estou pegando esta data de um outra tabela e colocando numa variável ´DataRecadastramento.
DataRecadastramento:= _DM.IBQDATA_RECADASTRAMENTO.fieldbyname(´DATA_RECADASTRAMENTO´).AsString;


with _DM.IBQDocumentacao do
begin
Close;
Sql.Clear;
//Coloquei o sinal está certo?
Sql.Add(´select * from DOCUMENTACAO WHERE DATA_RECADASTRAMENTO >=: DataRecadastramento´);
ParamByName(´DATA_RECADASTRAMENTO´).AsString := DataRecadastramento;
Open;
if IsEmpty then
MessageDlg(´Não existem dados.´, mtInformation, [mbOk], 0);


GOSTEI 0
Marco Salles

Marco Salles

14/04/2007

[quote
with _DM.IBQDocumentacao do
begin
Close;
Sql.Clear;
//Coloquei o sinal está certo? :arrow: :arrow: [b:5c0e97a17b]Sim mas junte os dois pontos[/b:5c0e97a17b]
Sql.Add(´select * from DOCUMENTACAO WHERE DATA_RECADASTRAMENTO >=:[b:5c0e97a17b]pDataRecadastramento[/b:5c0e97a17b]´);
ParamByName([b:5c0e97a17b]pDataRecadastramento[/b:5c0e97a17b]´).AsString := DataRecadastramento;
Open;
if IsEmpty then
MessageDlg(´Não existem dados.´, mtInformation, [mbOk], 0);


so mude o nome do Parametro para [b:5c0e97a17b]p[/b:5c0e97a17b]DataRecadastramento , para não confudir com o dado a ser comparado DataRecadastramento

So isso...


GOSTEI 0
Max2006

Max2006

14/04/2007

Obrigado.
Eu estava tentando resolver isto á semanas...
Es o código para quem tem alguma dúvida sobre isto...

//_DMdm.IBQDocumentacao
_DM.IBQDATA_RECADASTRAMENTO.Open;
pDataRecadastramento:= _DM.IBQDATA_RECADASTRAMENTO.fieldbyname(´DATA_RECADASTRAMENTO´).AsString;


with _DM.IBQDocumentacao do
begin
Close;
Sql.Clear;
Sql.Add(´select * from DOCUMENTACAO WHERE DATA_RECADASTRAMENTO >=:pDataRecadastramento´);
ParamByName(´pDATARECADASTRAMENTO´).AsString := pDataRecadastramento;
Open;
if IsEmpty then
MessageDlg(´Não existem dados.´, mtInformation, [mbOk], 0);
end;

_DM.IBQDocumentacao.Open;


GOSTEI 0
Max2006

Max2006

14/04/2007

Alterei a minha data de recadastramento e agora só funciona o inverso...
Já verifiquei a data no banco de dados e está tudo oK...
Eu quero que amostre todos os registro que sejam maiores ou iguais a data de recadastramento mas agora para funcionar eu tenho que botar o sinal de de menor para funcionar.
Alguem tem alguma ideia sobre oque pode estar acontecendo?

with _DM.IBQDocumentacao do
begin
Close;
Sql.Clear;
Sql.Add(´select * from DOCUMENTACAO WHERE DATA_RECADASTRAMENTO <:pDataRecadastramento´);
ParamByName(´pDATARECADASTRAMENTO´).AsString := pDataRecadastramento;
Open;
if IsEmpty then
MessageDlg(´Não existem dados.´, mtInformation, [mbOk], 0);
end;

_DM.IBQDocumentacao.Open;


GOSTEI 0
Max2006

Max2006

14/04/2007

Filtro com data em modo string não para fazer. Mudei os campos de sring para data só que não tó conseguindo resultado alguem pode me ajudar.

_DM.IBQDATA_RECADASTRAMENTO.Open;
pDataRecadastramento:= _DM.IBQDATA_RECADASTRAMENTO.fieldbyname(´DATA_RECADASTRAMENTO´).AsDateTime;



with _DM.IBQDocumentacao do
begin
Close;
Sql.Clear;
Sql.Add(´select * from DOCUMENTACAO WHERE DATA_RECADASTRAMENTO >=:pDataRecadastramento´);
ParamByName(´pDATARECADASTRAMENTO´).AsDate := pDataRecadastramento;
Open;
if IsEmpty then
MessageDlg(´Não existem dados.´, mtInformation, [mbOk], 0);
end;

_DM.IBQDocumentacao.Open;


GOSTEI 0
Adriano_servitec

Adriano_servitec

14/04/2007

with _DM.IBQDocumentacao do 
begin 
Close; 
Sql.Clear; 
Sql.Add(´select * from DOCUMENTACAO WHERE DATA_RECADASTRAMENTO >=:pDataRecadastramento´); 
ParamByName(´pDataRecadastramento´).AsDate := strtodate(maskedit1.text); 
Open; 
if IsEmpty then 
MessageDlg(´Não existem dados.´, mtInformation, [mbOk], 0); 
end; 



GOSTEI 0
Marco Salles

Marco Salles

14/04/2007

muito estranho você fazer assim:

Sql.Add(´select * from DOCUMENTACAO WHERE DATA_RECADASTRAMENTO >=:[b:07dd2ad9d0]pDataRecadastramento[/b:07dd2ad9d0]´); ParamByName(´[b:07dd2ad9d0]pDATARECADASTRAMENTO[/b:07dd2ad9d0]´).AsString := [b:07dd2ad9d0]pDataRecadastramento[/b:07dd2ad9d0];


se prestar atenção na sugestão que lhe passei , [u:07dd2ad9d0]esta diferente[/u:07dd2ad9d0]:


Sql.Add(´select * from DOCUMENTACAO WHERE DATA_RECADASTRAMENTO >=:[b:07dd2ad9d0]pColoqueAquiUmNome[/b:07dd2ad9d0]´); ParamByName(´[b:07dd2ad9d0]pColoqueAquiUmNome[/b:07dd2ad9d0]).AsString := [b:07dd2ad9d0]DataRecadastramento[/b:07dd2ad9d0];



GOSTEI 0
POSTAR