Terminal makinaların veriyi anında görmesi
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Terminal makinaların veriyi anında görmesi
S.A. arkadaşlar,
Bu konuda daha öncede sordum ve forumu çok inceledim.Fakat tam net açıklamalar bulamadım.Kendimce çözümler bulmaya çalıştım belli ölçülerde bişeyler yaptım ama tam çözemedim.
Bu konuyla alakalı Bookmark kullanılıyor mu bilmiyorum ben
Post tan sonra dataseti Close -Open Yapıyorum ve normal olarak ilk kayda konumlanıyor, locate ile işlem yaptığı kayda konumlandırıyorum.
Bu arada Transaction da Read-Comitted konumunda(Bu şart mı?).
Bu şekilde yapıyorum ama tam istediğim gibi çalışmıyor.
Bu konu ile alakalı Bookmark, ibevent gibi işlemler yapılabilir diye forumda geçiyor ama kullanımını net olarak anlatılmıyor(işlemin kullanımı).
Bu konuda çalışmış arkadaşlar eminim ki vardır bi yardım ederseniz sevinirim.
hayırlı çalışmalar...
Bu konuda daha öncede sordum ve forumu çok inceledim.Fakat tam net açıklamalar bulamadım.Kendimce çözümler bulmaya çalıştım belli ölçülerde bişeyler yaptım ama tam çözemedim.
Bu konuyla alakalı Bookmark kullanılıyor mu bilmiyorum ben
Post tan sonra dataseti Close -Open Yapıyorum ve normal olarak ilk kayda konumlanıyor, locate ile işlem yaptığı kayda konumlandırıyorum.
Bu arada Transaction da Read-Comitted konumunda(Bu şart mı?).
Bu şekilde yapıyorum ama tam istediğim gibi çalışmıyor.
Bu konu ile alakalı Bookmark, ibevent gibi işlemler yapılabilir diye forumda geçiyor ama kullanımını net olarak anlatılmıyor(işlemin kullanımı).
Bu konuda çalışmış arkadaşlar eminim ki vardır bi yardım ederseniz sevinirim.
hayırlı çalışmalar...
"Bilginin Doruğuna Hep Birlikte..."
kardeş bu linke bi bak belki bi fikir verir sana .kullandığın vt yi yazsan dah aiyi olurdu bu arada.
viewtopic.php?t=8900&highlight=ibevent
viewtopic.php?t=8900&highlight=ibevent
close open işlemi yapıyor isen
buna göre insert işlemlerinde tabloya table.last komutu verebilir;
update işleminde ise bookmark ile konlandırma yapılır.
O da
update işlemine başlanırken tanımlanan bookmarka konum gönderilir;
gibi bi işlem ile konumlandırmayı yapabilirsin.
buna göre insert işlemlerinde tabloya table.last komutu verebilir;
update işleminde ise bookmark ile konlandırma yapılır.
O da
update işlemine başlanırken tanımlanan bookmarka konum gönderilir;
Kod: Tümünü seç
uses db;
.
..
procedure degis.click..
var
konum:Tbookmark;
begin
konum:=table.getbookmark;
.
..
//kayıt işlemi sonrası
table.post
table.commitretaining;
table.close;
table.open
table.gotobookmark(konum);// kayıta konumlanır.
table.freebookmark(konum); bookmark hafızadan atılır.
end;
s.a.
@meron06 nin verdiği linkte ve aşağıdaki linklerde triger-sp-events üçlüsü hakkında bilgi var.
viewtopic.php?t=5295&highlight=events
viewtopic.php?t=3625&highlight=events
Read Commited olması (sanırım dbye connect olduktan sonra) diğer transaction lar tarafından commit edilenleride oku anlamında.
Yukarda dediğim gibi sorunun tam kaynağı hakkında daha detaylı bilgi verirsen sevinirim.
Kolay Gelsin.
istediğin gibi çalışmayan kısımları neler onları söylersen daha bi yardımcı olabiliriz.ertline yazdı:.....
bişeyler yaptım ama tam çözemedim. ......
......
yapıyorum ama tam istediğim gibi çalışmıyor.
.......
@meron06 nin verdiği linkte ve aşağıdaki linklerde triger-sp-events üçlüsü hakkında bilgi var.
viewtopic.php?t=5295&highlight=events
viewtopic.php?t=3625&highlight=events
Read Commited olması (sanırım dbye connect olduktan sonra) diğer transaction lar tarafından commit edilenleride oku anlamında.
Yukarda dediğim gibi sorunun tam kaynağı hakkında daha detaylı bilgi verirsen sevinirim.
Kolay Gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Selamlar Ertline,
Bir terminalden biri bir veri girdiğinde diğer terminallerdekilerin de bundan haberdar olup kendi datalarını refresh etmek istiyorsanız, Firebird'deki Event'ler sizin için biçilmiş kaftandır.
Bu konuları araştırın. Seminer 7'de ben bir örnek verdim orada nasıl kullanacağınıza dair bilgi var ayrıca örnek programları da yazıp koydum.
Ordan detaylı ve gerçek kullanımını görebilirsiniz. Link veremeyeceğim yerini ben de hatırlamıyorum, arama ile bulabilirsiniz sanırım
Kolay Gelsin
Bir terminalden biri bir veri girdiğinde diğer terminallerdekilerin de bundan haberdar olup kendi datalarını refresh etmek istiyorsanız, Firebird'deki Event'ler sizin için biçilmiş kaftandır.
Bu konuları araştırın. Seminer 7'de ben bir örnek verdim orada nasıl kullanacağınıza dair bilgi var ayrıca örnek programları da yazıp koydum.
Ordan detaylı ve gerçek kullanımını görebilirsiniz. Link veremeyeceğim yerini ben de hatırlamıyorum, arama ile bulabilirsiniz sanırım

Kolay Gelsin
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Kuri_YJ Seminer7 yi bulamadım.
Bir link yada örnek olabilecek yazım gösteirirseniz memnun olacağım.
Bir de şunu söylemek istiyorum.Refresh yapıldıktan sonra ilk kayda konumlanma yapıyor bunu işlem yaptığımız kayıta nasıl konumlandırırız.
Bookmark dışında başka yolla yapılabiliyor mu?
Bir link yada örnek olabilecek yazım gösteirirseniz memnun olacağım.
Bir de şunu söylemek istiyorum.Refresh yapıldıktan sonra ilk kayda konumlanma yapıyor bunu işlem yaptığımız kayıta nasıl konumlandırırız.
Bookmark dışında başka yolla yapılabiliyor mu?
"Bilginin Doruğuna Hep Birlikte..."
Selamlar,
Mege senin sitede seminerler vardı değil mi adresi neydi?
Ayrıca, Refresh olayını bir daha düşün. Küçük bir firmada yapıyorsan olayları, tamam olur da çok daha fazla kullanıcı ile yapıyorsan bir daha düşün derim. Sistemi gereksiz yormanın bir anlamı olmaz.
Kolay Gelsin
Mege senin sitede seminerler vardı değil mi adresi neydi?
Ayrıca, Refresh olayını bir daha düşün. Küçük bir firmada yapıyorsan olayları, tamam olur da çok daha fazla kullanıcı ile yapıyorsan bir daha düşün derim. Sistemi gereksiz yormanın bir anlamı olmaz.
Kolay Gelsin
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Ben refresh olayı şunun için yapmak istiyorum.Şimdi 3 bilgisayardan veri girişi yapılıyor.Bir bilgisayardan girilen verinin diğer 2 bilgisayardan da anında görünmesini istiyorum.Bunun içinde sanırım bu şart(Close-Open).
Birde Close-open Yaptıktan sonra işlemi yaptığım kayıtta kalmasını istiyorum.
Birde Close-open Yaptıktan sonra işlemi yaptığım kayıtta kalmasını istiyorum.
"Bilginin Doruğuna Hep Birlikte..."
O zaman şu şekilde izah etmeye çalışayım üstad.ertline yazdı:Ben refresh olayı şunun için yapmak istiyorum.Şimdi 3 bilgisayardan veri girişi yapılıyor.Bir bilgisayardan girilen verinin diğer 2 bilgisayardan da anında görünmesini istiyorum.Bunun içinde sanırım bu şart(Close-Open).
Birde Close-open Yaptıktan sonra işlemi yaptığım kayıtta kalmasını istiyorum.
Close/open yaptığındada commitretaining işlemi yapılacaktır. Yani close open işlemi yerine transactiona commit retaining işlemi yapar isen buffer daki bilgiler veritabanına yazılır. Diğer kullanıcılarda ilgili bilgileri görürler.
Konumlanma durumu için ise bahsettiğim gibi close open işleminin hemen öncesinde konumlu satırı bookmarka atarsın ve open işleminden sonra tekrar dataset veya table 'i bookmark ile ilgili konuma konumlandırırsın. Eğer dersen bookmark kullanmak istemiyorum diye o zaman yine close open öncesinde hemen konumu bi değişkene alırsın (mesela kayıtın Id sini veya autoinc bi alan var ise onu) sonrasında ise locate komutu ile konumlanırsın.