Skip to main content

AccessTr.neT


Otomatik Artan Numaranın Başına Serı No Vermek

Oğuz Türkyılmaz
Oğuz Türkyılmaz
12
1954

Otomatik Artan Numaranın Başına Serı No Vermek

#7
Biçimde tırnağı siz eklemişsiniz
Cevapla
#8
(21/03/2020, 13:46)Oğuz Türkyılmaz yazdı: Alanın türü önceden Metindi fakat yazılan kodun gereği eski bir kayıttaki makbuz numarası daha sonraki bir tarihde tekrar girilirse eski kaydı değiştirdiğinden bu alanı Sayıya çevirdim ve Kullanıcı aynı numarayı bir daha yanlışlıkla vermesin diye bu şekilde olmasını düşündüm. Fakat bu kodda aşağıdaki hatayı verdi Sayı alanına GM- yazdırmaya çalıştık diye sanırım.

[Resim: do.php?img=9916]

[Resim: do.php?img=9915]


Private Sub Form_Load()

Dim GelirSql As String
Dim x As Integer
Dim Gveri As Integer

GelirSql = "Select * from T_HesapHareketleri "

   GelirRS.Open GelirSql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
  
If GelirRS.RecordCount <> 0 Then
   GelirRS.MoveFirst
   
    AlanDoldur
End If


Dim fat As Control
   For Each fat In Me.Form.Controls
        Select Case fat.ControlType
            Case acTextBox
                fat.Value = ""
                    Case acComboBox
                        fat.Value = ""
                            Case acCheckBox
                                fat.Value = "0"
        End Select
    Next

Tarih_TXT.SetFocus


If Me.OpenArgs <> 0 Then
   
    Tarih_TXT.SetFocus
   
    GelirRS.MoveFirst
   
    For Gveri = 0 To GelirRS.RecordCount - 1

        AlanDoldur
        GelirRS.MoveNext

            If Me.MakbuzNo_TXT = Me.OpenArgs Then
                Exit For
            End If
    Next Gveri
   
'Me.KeyPreview = True

End If

Me.MakbuzNo_TXT.SetFocus
'Me.MakbuzNo_TXT = Nz(DMax("MakbuzNo", "T_HesapHareketleri"), 0) + 1
Me.MakbuzNo_TXT = "GM-" & Nz(DMax("MakbuzNo", "T_HesapHareketleri"), 0) + 1

Tarih_TXT = Date

End Sub
Başka bir konudaki ileri geri gibi tuşlarda boşların atlanması için sayın berduş hocacın eklediği where kodu eklenmemiş görüyor gözlerim.
Cevapla
#9
MakbuzNo_TXT =  "GM-"  & Nz(DMax("clng(mid(MakbuzNo,4))", "T_HesapHareketleri"), 0) + 1
denemedim hatalı olabilir
Not: önce tüm kayıtları silip sonra kullanmaya başlayın
MakbuzNo alan i metin olmali
Cevapla
#10
(21/03/2020, 14:57)feraz yazdı:
(21/03/2020, 13:46)Oğuz Türkyılmaz yazdı: Alanın türü önceden Metindi fakat yazılan kodun gereği eski bir kayıttaki makbuz numarası daha sonraki bir tarihde tekrar girilirse eski kaydı değiştirdiğinden bu alanı Sayıya çevirdim ve Kullanıcı aynı numarayı bir daha yanlışlıkla vermesin diye bu şekilde olmasını düşündüm. Fakat bu kodda aşağıdaki hatayı verdi Sayı alanına GM- yazdırmaya çalıştık diye sanırım.

[Resim: do.php?img=9916]

[Resim: do.php?img=9915]


Private Sub Form_Load()

Dim GelirSql As String
Dim x As Integer
Dim Gveri As Integer

GelirSql = "Select * from T_HesapHareketleri "

   GelirRS.Open GelirSql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
  
If GelirRS.RecordCount <> 0 Then
   GelirRS.MoveFirst
   
    AlanDoldur
End If


Dim fat As Control
   For Each fat In Me.Form.Controls
        Select Case fat.ControlType
            Case acTextBox
                fat.Value = ""
                    Case acComboBox
                        fat.Value = ""
                            Case acCheckBox
                                fat.Value = "0"
        End Select
    Next

Tarih_TXT.SetFocus


If Me.OpenArgs <> 0 Then
   
    Tarih_TXT.SetFocus
   
    GelirRS.MoveFirst
   
    For Gveri = 0 To GelirRS.RecordCount - 1

        AlanDoldur
        GelirRS.MoveNext

            If Me.MakbuzNo_TXT = Me.OpenArgs Then
                Exit For
            End If
    Next Gveri
   
'Me.KeyPreview = True

End If

Me.MakbuzNo_TXT.SetFocus
'Me.MakbuzNo_TXT = Nz(DMax("MakbuzNo", "T_HesapHareketleri"), 0) + 1
Me.MakbuzNo_TXT = "GM-" & Nz(DMax("MakbuzNo", "T_HesapHareketleri"), 0) + 1

Tarih_TXT = Date

End Sub
Başka bir konudaki ileri geri gibi tuşlarda boşların atlanması için sayın berduş hocacın eklediği where kodu eklenmemiş görüyor gözlerim.
örnek uygulama eski bir kopyadan  o yüzden yeni kodlar yok.
Access Çekirgesi 
[Resim: img-cray.gif]


Cevapla
#11
(21/03/2020, 15:06)berduş yazdı:
MakbuzNo_TXT =  "GM-"  & Nz(DMax("clng(mid(MakbuzNo,4))", "T_HesapHareketleri"), 0) + 1
denemedim hatalı olabilir
Not: önce tüm kayıtları silip sonra kullanmaya başlayın
MakbuzNo alan i metin olmali

Sn.@berduş elinize sağlık şunu sormak istiyorum Kodunuzdaki  Nz(DMax("clng(mid(MakbuzNo,4)) GM- nin 4 haneye kadar değer alacağınımı belirtiyor yada çıkan sayının başına 0 ilavesi içinmi 0003, 0004 gibi tam anlamadım.

[Resim: do.php?img=9919]
Access Çekirgesi 
[Resim: img-cray.gif]


Cevapla
#12
GN- 3 hane bizim için önemli olan sayısal değer 4. karakterden başladığı için mid(ifade,4) yaptık
sorun çözüldü mü? iyice kontrol ettiniz mi
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task