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

1 2 3
21/03/2020, 12:08

Oğuz Türkyılmaz

Merhaba

Me.MakbuzNo_TXT = Nz(DMax("MakbuzNo", "T_HesapHareketleri"), 0) + 1

Koduyla tablodaki son numaranın bir üstünü form yuklendiğinde MakbuzNo_TXT alanında gösteriyorum ancak bu numaranın başına Harflerden oluşan bir Seri No karakteri eklemek istiyorum. Fatura Fiş vs'lerde olduğu gibi.

Şu an 405, 406 gibi çıkan sayı değerlerinin GM-405 , GM-406 olarak çıkmasını nasıl sağlarız. Yardımlarınız için teşekkür ederim.
21/03/2020, 12:55

berduş

"gz-" & Nz(DMax("MakbuzNo", "T_HesapHareketleri"), 0) + 1
şeklinde bir şey olabilir eğer T_HesapHareketleri tablosunun MakbuzNo alanının yapısı değişmeyecekse
ama değişecekse işlem çok daha karmaşık hale gelebilir
21/03/2020, 13:46

Oğuz Türkyılmaz

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.






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
21/03/2020, 14:29

Oğuz Türkyılmaz

MakbuzNo alanının biçim Özelliğini GM-000 olarak değiştirerek olacak sanırım deneme yapıyorum sonuca yaklaştım sanırım
21/03/2020, 14:32

berduş

gm- neye gore değişiyor, hep başa GM- mi eklenecek?
21/03/2020, 14:40

Oğuz Türkyılmaz

(21/03/2020, 14:32)berduş yazdı: gm- neye gore değişiyor, hep başa GM- mi eklenecek?
Evet Sabit Aşağıdaki gibi oldu en son tek tırnağı nasıl yokedebilirim.




1 2 3