AccessTr.neT
Otomatik Artan Numaranın Başına Serı No Vermek - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html)
+--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Otomatik Artan Numaranın Başına Serı No Vermek (/konu-otomatik-artan-numaranin-basina-seri-no-vermek.html)

Sayfalar: 1 2 3


Otomatik Artan Numaranın Başına Serı No Vermek - Oğuz Türkyılmaz - 21/03/2020

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.


Cvp: Otomatik Artan Numaranın Başına Serı No Vermek - berduş - 21/03/2020

"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


Cvp: Otomatik Artan Numaranın Başına Serı No Vermek - Oğuz Türkyılmaz - 21/03/2020

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



Cvp: Otomatik Artan Numaranın Başına Serı No Vermek - Oğuz Türkyılmaz - 21/03/2020

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


Cvp: Otomatik Artan Numaranın Başına Serı No Vermek - berduş - 21/03/2020

gm- neye gore değişiyor, hep başa GM- mi eklenecek?


Cvp: Otomatik Artan Numaranın Başına Serı No Vermek - Oğuz Türkyılmaz - 21/03/2020

(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.

[Resim: do.php?img=9917]

[Resim: do.php?img=9918]