Anlaşıldı
Abort, yapılan işlem her ne ise işlemi sonlandırır. Exit ise sadece bulunduğu yordamdan çıkar. Ben kodunun tamamını görmeden fikir yürütemem. Dikkatini çekmek için yazdım. Kod yazmak kolay iştir. devletin üstmakamlarının üç yılda bir milyon lafını boş muhabbet. Halk eğitim merkezleri yılardır, öle 3-5 yılda değil, baya yıllardır. Aklınıza gelmeyecek konularda kurslar düzenler ve eğitim verir. Yanılmıyorsam da sertifika verir. Programcılık dedikleri kod yazmak. web dizayn, galiba web yazılım dedikleri bir şeyde var.
Yani kod yazmayı öğrenmek 3-5 saatlik bir şey. İş program tasarlamaktır, kurgulamaktır. Gene söylüyorum, kodunu görmedim, örnek olması açısından yazıyorum, abort kullanmak yerine bu işlemi bir function a atayıp, bunu çağırdığın yerde, dönen result a göre yönelendirmek daha doğru olur. Abort, işlemi olduğu yerde sonlandırır.
Kod: Tümünü seç
var S:sting ='SELECT sayi=count(*) FROM sys.objects WHERE object_id = OBJECT_ID(N''dbo.%S'') ';
Function Test(sp: String):Boolean;
Result:= False;
Kontrol.SQL.Text:= Format(S,[sp]);
Kontrol.Open;
Result:= (Kontrol.Fields[0].AsInteger < 1);
Kontrol.Close;// Askerdeki mantık, Gereksizse söndür :)
GroupBox1.Visible:= Result;
Button7.Enabled:= Result
End;
.....
İf not Test('SP_EMANETTRK')then begin
ShowMessage('Program çalışamaz...');
Application.Terminate;
end;