"Null değeri verilemeyecek bir sütunun değeri Null olarak güncelleştirilemiyor." Diye bir hata alıyorum.
Tablo yapımda 3 alan var ve bunlar:
ID
PERSONELREFNO (NOTNULL)
GRUPREFNO (NOTNULL)
Şeklinde tanımlı... Yani PersonelRefno ve GrupRefno girilmek zorunda..
Buraya kadar herşey normal ancak sorun şu ki form açılmadan önce döngüyle birlikte aşağıdaki kodları uyguluyorum.
Kod: Tümünü seç
for i := 1 to 12 do
begin
personelegitimekle.EgitimDataSet.Append;
personelegitimekle.EgitimDataSet.Post;
end;
Kod: Tümünü seç
procedure Tpersonelegitimekle.EgitimDataSetAfterInsert(DataSet: TDataSet);
begin
EgitimDataSetGRUPREFNO.AsInteger := gruprefno;
end;
Eğer ben herhangi bir boş kaydın üstüne gelip Personelrefnosunu değiştirip daha sonra vazgeçip silip Focustan çıkarsam hata vermiyor.
Ancak Eğer daha önce bir personel seçimi yapıp Post işlemi gerçekleştirdikten sonra vazgeçip silersem hatayı veriyor..
Sebebi nedir acaba,
EgitimDataSet.Edit;
EgitimDataSetPersonelRefno.Value := null;
EgitimDataSet.Post yaparsam yine aynı hatayı veriyor.. Yani bir şekilde bunun hata vermemesi, ama veritabanına yazılırken hata vermesi gerekiyor yani istediğim bu.. Bir çözümü olan var mı acaba?
NOT: Post işlemi diye kastettiğim şey UpdateBatch değil, Gridin üzerindeki kayıttan UnFocus olup başka bir kaydın veya nesnenin üstüne Focus olmak.
Biraz uzun ve karışık oldu sanırım ama inşallah anlatabilmişimdir..
Kolay gelsin.