Gönderen Konu: Veritabanına göre uyarlanmış Hatırlatıcı  (Okunma sayısı 2187 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Cturk

  • Kıdemli Üye
  • *****
  • Rep: +5/-1
  • Çevrimdışı Çevrimdışı
  • Cinsiyet: Bay
  • İleti: 222

VT'nizde ; (TARIH) Field'ı ve Notlarınızı kaydecek bir Field(HATIRLAT). Açarak Birde "DateTimePicker" Form'a ekleyiniz Bir Timer'e AÅŸağıdaki kodu atayınız!?. Åžahıs'a ait  Not Kayıt EdildiÄŸi tarihte aktif olacaktır!.

Kod: (delphi) [Seç]
procedure TForm1.Timer1Timer(Sender: TObject);
begin//Uses: DateUtils; ekle
 DateTimePicker1.Date:=Now;//Bugünkü Tarih Aktif.
 if DayOfWeek(Form1.IBDataSet1TARIH.AsDateTime)=DayOfWeek(DateTimePicker1.Date) then
   Label1.Caption:=' '+Form1.IBDataSet1ADI.AsString+' = '+Form1.IBDataSet1HATIRLAT.AsString;
end;
......Kolay Gelsin?.
Kod: (actionscript-french) [Seç]
« Son Düzenleme: 02 Ocak 2008 00:16:50 Gönderen: Cturk »
Kayıtlı

Caylaq

  • Yeni Üye
  • *
  • Rep: +0/-0
  • Çevrimdışı Çevrimdışı
  • İleti: 5
Ynt: Veritabanına göre uyarlanmış Hatırlatıcı
« Yanıtla #1 : 13 Aralık 2008 01:31:18 »

Hocam bunu saniye ile nasıl yaparız ?

Yani saatin saniyesini kontrol edecek. Saniye eÅŸitse uyaracak

Ama şöle olsun.
Kayıtlar Dbgridde oldugu varsayılsın. Ve Gridde de 100 Kayıt var?

Her kaydı tek tek, Her saniye kontrol mü edeceğiz ? Mantık nasıl olmalı ?
Kayıtlı

Cturk

  • Kıdemli Üye
  • *****
  • Rep: +5/-1
  • Çevrimdışı Çevrimdışı
  • Cinsiyet: Bay
  • İleti: 222
Ynt: Veritabanına göre uyarlanmış Hatırlatıcı
« Yanıtla #2 : 14 Aralık 2008 15:41:06 »

Slm .Kendinize göre düzenleyiniz?..
Kod: (delphi) [Seç]
procedure TForm1.Timer1Timer(Sender: TObject);
var
a:integer;
sat:TTime;
begin
sat:=time;
query1.close;
query1.sql.clear;
query1.sql.add('select KONU from AJANDA');
Query1.sql.Add('where HATIRLATMA=:Hatir_x and TARIH=:tarih_x and SAAT=:saat_x');
query1.Params.Items[0].Asinteger:=0;
query1.Params.Items[1].AsDate:=datetimepicker1.Date;
query1.Params.Items[2].Astime:=(sat);
query1.Open;
query1.First;
for a:=1 to Query1.RecordCount do
begin
showmessage('Bu güne ait '+Query1.FieldByName('KONU').AsString+' konulu notunuz vardır');
query1.Next;
end;
end;
//
begin
DateTimePicker1.Date:=now;
query1.close;
query1.sql.clear;
query1.sql.add('select KONU from AJANDA' );
query1.sql.add('where tarih=');
query1.sql.add(#39+datetostr(DateTimePicker1.Date)+#39);
query1.open;
if query1.RecordCount>0 then
showmessage( query1KONU.asstring+' Konulu Olayı unutmayın lütfen ');
end;
« Son Düzenleme: 14 Aralık 2008 18:43:51 Gönderen: Cturk »
Kayıtlı

Caylaq

  • Yeni Üye
  • *
  • Rep: +0/-0
  • Çevrimdışı Çevrimdışı
  • İleti: 5
Ynt: Veritabanına göre uyarlanmış Hatırlatıcı
« Yanıtla #3 : 27 Haziran 2009 08:50:07 »


Eğer databasedeki veriler çok ise bu timer tetiklemesi programı çok hantallaştıracaktır . Saniye bazlı kontrolde Mantıgı ters kurmak sonunuz olabilir :)
Kayıtlı