Merhaba,
Aşağıdaki trigger çalışmıyor.Hata mesajı almıyorum.Kısacası rapor sayısı dolu olduğu halde ibexpertte update yapmaya devam ediyor.Yardımlarınızı bekliyorum.
Sevgili Ali yapmak istediğim ilkrapor diye table var.Bu tabloya doktorlar giriş yapıyor.Bu girişlere göre rapor bölümü çıktı sayı veriyor.Rapor bölümü sayı verdikten sonra hekimlerin bu bölümde tekrar güncelleme yapmalarını engellemek istiyorum.Kısacası tablonun iki farklı kullanıcısı var a kullancısı insert yapıyor b kullanıcısı tablonun boş alanlarını güncelliyor.Güncelleme bittikten sonra a kullanıcısı güncelleme yapmasın....
Bu nu delphi tarafında yapabiliyorum işi bayagı uzatıyor.Firebird tarafında kestirme yoldan yapabilirmiyim diye çabaladım fakat olmadı.
Buradaki exit olayı ile sadece Trigger de başka işlem yapmayıp bitirmeyi sağlayabilirsiniz Eğer bazı alanların değişmesini istemiyorsanız ya delphi taraftan salt-okunur halde ya da pasif/enabled=false olarak ekrana getirteceksiniz ya da After Update trigger i ile verdiğiniz şart/koşul sağlanıyorsa yeni değeri kale almayıp eski değerlere update edebilirsiniz
CREATE TRIGGER ILKRAPOR_AU0 FOR ILKRAPOR
ACTIVE AFTER UPDATE POSITION 0
AS
begin
if (ilkrapor.rapor_sayisi is not null) then -- alan değişikliği olmayacak koşul
update ilkrapor set alan_adi = old.alan_adi
where ilgili_kayıt; -- sözkonusu kayıtı gösteren şart!
end
Ezberden yazdım, çok emin olmamakla beraber böyle bir şey ile çözülebilir kanaatindeyim
İnsan gözdür, görüştür, gerisi ettir. İnsanın gözü neyi görüyorsa, değeri o kadardır. Hz. Mevlana Aklıma bu söz geldi.Yardımlarınız için çok teşekkürler...