Delphi'de DataGrid Üzerinde Direkt Oynama
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Delphi'de DataGrid Üzerinde Direkt Oynama
Herkese selamlar;
Delphide birkaç yıl önce hobi olarak yaptığım ve bir arkadaşımın kullandığı barkodlu satış programı üzerinde bir değişiklik yapmam istendi. Satış formu üzerinde bulunan datagrid üzerinde direkt olarak malın satış fiyatı ve adedi üzerinde oynama yapılmak isteniyor. Şöyle ki;
Bir kaban satıldığını düşünelim, veritabanımızda satış fiyatımız 99 TL olarak kayıtlı, barkod okutturarak satış ekranında datagrid üzerinde görüyoruz. Fakat müşteri pazarlık yaparak fiyatı 85 TL ye düşürdü diyelim. İşte bu anda satıcı direkt olarak satış ekranı penceresinde 99 TL yazan sütunun üzerine sol mouse ile tek tık yaparak o sütun ve satırı aktif hale getirecek ve delete tuşu ile 99 TL yi rahatlıkla silip yerine 85 TL yazabilecek enter a basıp o sütundan ayrılacak ve kaydını ona göre tamamlayabilecek. Aynı şekilde adet sütununda da grid üzerinde oynama yapılmak isteniyor, örneğin müşteri 6 adet aynı üründen aldı ise sadece 1 kez barkod okutacak, grid üzerinde miktar 1 olarak gözükecek, sonra o sütuna giderek 1 i 6 yapıp enter işlemi ile o sütundan ayrılacak ama istediği zaman o sütuna tekrar geri dönebilecek.
Biraz karışık gibi oldu ama, böyle bir düzenleme yapmamın delphide imkanı var mıdır, yoksa hangi dilde bunu gerçekleştirebilirim?
Herkese saygılarımla..
Delphide birkaç yıl önce hobi olarak yaptığım ve bir arkadaşımın kullandığı barkodlu satış programı üzerinde bir değişiklik yapmam istendi. Satış formu üzerinde bulunan datagrid üzerinde direkt olarak malın satış fiyatı ve adedi üzerinde oynama yapılmak isteniyor. Şöyle ki;
Bir kaban satıldığını düşünelim, veritabanımızda satış fiyatımız 99 TL olarak kayıtlı, barkod okutturarak satış ekranında datagrid üzerinde görüyoruz. Fakat müşteri pazarlık yaparak fiyatı 85 TL ye düşürdü diyelim. İşte bu anda satıcı direkt olarak satış ekranı penceresinde 99 TL yazan sütunun üzerine sol mouse ile tek tık yaparak o sütun ve satırı aktif hale getirecek ve delete tuşu ile 99 TL yi rahatlıkla silip yerine 85 TL yazabilecek enter a basıp o sütundan ayrılacak ve kaydını ona göre tamamlayabilecek. Aynı şekilde adet sütununda da grid üzerinde oynama yapılmak isteniyor, örneğin müşteri 6 adet aynı üründen aldı ise sadece 1 kez barkod okutacak, grid üzerinde miktar 1 olarak gözükecek, sonra o sütuna giderek 1 i 6 yapıp enter işlemi ile o sütundan ayrılacak ama istediği zaman o sütuna tekrar geri dönebilecek.
Biraz karışık gibi oldu ama, böyle bir düzenleme yapmamın delphide imkanı var mıdır, yoksa hangi dilde bunu gerçekleştirebilirim?
Herkese saygılarımla..
Re: Delphi'de DataGrid Üzerinde Direkt Oynama
Arkadaşlar cevap verebilecek kimse yok mu??
Re: Delphi'de DataGrid Üzerinde Direkt Oynama
merhaba,
barkod okutulduğunda ürün tablosundan gelen veri geçici tabloya alarak üzerinde gerekli değişiklikler yapılabilir. geçici tabloda yapılan işlemler ürün tablosuna yansımayacağı için asıl fiyet her zaman yerinde kalmış olur ve o anki satışı istenilen şekilde yapmış olursunuz.
kolay gelsin
barkod okutulduğunda ürün tablosundan gelen veri geçici tabloya alarak üzerinde gerekli değişiklikler yapılabilir. geçici tabloda yapılan işlemler ürün tablosuna yansımayacağı için asıl fiyet her zaman yerinde kalmış olur ve o anki satışı istenilen şekilde yapmış olursunuz.
kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Re: Delphi'de DataGrid Üzerinde Direkt Oynama
Hocam tampon table zaten var, benim istediğim grid üzerindeki satır ve sütunlarda oynama yapabilmek, yani grid'in satır ve sütunlarını excel hücresi gibi kullanabilmek.
Re: Delphi'de DataGrid Üzerinde Direkt Oynama
optionsdan editmode true yaparsan oynayabilirsin.
Tabi Query kullanıyorsan farklı şeyler gerekebilir.
Tabi Query kullanıyorsan farklı şeyler gerekebilir.
Bir kelimenin anlamını öğretsen bile yeter..



Re: Delphi'de DataGrid Üzerinde Direkt Oynama
dbgrid options'tan bahsediyorsunuz herhalde hocam, orda dgEditing var true yapmaya çalışıyorum ama olmuyor, devamlı false da kalıyor.
Re: Delphi'de DataGrid Üzerinde Direkt Oynama
aynı zamanda bağlı datasourceun autoedit özelliği true olmalı
Re: Delphi'de DataGrid Üzerinde Direkt Oynama
Direk tabloya bağlamak yerine memtable kullan veya hiç bağlantı yapmadan unbound modda kullan kayıt etmek istediğinde tabloya aktar. Gridin değerlerini değiştirmek zor değil zaten gridin kendi özelliği onlar sen sadece kayıt ettireceksin.
Re: Delphi'de DataGrid Üzerinde Direkt Oynama
s.a.
rowselect "true" mu?
readonly "true" mu?
normalde dbgridde zaten değişiklik yapabilirsin.
değişiklik yapamıyorsan değiştirdiğin özelliklerden dolayıdır. onları kontrol et.
bide delphinin hangi versiyonunu kullanıyorsun.
kolay gelsin.
rowselect "true" mu?
readonly "true" mu?
normalde dbgridde zaten değişiklik yapabilirsin.
değişiklik yapamıyorsan değiştirdiğin özelliklerden dolayıdır. onları kontrol et.
bide delphinin hangi versiyonunu kullanıyorsun.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Re: Delphi'de DataGrid Üzerinde Direkt Oynama
A.Slm;
Delphi 6 kullanıyorum.
DataSource Autoedit --> True
DBGrid Read Only --> True
RowSelect --> True
şeklinde...
dgEditing'i true yapmam lazım anladığım kadarı ile ama bir türlü true olmuyor, değiştirmeme rağmen kendisi tekrar false olarak atıyor.
Delphi 6 kullanıyorum.
DataSource Autoedit --> True
DBGrid Read Only --> True
RowSelect --> True
şeklinde...
dgEditing'i true yapmam lazım anladığım kadarı ile ama bir türlü true olmuyor, değiştirmeme rağmen kendisi tekrar false olarak atıyor.
Re: Delphi'de DataGrid Üzerinde Direkt Oynama
Acaba dbgrid'in ilgili colums'unun özelliklerinde bir değişiklik yapmamız gerekir mi?? expanded özelliği false şu anda, onu true yapmalı mıyız?? Gerçi o da true olmayı kabul etmiyor
(

Re: Delphi'de DataGrid Üzerinde Direkt Oynama
DBGrid Read Only --> True
RowSelect --> True
bunları False yap.
RowSelect --> True
bunları False yap.
Bir kelimenin anlamını öğretsen bile yeter..



Re: Delphi'de DataGrid Üzerinde Direkt Oynama
Arkadaşlar hepinize teşekkür ederim yardımlarınız için. Dbgrid'in column larında oynama yapmayı başardım. Şimdi bu oynama yapabildiğimiz miktar ve fiyat column larının Events lerine kod yazmam gerekiyor ki bu iki column da manuel yaptığımız değişikler Toplam Tutar a aksettirilebilsin. Onu da dbgrid'in miktar ve fiyat column larının events lerinde yaparım diye düşünmüştüm ama columns lara ait events lerin aktif olmadığını gördüm. Acaba ne yapmamız gerekir? dbgrid'in kendi events ine mi yazmamız gerekir??


Re: Delphi'de DataGrid Üzerinde Direkt Oynama
s.a.
grid in colexit eventinda yapman lazım işlemleri.
istersen birde
calculatedfield i araştır.
kolay gelsin.
grid in colexit eventinda yapman lazım işlemleri.
istersen birde

kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim