Duvida atualizar varias tabelas verificando data do sistema com data cadastrada..
Bom dia pessoal
Estou com uma duvida sobre atualizar vários cadastro de uma vez com a data abaixo da data atual
veja
var
Data: string;
depois
tento
Data := formatdatetime('dd\\mm\\yyyy', now);
oq queria seria o sistema ver cadastros com campos finaliza abaixo da data atual do sistema e depois alterar dados do campo situacao para vencido..
tipo os cadastros com campo finaliza fica data de expiração
exemplo
03/05/2017
e situação alterava de ativo para vencido...
quem poderia me dar uma força?
uso delphi e firebird como bd
Estou com uma duvida sobre atualizar vários cadastro de uma vez com a data abaixo da data atual
veja
var
Data: string;
depois
tento
Data := formatdatetime('dd\\mm\\yyyy', now);
qry_atividades.Close; qry_atividades.SQL.Clear; qry_atividades.open; qry_atividades.Edit; qry_atividades.SQL.Add('update atividades set finaliza < Data and situação SET "vencido"'); qry_atividades.Post;
oq queria seria o sistema ver cadastros com campos finaliza abaixo da data atual do sistema e depois alterar dados do campo situacao para vencido..
tipo os cadastros com campo finaliza fica data de expiração
exemplo
03/05/2017
e situação alterava de ativo para vencido...
quem poderia me dar uma força?
uso delphi e firebird como bd
Murilo
Curtidas 0
Melhor post
Jones Granatyr
23/03/2017
Opa! Parece que seu update está com erro de sintaxe. Tente o seguinte comando SQL
Você precisará passar a data como parâmetro para sua consulta, por isso coloquei os dois pontos. Antes de executar o comando precisar passar esse parâmetro para a query
qryAtividades.ParamByName('Data').AsDate := Data;
update atividades set finaliza = 'vencido' where finaliza < :Data and situação = 'vencido'
Você precisará passar a data como parâmetro para sua consulta, por isso coloquei os dois pontos. Antes de executar o comando precisar passar esse parâmetro para a query
qryAtividades.ParamByName('Data').AsDate := Data;
GOSTEI 1
Mais Respostas
Roberto Wutke
23/03/2017
Fala jovem, tudo bom??
se é o que entendi, vc quer colocar como 'vencido' as datas de expiração ( finaliza ) que são menores que hoje....
vc poderia fazer assim = Data := formatdatetime('dd/mm/yyyy', now);
qry_atividades.SQL.Add('update atividades set finaliza = ''vencido'' where finaliza < ' + quotedStr(Data) );
espero ter ajudado.
se é o que entendi, vc quer colocar como 'vencido' as datas de expiração ( finaliza ) que são menores que hoje....
vc poderia fazer assim = Data := formatdatetime('dd/mm/yyyy', now);
qry_atividades.SQL.Add('update atividades set finaliza = ''vencido'' where finaliza < ' + quotedStr(Data) );
espero ter ajudado.
GOSTEI 1
Murilo
23/03/2017
pessoal fiz assim
tipo ele aparece um erro assim
qry_atividades:cursor not returned from query
ai fecho programa e reabro ele e percebo que ele aplicou as configuração certa...
mais fica dando esse bendido..
qry_atividades:cursor not returned from query
oque deve ser?
Data := formatdatetime('dd/mm/yyyy', now); qry_atividades.close; qry_atividades.SQL.Clear; qry_atividades.SQL.Add('update atividades set atual = ''Vencido'' where finaliza < ' + quotedStr(Data) ); qry_atividades.Open; qry_atividades.Refresh; ;
tipo ele aparece um erro assim
qry_atividades:cursor not returned from query
ai fecho programa e reabro ele e percebo que ele aplicou as configuração certa...
mais fica dando esse bendido..
qry_atividades:cursor not returned from query
oque deve ser?
GOSTEI 0