selamlar herkes,
şimdi delphi ve firebird kullanıyorum
Kullanıcıya istenen tarihten 3 gün öncesinden uyarı verdirmek istiyorum.
hastalara not ekledım kullanıcı sısteme gırdıgınde şu hastanın notu dıye gösterecek
ben kullanıcı girişi butonuna tıkladıgında ;
not tarih - sistem tarihi =3 diye kafamda kurdum ama koda dökemedim
şimdiden teşkkürler.
Kullanıcıya uyarı verme
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 121
- Kayıt: 10 Ara 2015 10:39
Re: Kullanıcıya uyarı verme
Merhaba.
Öncelikle şunu belirtmek isterim; not tarih - sistem tarihi =3 bu şekilde kullanırsanız- ki kullanım şekli yanlış- program her açılışta veya butona her tıklandığında hatırlatma için uyarı verecektir. Bunu önlemek için o mesajın okunup okunmadığıyla ilgili bilgiyi de veritabanına eklemelisiniz.
Kendi projelerimde kullandığım yöntemi paylaşayım. Forma bir adet dataset bileşeni ekle (Dataset kullandığını varsayıyorum). Tabloya bağlantıyı yap. Sonrasında uyarıyı vermesini istediğin butonun içerisine;
kodunu ekle. Sonra istersen ilgili formun OnShow olayında butonu click yap ki kullanıcı butona basmak zorunda kalmasın.
Not: DM datamodule nin kısaltması. Datamodule kullanmıyorsanız DM yi silerek kodu kullanın. BEKLEYEN_ISLEM datasetin adı kendinize göre düzenleyin.
Kolay gelsin.
Öncelikle şunu belirtmek isterim; not tarih - sistem tarihi =3 bu şekilde kullanırsanız- ki kullanım şekli yanlış- program her açılışta veya butona her tıklandığında hatırlatma için uyarı verecektir. Bunu önlemek için o mesajın okunup okunmadığıyla ilgili bilgiyi de veritabanına eklemelisiniz.
Kendi projelerimde kullandığım yöntemi paylaşayım. Forma bir adet dataset bileşeni ekle (Dataset kullandığını varsayıyorum). Tabloya bağlantıyı yap. Sonrasında uyarıyı vermesini istediğin butonun içerisine;
Kod: Tümünü seç
DM.BEKLEYEN_ISLEM.Close;
DM.BEKLEYEN_ISLEM.SelectSQL.Clear;
DM.BEKLEYEN_ISLEM.SelectSQL.Text:=
'select * from ISLEM_TBL WHERE SON_ODEME_TARIHI<='''+DateToStr(IncDay(now, 3))+''' and (ODEME_DURUMU='+'''Ödenmedi'''+') ';
DM.BEKLEYEN_ISLEM.Open;
Not: DM datamodule nin kısaltması. Datamodule kullanmıyorsanız DM yi silerek kodu kullanın. BEKLEYEN_ISLEM datasetin adı kendinize göre düzenleyin.
Kolay gelsin.
Re: Kullanıcıya uyarı verme
İhalilcoban arkadaşımızın yazdığına ilaveten, bence uyarılar adında bir tabloda yarat. Çünkü, birden çok hastanın hatırlatması olduğunda herbirine tek tek uyarı verdirmek, kullanıcı açısından baya can sıkıcı olabilir. Programın ilk açılışta ana tablondaki tarihleri kontrol etsin. Yaklaşan gün varsa uyarı tablona eklesin ve ana ekranda yaklaşan günleriniz var uyarılar tablosunu kontrol edin gibi bir uyarı versin. Kişi uyarılar tablosuna gidip görebilsin. Programının her kapanışında da günü geçen uyarıları tablodan silersin.
Re: Kullanıcıya uyarı verme
ihalilcoban ve lord_ares hocam öncelikle teşekkür ederim vakit ayırıp ilgilendiğiniz için.
Projeden genel bahsedeyim size daha net olacaktır.
Databasede kullanıcılar , hastalar ve uyarılar tablolarım var
kullanıcı giriş yapıyor,
hasta ekliyor hastayı ekledıkten sonra lısteden arayıp seciyor hastanın adını o hastaya bir uyarı tarıhı ve not eklıyor.
bir hastaya birden cok not ekleyebiliyor.
benim istediğim ;
***kullanıcı giriş yapıyor ana sayfa gireceği zaman o kullanıcıya uyarı tarihinden 3 gun önceden bir uyarı vermesı
kullanıcıda bu uyarının bırdaha gelıp gelmemesını secebılecek.(tekrar göster ve atla gıbı)
tesekkurler.
Projeden genel bahsedeyim size daha net olacaktır.
Databasede kullanıcılar , hastalar ve uyarılar tablolarım var
kullanıcı giriş yapıyor,
hasta ekliyor hastayı ekledıkten sonra lısteden arayıp seciyor hastanın adını o hastaya bir uyarı tarıhı ve not eklıyor.
bir hastaya birden cok not ekleyebiliyor.
benim istediğim ;
***kullanıcı giriş yapıyor ana sayfa gireceği zaman o kullanıcıya uyarı tarihinden 3 gun önceden bir uyarı vermesı
kullanıcıda bu uyarının bırdaha gelıp gelmemesını secebılecek.(tekrar göster ve atla gıbı)
tesekkurler.
-
- Üye
- Mesajlar: 121
- Kayıt: 10 Ara 2015 10:39
Re: Kullanıcıya uyarı verme
Merhaba.mhmmt yazdı: ↑17 Kas 2018 12:15 ihalilcoban ve lord_ares hocam öncelikle teşekkür ederim vakit ayırıp ilgilendiğiniz için.
Projeden genel bahsedeyim size daha net olacaktır.
Databasede kullanıcılar , hastalar ve uyarılar tablolarım var
kullanıcı giriş yapıyor,
hasta ekliyor hastayı ekledıkten sonra lısteden arayıp seciyor hastanın adını o hastaya bir uyarı tarıhı ve not eklıyor.
bir hastaya birden cok not ekleyebiliyor.
benim istediğim ;
***kullanıcı giriş yapıyor ana sayfa gireceği zaman o kullanıcıya uyarı tarihinden 3 gun önceden bir uyarı vermesı
kullanıcıda bu uyarının bırdaha gelıp gelmemesını secebılecek.(tekrar göster ve atla gıbı)
tesekkurler.
Projenizin yapısını az çok tahmin ettiğim için kullandığım yapıyı örnek verdim. Dediğim gibi yaparsanız istediğinizi elde edersiniz. İlgili forma bir adet dataset bir adet datasource ve bir adet de transaction ekleyip uyarılar tablosuna bağlayın ve gerekli diğer bağlantıları yapın. Sonra ilk mesajımda belirttiğim kod yapısını kendinize uyarlayarak bir buton içerisine atın. Ana formunuzun onshow olayında butonu tetikletip mesaj penceresini açtırın.
Kolay gelsin.
Re: Kullanıcıya uyarı verme
Çözüm:
uyari.Close;
uyari.SQL.Clear;
uyari.SQL.Text:='select * from uyarilar, hastalar WHERE current_date -3 <=U_TAR ';//and (OKUMA_DURUMU='+'''OKUNMADI'''+') ';
uyari.Open;
MessageDlg('Hasta Adı :'+uyari.FieldByName('H_AD').AsString +#13+
'Hasta Soyadı :'+uyari.FieldByName('H_SOYAD').AsString +#13+
'Uyarı Notu :'+uyari.FieldByName('U_NOT').AsString +#13+
'Uyarı Tarihi :'+uyari.FieldByName('U_TAR').AsString,mtinformation,[mbYes ,mbNo],0);
uyari.Close;
uyari.SQL.Clear;
uyari.SQL.Text:='select * from uyarilar, hastalar WHERE current_date -3 <=U_TAR ';//and (OKUMA_DURUMU='+'''OKUNMADI'''+') ';
uyari.Open;
MessageDlg('Hasta Adı :'+uyari.FieldByName('H_AD').AsString +#13+
'Hasta Soyadı :'+uyari.FieldByName('H_SOYAD').AsString +#13+
'Uyarı Notu :'+uyari.FieldByName('U_NOT').AsString +#13+
'Uyarı Tarihi :'+uyari.FieldByName('U_TAR').AsString,mtinformation,[mbYes ,mbNo],0);