Merhaba Arkadaşlar,
Master-Detail base formlarda detay bilgilerini tutan gride herhangi bir şekilde kendi çektiğiniz canlı bir sql cümlesiyle DataSource propertysini set etmemeniz gerekmektedir.
Bu işlemi aşağıdaki gibi bir senaryoyla elde edebilirsiniz.
Örnek:
Vezne formundaki ödeme detaylarının insert edileceği H_TAHSILATDETAY tablosunun yönetildiği bir master base kullanıyor olalım;
Detay satırlarının bilgilerini çekmemiz gereken (hastanın bu gelişine ait borç kayıtları) H_HASTAHAREKET tablosundaki ilgili kolonları istediğimiz şekilde canlı bir tabloya dönüştürdükten sonra (aşağıdaki örnek için: dtIslemler) ödeme detay bilgilerinin tutulduğu gridin içerisinde aşağıdaki şekilde satırları manuel olarak işleyerek normal base.Save() işlemini gerçekleştirirseniz bu işlem H_TAHSILATDETAY tablosuna gerekli verileri dbManagerDetail ile kendisi işleyecektir.
Grid içerisine bilgileri insert edecek Örnek döngü:
gvDetay.OptionsBehavior.Editable = false;
for (int i = 0; i < Variables.dtIstemler.Rows.Count; i++)
{
gvDetay.AddNewRow();
gvDetay.FocusedRowHandle = GridControl.NewItemRowHandle;
gvDetay.SetFocusedRowCellValue(colHKID, Variables.dtIstemler.Rows[i]["HKID"]);
gvDetay.SetFocusedRowCellValue(colTupId, Variables.dtIstemler.Rows[i]["TUPID"]);
gvDetay.SetFocusedRowCellValue(colTetkikId, Variables.dtIstemler.Rows[i]["TETKIKID"]);
gvDetay.SetFocusedRowCellValue(colRenk, Variables.dtIstemler.Rows[i]["RENK"]);
gvDetay.SetFocusedRowCellValue(colHDISLEMID, Variables.dtIstemler.Rows[i]["HDISLEMID"]);
gvDetay.SetFocusedRowCellValue(colKabulDurum, 1); // İstem Kabul Edildi.
gvDetay.UpdateCurrentRow();
}