Ceviz Forum

Geri Dön   Ceviz Forum > Programlama > Pascal / Delphi / Delphi.NET

Cevapla
 
LinkBack Seçenekler
Eski 22/04/2008, 23:52   #1 (permalink)
Üye
 
Üyelik Tarihi: 11/2004
Mesaj: 14
Varsayılan Combobox'ta seçilen değere göre işlem yaptırma

Merhaba arkadaşlar

form sayfasında bulunan combobox içerisinde 4 adet değerim var. Bunlardan herhangibir seçildiğinde istediğim edita aynı olmayacak şekilde kod atamak istiyorum.

mesela combobox'ta a ürününü seçtiysem edita a1 şeklinde otomatik yazsın.

yeni kayıtta bu a2 olsun şeklinde.

ve daha sonraki kayıtlarda comboboxtan b modelini seçtiysem editta b1 olsun daha sonraki kayıtlarda b2, b3,b4 şeklinde devam etsin istiyorum.

bunu nasıl yapabilirim.

yardımlarınız için teşekkür ederim
mavituna hatta değil   Alıntı Yaparak Yanıtla
Eski 23/04/2008, 13:13   #2 (permalink)
Üye
 
Caylaq Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 12/2007
Yer: DELPHI LAND
Mesaj: 642
Varsayılan

Merhaba,

Sizin ekranınızı ve mantıksal yapınızı bilemiyorum. O yüzden belirttiğiniz ifadeden tam olarak ne yapmak istediğinizi anlayamadım


Combobox'ın OnSelect eventine yazınız. Ne yaptırmayı iştiyorsanız onu işleme aldırabilirsiniz.

Kod:
 
  if (combobox2.ItemIndex = 0) 
  begin
          Edit1.Text:='A';
 end
  if (combobox2.ItemIndex = 1) 
  begin
          Edit1.Text:='B';
 end;


Kolay gelsin
Caylaq hatta değil   Alıntı Yaparak Yanıtla
Eski 23/04/2008, 14:05   #3 (permalink)
Üye
 
Üyelik Tarihi: 11/2004
Mesaj: 14
Varsayılan

hocam dedikleriniz doğru aslında. ancak her yeni kayıtta edit1 deki değer 1 artacak.

stoğumda kaydettiğim her ürüne ait ürün kodu vermek istiyorum aslında. ürün özelliklerini comboboxta belirleyip kullanıcıya seçtirtmek ve ona göre otomatik ürün kodu oluşturmasını istiyorum. yani comboboxtan ayakkabı seçilirse ürün kodu a1 olsun. başka kayıtta yine ayakkabı seçilirse ürün kodu bu sefer a2 olsun istiyorum.

Alıntı:
Caylaq, mesajından alıntı: Mesajı Gör
Merhaba,

Sizin ekranınızı ve mantıksal yapınızı bilemiyorum. O yüzden belirttiğiniz ifadeden tam olarak ne yapmak istediğinizi anlayamadım


Combobox'ın OnSelect eventine yazınız. Ne yaptırmayı iştiyorsanız onu işleme aldırabilirsiniz.

Kod:
 
  if (combobox2.ItemIndex = 0) 
  begin
          Edit1.Text:='A';
 end
  if (combobox2.ItemIndex = 1) 
  begin
          Edit1.Text:='B';
 end;


Kolay gelsin
mavituna hatta değil   Alıntı Yaparak Yanıtla
Eski 23/04/2008, 15:12   #4 (permalink)
Üye
 
Caylaq Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 12/2007
Yer: DELPHI LAND
Mesaj: 642
Varsayılan

Tekrar Merhaba,

Hocam aynı işlemi bende StokKodunda değilde Carileri Gruplamak için kullanıyorum.
Bakın aşağıdaki örnek şu işe yarıyor.

Önce kullanıcı Combodaki verilere bakıyor. Orada Grubu göremezse yeni bir grup oluşturuyor.

Ve Bu oluşturulan yeni grup Combodaki listeye ekleniyor. Buradan da seçim yapıyor

Sizinkide benimkinin laciverti


Kod:
 
 
   if (ComboBox8.Text<>'') and (Edit23.Text <>'') then   // Her 2side dolu ise
    begin
    ShowMessage('Hem Grup Seçip hemde Yeni Grup Ekleyemezsiniz');
    ComboBox8.ItemIndex := -1;
    end
    else if (Edit23.Text<>'') and (ComboBox8.Text='') then   //Edit  Dolu ise  combo BOŞ ise   yeni grup ekle
    begin
                with AdoQuery13 do begin         // YENİ GRUP OLUŞTURULUYOR
                SQL.Text := 'INSERT INTO GrupKodu (OzelKod, Aciklama )   VALUES (:param1, :param2 )';
                Parameters.ParamByName('param1').value  :=Edit23.Text;    // Yeni Grup Kodu
                Parameters.ParamByName('param2').value  :=Edit24.Text;    // Grup Açıklaması
                ExecSQL;
                end;
                   Adoquery13.close;        //     DATALAR REFLESH EDİLİYOR
                   Adoquery13.SQL.clear;
                   ADOQuery13.SQL.Add(' select * from  GrupKodu order by ozelkod');
                   AdoQuery13.filtered := True;
                   Adoquery13.Open;
                       Combobox8.items.clear;
                       Adoquery13.close;        // YENİ GRUP OLUŞTURULDUKTAN SONRA LİSTEYE EKLENİYOR
                       Adoquery13.SQL.clear;
                       ADOQuery13.SQL.Add(' select * from  GrupKodu order by ozelkod');
                       AdoQuery13.filtered := True;
                       Adoquery13.Open;
                       while not Adoquery13.eof do
                       begin
                       combobox8.items.add(Adoquery13.fieldbyname('OzelKod').asstring);
                       Adoquery13.next;
                       end;
           ShowMessage(Edit23.Text + '  Grubu Oluşturulup Listeye Eklenmiştir. Yukarıdan Seçebilirsiniz..');
           Edit23.Text:='';
           Edit24.Text:='';



Ayrıca Edit değeri bir artsın demişsiniz.

Kod:
 Edit1.Text:=inttostr(strtoint(edit1.Text)+1);
Şeklinde arttırabilirsiniz ama bu uygun bir yol değildir.

Stok kodunu databaseden almanız önerilir.

Aşağıdaki örnekte Benim kullandıgım yol şudur. Önce databaseden Son numara alınıyor. Bu bir arttırılarak diğer işlemlere geçiliyor.

Aşağıdaki örnek size fikir vermesi açısından uygundur diye düşünüyorum




Kod:
    // FATURA Sıra Nosu Alınıyor +1 yapılıyor
            Application.CreateForm(TForm2,Form2);
            if Form2=nil then
            Application.CreateForm(TForm2,Form2);
            fORM2.Adoquery4.close;
            fORM2.Adoquery4.SQL.clear;
            fORM2.ADOQuery4.SQL.Add(' select * from  NumTakip where SirketKodu = "FATURASIRANO" ');
            fORM2.AdoQuery4.filtered := True;
            fORM2.Adoquery4.Open;
 
           while not fORM2.Adoquery4.eof do
            begin
            Label2.Caption:=(fORM2.Adoquery4.fieldbyname('SONNO').Text);
            fORM2.Adoquery4.next;
            end;
 
          Siranumarasi:=(StrTOFloat(Label2.Caption));
         UPDATESiranumarasi:=(Siranumarasi+1);
          Label2.Caption:=FloatToStr(UPDATESiranumarasi);
 
 
        With fORM2.ADOQuery4 Do
          With SQL Do
          Begin
          Clear;
          Add('UPDATE Numtakip  SET SONNO=''' + Label2.Caption + '''  ');
          Add('Where SirketKodu ="FATURASIRANO"    ');
          ExecSQL;
          end;





Sizde aynı mantıktan yola çıkarak kendi projenize göre ayarlayabilirsiniz.

Umarım yardımı olmuştur.

Selamlar, Kolaylıklar







.
__________________
Soru Sormadan Önce:
http://forum.ceviz.net/announcement.php?f=27&a=55





Sigarayı BIRAKMANIN YOLLARI.......!
http://www.yesilay.org.tr/sigara_nasil_birakilmali.asp
Caylaq hatta değil   Alıntı Yaparak Yanıtla
Eski 24/04/2008, 00:09   #5 (permalink)
Üye
 
Üyelik Tarihi: 11/2004
Mesaj: 14
Varsayılan

bu işin içinden çıkamıcam sanırım ): ado ve sql giriyor işin içine ben daha yukardaki yazdığınız kodları nereye yazacağımı bilmiyorum yani. zor bir başlangıç yapmışım sanırım ama yılmayacağım. bir şekilde yapacağım. sağolun.
mavituna hatta değil   Alıntı Yaparak Yanıtla
Eski 24/04/2008, 01:29   #6 (permalink)
Üye
 
Caylaq Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 12/2007
Yer: DELPHI LAND
Mesaj: 642
Varsayılan

Sevgili Mavituna,

SQL bilmeden kesinlikle bir programlama diline başlamayınız. Çünkü SQL olmassa olmaslardandır. ( Sine gua Non )


Projenizin her yerinde kullanbilirsiniz ve sizi birçok sorundan kurtarır.

Yeterki yılmamayın. Çünkü bir kırılma noktası vardır. Onu aşınca gerisi kendiliğinden geliyor.

Delphi öğrenilmesi en kolay dillerdendir. Yeterki mantıgını bilin.


Ceviz.Net ailesi olarak bu konuda sonuna kadar yardımcı olabilirim.


Selamlar


Kolaylıklar
__________________
Soru Sormadan Önce:
http://forum.ceviz.net/announcement.php?f=27&a=55





Sigarayı BIRAKMANIN YOLLARI.......!
http://www.yesilay.org.tr/sigara_nasil_birakilmali.asp
Caylaq hatta değil   Alıntı Yaparak Yanıtla
Eski 24/04/2008, 13:45   #7 (permalink)
Üye
 
Üyelik Tarihi: 11/2004
Mesaj: 14
Varsayılan

yok sql dilini az çok biliyorum kaynaklarda var ancak delphi içerisinde nasıl kullanacağımı bilmiyorum. burada biraz kötü oluyor. bilgi var ama nasıl işleyeceğimi bilmiyorum.
mavituna hatta değil   Alıntı Yaparak Yanıtla
Eski 24/04/2008, 14:59   #8 (permalink)
Üye
 
Caylaq Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 12/2007
Yer: DELPHI LAND
Mesaj: 642
Varsayılan

Merhaba,

İnanın çok basit.

Size akşamleyin Access ve SQL dili ile ilgili küçük bir örnek hazırlarım.

Nasıl kullanacagınızı ,prosörüdü ve ne kadar kolay oldugunu görürsünüz.


Görüşmek üzere

Selamlar, Sevgiler
__________________
Soru Sormadan Önce:
http://forum.ceviz.net/announcement.php?f=27&a=55





Sigarayı BIRAKMANIN YOLLARI.......!
http://www.yesilay.org.tr/sigara_nasil_birakilmali.asp
Caylaq hatta değil   Alıntı Yaparak Yanıtla
Eski 24/04/2008, 15:07   #9 (permalink)
Üye
 
Üyelik Tarihi: 11/2004
Mesaj: 14
Varsayılan

Alıntı:
Ayrıca Edit değeri bir artsın demişsiniz.

Kod:
Edit1.Text:=inttostr(strtoint(edit1.Text)+1);
Şeklinde arttırabilirsiniz ama bu uygun bir yol değildir.
Alıntı:
Stok kodunu databaseden almanız önerilir.
derken stok kodu tablosumu oluşturmalıyım ayrıca. stok demiyorum da ben programda ona ürün kodu diyorum.

şimdi paradox üzerinde çalışıyorum öncelikle onun için TQuery ile uğraşıyorum. sorgu cümlesine şunu demek istiyorum ben

1-urunkayıt tablosundan urunkodunu al ve
2- her yeni kayıtta bu urun kodunu bir artır.

1 için "select urunkodu from urunkayit" diyerek urunkodu edite yerleşiyor.
2. adımda bu alınan urunkodunu nasıl 1 artırırım. aslında artırmayı yaparım ama yeni kayıt butonuna bastıktan sonra bu işi nasıl yaptırırım onu kestiremiyorum.

Enson 24/04/2008 16:11 tarihinde Caylaq tarafından düzenlenmiştir..
mavituna hatta değil   Alıntı Yaparak Yanıtla
Eski 24/04/2008, 16:59   #10 (permalink)
Üye
 
Caylaq Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 12/2007
Yer: DELPHI LAND
Mesaj: 642
Varsayılan

Alıntı:
1-urunkayıt tablosundan urunkodunu al ve
2- her yeni kayıtta bu urun kodunu bir artır.

1 için "select urunkodu from urunkayit" diyerek urunkodu edite yerleşiyor.
2. adımda bu alınan urunkodunu nasıl 1 artırırım. aslında artırmayı yaparım ama yeni kayıt butonuna bastıktan sonra bu işi nasıl yaptırırım onu kestiremiyorum.
Hocam ben StokKodu diyorum siz ürün kodu diyin farketmez.
Elbette Bunu databaseden almalısınız.

Database yapınız nasıl ki ?

ürünkodu -- ürünadı--ürünçıklaması--
0001--------A ürünü--- mavi renk
0002--------B ürünü--- mavi renk
0003--------C ürünü--- mavi renk

Ürünkodu enson 0003de kalmış siz bunu edite alıp kaydederken 1 arttıracaksınız.

Bunuyapabilmek için Database'inizi ve baglantı yolunu ( ADO , TABLE , BDE... ) bilmemiz gerekir.

Eğer Query ise Size bir önceki ( üstte ) mesajımda belirtmiştim nasıl yapılacagını...
__________________
Soru Sormadan Önce:
http://forum.ceviz.net/announcement.php?f=27&a=55





Sigarayı BIRAKMANIN YOLLARI.......!
http://www.yesilay.org.tr/sigara_nasil_birakilmali.asp
Caylaq hatta değil   Alıntı Yaparak Yanıtla
Cevapla

Bookmarks

Seçenekler

Mesaj Yazma Hakları
Yeni mesajgöndermezsiniz
Cevap yazamazsınız
Dosya ekleyemezsiniz
Mesajınızı düzenleyemezsiniz

BB code is Açık
[IMG] kodu Açık
HTML kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık

Benzer Konular
Konu Konuyu açana göre Forum Cevap En Son Mesaj
Seçilen değerlere göre numara verek... Bigsnow PHP 6 05/06/2007 00:10
Seçilen ile göre Bayi Listeleme Kirkk ASP 4 23/05/2007 16:10
QueryString'e göre işlem yaptırma prf_q PHP 10 18/12/2006 02:50
Combobox'ta önceden seçilen deger de silinse keske.. macre C# 2 12/04/2006 21:31
adres satırındaki değere göre title dogistyle ASP 8 09/09/2005 13:46


Forum saati Türkiye saatine göredir. GMT +3. Şu anda saat 23:42.

Reklamlar & Desteklenenler
Hassas Valf | Hassas Kaplama | Antalyamız | Gazete | Ticari Bilişim | Hakan Müştak | Rüya Tabirleri | Kadın | Hastalıklar | Cepte msn ve e-posta | Webmaster | Antalya Aupair | Turkish Property Antalya | Forum | Chat | Perde | Adsl | Araba | bolindir.com | guncelle.com | livescore | Web Tasarım | evden eve nakliyat | forum | evden eve | sohbet | Resimcim| Kalifiye İnsan Kaynakları | Web Tasarım | Oyun | Yusuf KOÇ | Akın Yorulmaz | şiir | UFO | Web Tasarım | Oyunlar | Canlı Tv |


Forum Yazılımı: vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright ©2001 - 2008, Ceviz.net