Merhabalar,
grid ile ilgili bir konuda takıldım yardımcı olursanız çok sevinirim sorunum şu şekilde,
Devexpressin cxgrid componentini kullanyorum. grid üzrine joinli bir select sonucu bilgiler döndürüyorum. grid üzerindeki herhangi bir kayıtta yaptığım değişiklik direkt olarak veritabanına yazıyor. ben bu durumun önüne geçmek istiyorum. ben kaydet butonuma tıklatmadan o veritabanına yazmasın istiyorum. yani gridin alanları select sonrası serbest kalmalıki istediğim şekilde oynamayı hesaplamayı yaptırp sonra kullanıcının iznine göre kaydedebilmeliyim.
yardım ederseniz çok sevinirim.
cxGrid üzerinde update problemi
Forum kuralları
Bu forum sadece yapacağınız işle alakalı doğru bileşeni bulmak içindir. Şöyle bir şey yapmam lazım, hangi bileşeni kullanıyım diyorsanız, doğru yerdesiniz.
Bu forum sadece yapacağınız işle alakalı doğru bileşeni bulmak içindir. Şöyle bir şey yapmam lazım, hangi bileşeni kullanıyım diyorsanız, doğru yerdesiniz.
Re: cxGrid üzerinde update problemi
TdxMemData memory dataset bileşenini kullanabilirsiniz.
Re: cxGrid üzerinde update problemi
Merhaba ,
diğer bir yöntem olarak, kullandığınız dataset in CachedUpdate özelliği varsa Aktifleştirin bu durumda siz ApplyChange ya da ApplyUpdate (kullanılan dataset e göre adı değişebilir) diyene kadar değişiklikler databse e gitmez, JOIN li bir sorgu kullandığınız için UPDATe SQL i kendiniz yazmanız gerekebilir.
diğer bir yöntem olarak, kullandığınız dataset in CachedUpdate özelliği varsa Aktifleştirin bu durumda siz ApplyChange ya da ApplyUpdate (kullanılan dataset e göre adı değişebilir) diyene kadar değişiklikler databse e gitmez, JOIN li bir sorgu kullandığınız için UPDATe SQL i kendiniz yazmanız gerekebilir.
Volkan KAMADAN
www.polisoft.com.tr
www.polisoft.com.tr
Re: cxGrid üzerinde update problemi
yardımlarınız için çok teşekkür ederim. birde aşağıdaki konuda sorunum var acaba bi ipucu verebilirmisiniz.
Divide by zero error encountered.
hatası alıyorum. sonuç döndürüğüm fiyat bilgisinin;
örnek olarak 145.00000 veya 145.12312 şeklinde sonuç vermesini istiyorum o yüzden decimale çevirdim formatı.
yani noktadan sonra 5 hane olacak şekilde nasıl ayarlayabiliriz.
CASE WHEN ORL.TRCURR = '0' THEN CONVERT(VARCHAR, CONVERT(DECIMAL(18, 5), (PRICE / ORL.TRRATE)), 1)
ELSE CONVERT(VARCHAR, CONVERT(DECIMAL(18, 5), (PRICE / ORL.TRRATE)), 1)
END AS Dövizli_Birim_Fiyat,
Divide by zero error encountered.
hatası alıyorum. sonuç döndürüğüm fiyat bilgisinin;
örnek olarak 145.00000 veya 145.12312 şeklinde sonuç vermesini istiyorum o yüzden decimale çevirdim formatı.
yani noktadan sonra 5 hane olacak şekilde nasıl ayarlayabiliriz.
CASE WHEN ORL.TRCURR = '0' THEN CONVERT(VARCHAR, CONVERT(DECIMAL(18, 5), (PRICE / ORL.TRRATE)), 1)
ELSE CONVERT(VARCHAR, CONVERT(DECIMAL(18, 5), (PRICE / ORL.TRRATE)), 1)
END AS Dövizli_Birim_Fiyat,
Re: cxGrid üzerinde update problemi
Bu şekilde değiştirdim böylede aynı sorun ile karşılaştım.
CASE WHEN ORL.TRCURR = '0' THEN (SELECT CAST((PRICE / 1) AS DECIMAL(18,5)))
ELSE (SELECT CAST((PRICE / ORL.TRRATE) AS DECIML(18,5)))
END AS Dövizli_Birim_Fiyat,
CASE WHEN ORL.TRCURR = '0' THEN (SELECT CAST((PRICE / 1) AS DECIMAL(18,5)))
ELSE (SELECT CAST((PRICE / ORL.TRRATE) AS DECIML(18,5)))
END AS Dövizli_Birim_Fiyat,
Re: cxGrid üzerinde update problemi
Farklı sorular için faklı konular açın. Bir konuda 2 soru sorarsanız konuşmalar birbirine karışır.
C. Sunguray
csunguray at netbilisim.kom
Net Bilişim Hizmetleri
Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)
csunguray at netbilisim.kom
Net Bilişim Hizmetleri
Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)
Re: cxGrid üzerinde update problemi
Çok büyük ihtimalle; ORL.TRRATE alanınızın değeri sıfır(0).!
Re: cxGrid üzerinde update problemi
evet şimdi dediğiniz koşulları tekrar gözden geçirdim ve 0 değer alan kayıtlarda bu hatayı döndürüyormuş çok teşekkür ederim.