Kadir gecemiz mübarek olsun.
resimdeki gibi CxGridTableView var burada Adet, Birim fiyat, Tutar sutunları Float olarak ayarlı ve Adet, Birim fiyat sutunlarının edit özelliği true
koduyla olarak ilk ekleme anında tutar alanına sonuç yazdırabiliyorum. İhtiyacım olan
adet veya birim fiyat sutunlarından biri değiştiğinde tutar alanını yukarıdaki kodla güncellemek.
sutunun Ondrawcustomcell olayını denedim olmadı
sutunun Onchange gibi bir olayı yok mu veya yerine kullanabileceğim bir olay.
mümkünse resimde göründüğü gibi başlık bölümündeki çizgileri daha net nasıl ayarlanabilir.
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
(21-06-2017, Saat: 12:44)cinarbil Adlı Kullanıcıdan Alıntı: İyi günler,
Kadir gecemiz mübarek olsun.
resimdeki gibi CxGridTableView var burada Adet, Birim fiyat, Tutar sutunları Float olarak ayarlı ve Adet, Birim fiyat sutunlarının edit özelliği true
koduyla olarak ilk ekleme anında tutar alanına sonuç yazdırabiliyorum. İhtiyacım olan
adet veya birim fiyat sutunlarından biri değiştiğinde tutar alanını yukarıdaki kodla güncellemek.
sutunun Ondrawcustomcell olayını denedim olmadı
sutunun Onchange gibi bir olayı yok mu veya yerine kullanabileceğim bir olay.
mümkünse resimde göründüğü gibi başlık bölümündeki çizgileri daha net nasıl ayarlanabilir.
Amin, cümlemizin Kadir gecesi mübarek olsun inşallah.
Neden Calculated bir field kullanmıyorsunuz ?
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
Cevaplarınız için teşekkür ederim hepinizden Allah razı olsun
Tüm cevapları deneyeceğim
Barut ali bey OngetDataText olayına yazdım
procedure Tparametrefrm.view_tutarGetDataText(Sender: TcxCustomGridTableItem; ARecordIndex: Integer; var AText: string);
begin
if (cxgrid_uretimrecetesi_view.datacontroller.values[ARecordIndex,3] <> null) and
(cxgrid_uretimrecetesi_view.datacontroller.values[ARecordIndex,5] <> null) then
cxgrid_uretimrecetesi_view.datacontroller.values[ARecordIndex,6] :=
strtofloat(cxgrid_uretimrecetesi_view.datacontroller.values[ARecordIndex,3]) *
strtofloat(cxgrid_uretimrecetesi_view.datacontroller.values[ARecordIndex,5]);
cxgridde herhangi bir yere tıkladığında Acces Violation hata veriyor.
Tablodan yapamıyorum cxgridde ihtiyaç duyulan malzemeler ekleniyor.
fiyat ve adet bilgilerinde değişiklik varsa yapılıyor sonra tablo ya kaydediliyor.
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
Cevaplarınız için teşekkür ederim hepinizden Allah razı olsun
Tüm cevapları deneyeceğim
Barut ali bey OngetDataText olayına yazdım
procedure Tparametrefrm.view_tutarGetDataText(Sender: TcxCustomGridTableItem; ARecordIndex: Integer; var AText: string);
begin
if (cxgrid_uretimrecetesi_view.datacontroller.values[ARecordIndex,3] <> null) and
(cxgrid_uretimrecetesi_view.datacontroller.values[ARecordIndex,5] <> null) then
cxgrid_uretimrecetesi_view.datacontroller.values[ARecordIndex,6] :=
strtofloat(cxgrid_uretimrecetesi_view.datacontroller.values[ARecordIndex,3]) *
strtofloat(cxgrid_uretimrecetesi_view.datacontroller.values[ARecordIndex,5]);
cxgridde herhangi bir yere tıkladığında Acces Violation hata veriyor.
Tablodan yapamıyorum cxgridde ihtiyaç duyulan malzemeler ekleniyor.
fiyat ve adet bilgilerinde değişiklik varsa yapılıyor sonra tablo ya kaydediliyor.
Hatanın sebebi, OngetDataText olayı gerçekleştiği anda, ARecordIndex sütunundaki 3, 5 ve 6 nolu satırlar henüz oluşmamıştır.
Yani Grid satırları oluşturulurken, daha ilk kaydın, birinci sütun birinci satırında (ilk hücresinde), ARecordIndex'in 3, 5 ve 6. hücre değerlerini çağırıyorsunuz.
İlgili dataset'iniz içine bir tane Calculated field oluşturun ve OnCalcFields'da ilgili hesaplama işlemini yapın, rahatınıza bakın. Grid ile uğraşmanıza da gerek kalmaz böylelikle.
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...