DBEdit otomatik kayıt yapıyor

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
McVeLeT
Üye
Mesajlar: 65
Kayıt: 22 May 2005 06:45
Konum: Bursa

DBEdit otomatik kayıt yapıyor

Mesaj gönderen McVeLeT »

Arkadaşlar işin içinden çıkamadım acemi olunca, forumunuzda araştıra araştıra ufak çaplı birşeyler yapmaya çalıştım.

Sorum şu Ben DBEdite birşey girdiğimde otomatik olarak DBye kayıt ediyor. (Kayıt buttonu hiç bir işe yaramıyor bu nedenle)

Ben sadece bu bilgiler girildiğinde kayıt et buttonuna bastığımda kayıt etmesini istiyorum.

Resimdede görüldüğü gibi daha 3. edite geçtiğimde hemen kayıt etti, yardımlarınızı bekliyorum saolun şimdiden

Resim
Bazen sesini duyurabilmen için,
Susman gerekir...
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: DBEdit otomatik kayıt yapıyor

Mesaj gönderen mkysoft »

db nesnenizde aktif kayıt değiştiğinde otomatik post ve update yapılıyor demekki. Aktif kaydın değişmesi için gridden farklı bir kayda tıklıyor olabilirsiniz yada master detail şeklinde mevcut dbyi kullanmışsınız. Öncelikle db de neyin scroll olayını tetiklediğini bulun. bunun için db nesnenizin beforescroll olayına breakpoint ekleyebilrisiniz.
McVeLeT
Üye
Mesajlar: 65
Kayıt: 22 May 2005 06:45
Konum: Bursa

Re: DBEdit otomatik kayıt yapıyor

Mesaj gönderen McVeLeT »

Master detail kısmı boş beforescroll olayına nasıl breakpoint ekleyeceğimi bilmiyorum.

Peki DBEdit yerine sadece Edit kullansam DB ye bağlantı yapabilirmiyim Kaydet buttonuyla?
Bazen sesini duyurabilmen için,
Susman gerekir...
Kullanıcı avatarı
NewMember
Üye
Mesajlar: 990
Kayıt: 29 Haz 2005 06:57
Konum: Bursa

Re: DBEdit otomatik kayıt yapıyor

Mesaj gönderen NewMember »

dbeditin bağlı olduğu datasource nesnesinin autoedit özelliğinş false yap
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: DBEdit otomatik kayıt yapıyor

Mesaj gönderen aslangeri »

s.a.
dbgridde indicator u gösterirsen o bilgilerin henüz veritabanına kayıt yapılmadığını kaydın insert modunda olduğunu görürsünüz.
db kontrollü bileşenler ortak çalıştıkları için editte yaptığınız değişiklik gridde gridde (eğer izinverdiyseniz) yaptığınız değişiklik editte görünür.
editte yaptığınız değişikliklerin gridde görünmesini istemiyorsanız editleri dbedit yerine normal edit kullanmanız ,kaydet dendiği zaman editlerdeki bilgileri tablodaki ilgil alanlara kodla atamanız lazım. bu durumda grid üzerinde seçtiğiniz kayıt ta editlerde görünmeyecektir. ilgili dataset in afterscrool eventina yazacağınız kodlarla bu durumu düzeltebilirsiniz.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
McVeLeT
Üye
Mesajlar: 65
Kayıt: 22 May 2005 06:45
Konum: Bursa

Re: DBEdit otomatik kayıt yapıyor

Mesaj gönderen McVeLeT »

Normal edit yaptığımda Kaydet buttonuna hangi kodları ekleyeceğim? Veri tabanını database desktop ile hazırladım
Bazen sesini duyurabilmen için,
Susman gerekir...
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: DBEdit otomatik kayıt yapıyor

Mesaj gönderen mkysoft »

db.insert
db.fiellds = xxxx
db.post
McVeLeT
Üye
Mesajlar: 65
Kayıt: 22 May 2005 06:45
Konum: Bursa

Re: DBEdit otomatik kayıt yapıyor

Mesaj gönderen McVeLeT »

table1.insert
Table1.Fields['URUN_ADI']:=Edit2.text;
table1.post

Be şekilde yaptığımda Table1.FieldDefs.Add('URUN_ADI'); kısmında şu hatayı veriyor.

Kod: Tümünü seç

[Warning] Unit3.pas(7): Unit 'FileCtrl' is specific to a platform
[Error] Unit3.pas(195): Missing operator or semicolon
[Error] Unit3.pas(195): Incompatible types: 'Integer' and 'String'
[Error] Unit3.pas(195): Incompatible types: 'TField' and 'TCaption'
[Fatal Error] Project1.dpr(9): Could not compile used unit 'Unit3.pas'
Bazen sesini duyurabilmen için,
Susman gerekir...
orhancc
Üye
Mesajlar: 585
Kayıt: 24 Ağu 2010 02:14
Konum: İstanbul / Kadıköy
İletişim:

Re: DBEdit otomatik kayıt yapıyor

Mesaj gönderen orhancc »

McVeLeT yazdı:table1.insert
Table1.Fields['URUN_ADI']:=Edit2.text;
table1.post

Be şekilde yaptığımda Table1.FieldDefs.Add('URUN_ADI'); kısmında şu hatayı veriyor.

Kod: Tümünü seç

[Warning] Unit3.pas(7): Unit 'FileCtrl' is specific to a platform
[Error] Unit3.pas(195): Missing operator or semicolon
[Error] Unit3.pas(195): Incompatible types: 'Integer' and 'String'
[Error] Unit3.pas(195): Incompatible types: 'TField' and 'TCaption'
[Fatal Error] Project1.dpr(9): Could not compile used unit 'Unit3.pas'
Delphide satır sonlarını ; ile bitirmen gerekiyor

Kod: Tümünü seç

Table1.Fields['URUN_ADI'].value :=Edit2.text;
olacak
ayrıca sayısal alana metin kayıt ettirmeye çalışırsan da hata alırsın bilgine... Tip dönüşümlerini bir incele
McVeLeT
Üye
Mesajlar: 65
Kayıt: 22 May 2005 06:45
Konum: Bursa

Re: DBEdit otomatik kayıt yapıyor

Mesaj gönderen McVeLeT »

Eyw. Saolun hallettim
Bazen sesini duyurabilmen için,
Susman gerekir...
McVeLeT
Üye
Mesajlar: 65
Kayıt: 22 May 2005 06:45
Konum: Bursa

Re: DBEdit otomatik kayıt yapıyor

Mesaj gönderen McVeLeT »

peki yeni ürünü kayıt için hayır dendiğinde hangi kod yazılacak 5 tane Editin veri tabanına kayıt olmaması için

var
a:integer;

begin
a:=Application.MessageBox('Ürünü Kaydetmek İstiyormusunuz?','YENİ ÜRÜN KAYIT', MB_YESNO or MB_ICONQUESTION);
if a=idNO then ..........................
Bazen sesini duyurabilmen için,
Susman gerekir...
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: DBEdit otomatik kayıt yapıyor

Mesaj gönderen aslangeri »

s.a.
editlerin text ini boşalt;
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Cevapla