AccessTr.neT

Tam Versiyon: VB2008-Access otomatik sayı problemi
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Daha bir kaç günlük üyeyim. Herkese merhabalar.

Hazırlamaya çalıştığım teknik servis takip programında (buradan da bazı kodları kullanmıştım. Yayınlayan arkadaşlara teşekkürler) şöyle bir problemle karşılaşmaktayım. Müşteri kayıtlarını girerken benzersiz bir kayıt kullanmam gerekiyor (mecburen). Bunu da access'te birincil anahtar ile ve ilk alanı otomatik sayı yaparak hallettim ama veri tabanını çekip kayıtlar üzerinde işlem yapmaya çalıştığımda doğal olarak hata alıyorum. SiraNo ismini verdiğim değişkeni almadan okutmaya çalışıyorum verilen çekilemiyor, alıyorum bu sefer düzenleme veya başka bir işlem yaparken Access'in otomatik sayı tanımlı alanına vbsic değer göndermeye çalıştığı için farklı bir hata ile program çalışmayı durduruyor. Ama silme veya verileri textboxlara aktarmada bir problem yok.

Prpjeyi ekledim. Fikir verebilecek arkadaş varsa memnun olurum.
(26/06/2013, 01:00)intercyber yazdı: [ -> ]Projeyi ekledim. Fikir verebilecek arkadaş varsa memnun olurum.

Öncelikle
SiraNo alanın otomatik sayı olacak ve

"KAYDET" İşlemi böyle olacak sıra noyu bir textden eklemiyeceksin


Dim Sql As New String("INSERT INTO serviskayitlari (sgiristrh,AdiSoyadi,Telefon,Parcatype,marka,problemtnm,sifre,garanti,tamamlandi,tamamtarih,tamamucreti,yapilanislem,garantiyegitti,ggidistrh,devamediyor,parcabekliyor,beklenenparca,ucretonaybekliyor,onaylanacakucret,belirlenenproblem,onayverilmedi,telefonulasilmadi) values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}','{18}','{19}','{20}','{21}',)")
Sql = String.Format(sql, sgirisitarihi.Value, sadsoyad.Text, stel.Text, sparca.Text, smarka.Text, sproblem.Text, ssifre.Text, sgarantivarmi.Text, rb1, stamamtarih.Value, stamamucret.Text, yapilanisl.Text, rb2, sgarantigidistrh.Value, rb3, rb4, sparcabekad.Text, rb5, sucretonaymiktar.Text, sbelirlenenprb.Text, rb6, rb7)


"DÜZENLE" İşlemi böyle olabilir gerekli alanları sen tamamlarsın artık.


Dim Sql As New String("UPDATE serviskayitlari SET sgiristrh='{0}',AdiSoyadi='{1}',..............'WHERE SiraNo='{100}' ")
Sql = String.Format(sql, sgirisitarihi.Value, sadsoyad.Text,...................., DataGridView1.CurrentRow.Cells(0).Value)


Bu işini görür sanırım.
Cevabınız için çok teşekkür ederim. SiraNo alanını kayıtlardan çıkarınca benzersiz alanımız da ortadan kalkmış olmayacak mı? Ben sorunumu tam olarak ifade edemediğim için böyle oldu galiba. Üretilen bu benzersiz kodları aynı zamanda servise gelen makinelere vereceğim. İşlemleri yaparken de ad/soyad yerine bu benzersiz kodlarla işlem yapacağım. Yani Arama işlemi Adsoyad değişkeni ile yapılacak belki ama silme düzenleme işlemlerini bu benzersiz koda göre yaptıracağım.

Şimdi aklıma başka bir fikir geldi. Şöyle yapsak; VB'de rastgele bir kod üretip bunu benzersiz alan olarak kullansak ve VT'ye kaydetsek de olur galiba. Ama üretilen kod aynı mantıkla üretileceği için nadir ya da düşük bir ihtimal de olsa belli zamanlarda aynı kodun üretilmesi söz konusu olabilir mi?

Bir konu da yardıma yine ihtiyacım var. VT'den çektiğim veriler ile birlikte veri veri alanlarının isimleri de datagrid'e eklenmekte. Ben bu kısımları kendim belirleyip (yani kolon isimlerini ben yazacağım) altlarına vt'den çektiğim ilgili verileri aktarabilir miyim. Yaklaşık olarak 13 yıl ara verdim. Herşey değişmiş. Eskiden yani vb6 ile bunları çok rahat yapabiliyordum. Şimdi bir türlü bulamadım.
Tamam oldu. Çok teşekkür ederim