Merhaba, Personel Yönetim Sistemini geliştirmeye kaldığımız yerden devam ediyoruz ve bu yazımızla bu projemizi tamamlıyoruz.
Bu yazımda DELETE işleminden bahsedeceğim.
Case: Verilerimizi Gride listeleyeceğiz. Daha sonra Grid üzerinde silmek istediğimiz Row’u seçip DELETE tuşu ile sileceğiz.
IF PERSONELBILGISI_SELECTED == 0 THEN
RETURN;
ENDIF;
MSG='Kayıtları Silmek İstediğinize Emin misiniz?';
MESSAGE EDU C302 WITH MSG;
IF CONFIRM == 'NO' THEN
RETURN;
ENDIF;
LOOP AT PERSONELBILGISI
BEGIN
IF PERSONELBILGISI_SELECTED == 1 THEN
BEGINTRAN;
DELETE
FROM PERSONELBILGISI
WHERE PERSONELNO = PERSONELBILGISI_PERSONELNO
AND PHONENUMBER = PERSONELBILGISI_PHONENUMBER
AND MAIL = PERSONELBILGISI_MAIL;
IF SYS_STATUS == 1 THEN
ROLLBACKTRAN;
MSG='Silme İşlemi Gerçekleştirilemedi';
MESSAGE EDU I302 WITH MSG;
RETURN;
ENDIF;
COMMITTRAN;
ENDIF;
ENDLOOP;
THIS.SEARCH();
Yaptığımız işlemi anlatalım.
Öncelikle Grid üzerinde bir seçim yapıldı mı yapılmadı mı bunu kontrol ettik.
Eğer yapılmadı ise RETURN ile tüm işlemi sonlandırıyoruz.
RETURN kodundan da belki burada bir parantez açılıp bahsedilmeli. RETURN kodunun kullanıldığı yerde oradan sonraki kodlar işlenmeyecek demektir. Kodlama anında herhangi bir RETURN ifadesine ulaşırsak işlem o kodda sonlanır.
Eğer bu noktadan geçerse ki bunun anlamı bir veri seçilmiş demektir. Bir Confirm mesajı ile verileri gerçekten silmek isteyip istemediğin soruyoruz.
MESSAGE EDU C302 WITH MSG;
Bu kodda kullanılan C Confirm mesaj kutusunu ifade eder. Confirm Mesaj kutusunda Evet ya da Hayır seçeneği sunulur. Burada seçilen evet değeri CONFIRM sistem değişkenine YES olarak atanır. Hayır derseniz NO olarak atanır. CONFIRM’in durumu sorgulanarak işlem yapılabilir.
CONFIRM değeri No olarak geliyorsa tekrar RETURN ediyoruz.
LOOP‘a bir Grid bir tablo ismi verilir. Nerede döneceğini bilmesi açısından. Grid üzerinde kaç tane veri varsa LOOP o kadar dönecektir.
Daha sonra Seçili Olan satırlara göre silme işlemi yapacağımız için
IF PERSONELBILGISI_SELECTED == 1 THEN şartını koyduk.
DELETE İşlemi
DELETE FROM [GRİDİSMİ]
ŞART İFADELERİ;
Bu işleme göre de silme işlemini yapıyoruz.
Döngüyü sonlandırıp.
En sonda Grid’i THIS.SEARCH(); metodu ile tekrar yeniliyoruz. Yeniliklerimizi görebilelim diye.
Şimdi görelim yaptıklarımızı.
İşte bu kadar yine başarılı bir şekilde işlemi tamamladık.
Artık temel seviye bir TROIA geliştiricisiniz. Hayırlı uğurlu olsun.
Bir sonraki yazımda artık daha derin konulara yavaş yavaş gireceğiz. Görüşmek üzere.