Personel Yönetim Sistemi projemizin artık sonuna geldik.

Bu yazımda sizlere DELETE işleminden bahsedeceğim.

Senaryomuz şu şekilde 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 silip isteyip istemediğiniz 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 SİSTEMİ

LOOP işlemi Troia’da önemli bir sistemdir.

Döngüler kavramına karşılık gelir.

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.

Yapı

LOOP AT [TabloAdı]

BEGIN

Kodlar

ENDLOOP;

Şeklindedir.

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 GRİD 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.


muratbilginer