Bu şekilde olursa, TUR020120-TG4 numarası verilince, aynı gün aynı kullanıcı yine teklif eklerse yine aynı numarayı verir. Soru eksik sorulmuş.
Tablodaki önceden kaydedilen verilerin kontrol ettirilip, aynı gün, aynı kullanıcı teklif eklemiş ise bir fazlasını kaydetmesi lazım.
- T_TEKLIF_H isimli tabloya, veri türü metin olan "ID" adında alan ekle,
- F_TEKLIF_H isimli forma, denetim kaynağı ID olan MTN_ID adında metin kutusu ekle,
- F_YTEKLIFHR_ALTFRM isimli formun
Vba sayfasında, en alta
Sub SiraNoVer()
Dim GKriter, strSQL, GSiradaki, GKullaniciBul, GKullanici, GTarih, Gid As String
Dim rs1 As DAO.Recordset
KullaniciKim = 25
If IsNull(Forms![F_YTEKLIF_H]![MTN_ID]) Then
GKullaniciBul = Dlookup ("kulanici_adi", "TKullanicilar", "[kul_id]= " & KullaniciKim)
GTarih = Format(Day(Me.MTN_TARIH), "00") & Format(Month(Me.MTN_TARIH), "00") & Right(Year(Me.MTN_TARIH), 2)
GKullanici = Left(Left(GKullaniciBul, InStr(1, GKullaniciBul, " ") - 1), 1) & Left(Mid(GKullaniciBul, InStr(1, GKullaniciBul, " ") + 1), 1)
Gid = "TUR" & GTarih & "-" & GKullanici
GKriter = "TUR" & GTarih & "-" & GKullanici & "*"
strSQL = "SELECT TOP 1 ID, Val(Mid([ID],13)) AS Sayi FROM T_TEKLIF_H WHERE ID Like '" & GKriter & "' ORDER BY Val(Mid([ID],13)) DESC;"
Set rs1 = CurrentDb.OpenRecordset(strSQL)
If Not rs1.EOF Then
rs1.MoveFirst
GSiradaki = rs1!Sayi + 1
Else
GSiradaki = 1
End If
Forms![F_YTEKLIF_H]![MTN_ID] = "TUR" & GTarih & "-" & GKullanici & GSiradaki
rs1.Close
End If
End Sub
kodu ekle,
- Aynı sayfadaki Komut351'in tıklandığında olayındaki
Forms![F_YTEKLIF_H].[Form].[Komut353].Enabled = True
kodunun altına
Call SiraNoVer
kodu ekle.