Skip to main content

AccessTr.neT


Mükerrer Kayıt Sorunu

Mükerrer Kayıt Sorunu

Çözüldü #1
aşağıda verdiğim kod ile ben gelen giden evrak kayıt işlemi yapıyorum ancak aynı anda iki kullanıcı sıra no ver dediği zaman .. aynı sırayı alıyorum. tek kullanımda sorun yok ancak iki ve daha fazla kullanıcıda mükerrer kayıt oluşuyor. ( ÖRNEK 2017/17507 - 2017/17507) gibi


Private Sub Komut11_Click()
Dim b As Integer
b = (Nz(DMax("[FİŞNO]", "Siparişgiden", "[TİPİ]= Forms!frm_siparisgiden!MyTipi And [dizin] = Forms!frm_siparisgiden!Mydizin"), 0)) + 1

If b = 0 Then
If Me.MyTipi = "2013" Then
Me.Mynumara = 1
ElseIf Me.MyTipi = "2014" Then
Me.Mynumara = 1
ElseIf Me.MyTipi = "2015" Then
Me.Mynumara = 1
ElseIf Me.MyTipi = "2016" Then
Me.Mynumara = 1
ElseIf Me.MyTipi = "2017" Then
Me.Mynumara = 1
ElseIf Me.MyTipi = "2018" Then
Me.Mynumara = 1
ElseIf Me.MyTipi = "2019" Then
Me.Mynumara = 1
ElseIf Me.MyTipi = "2020" Then
Me.Mynumara = 1
ElseIf Me.MyTipi = "2021" Then
Me.Mynumara = 1
ElseIf Me.MyTipi = "2022" Then
Me.Mynumara = 1
End If
Else
Me.Mynumara = b
End If
'If Me.TİPİ = "2013" And (Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2013'"), 0)) = 0 Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2013'"), 0) + 00000000000: Exit Sub
'If Me.TİPİ = "2013" Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2013'"), 0) + 1
'If Me.TİPİ = "2014" And (Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2014'"), 0)) = 0 Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2014'"), 0) + 00000000000: Exit Sub
'If Me.TİPİ = "2014" Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2014'"), 0) + 1
'If Me.TİPİ = "2015" And (Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2015'"), 0)) = 0 Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2015'"), 0) + 00000000000: Exit Sub
'If Me.TİPİ = "2015" Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2015'"), 0) + 1
'If Me.TİPİ = "2016" And (Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2016'"), 0)) = 0 Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2016'"), 0) + 00000000000: Exit Sub
'If Me.TİPİ = "2016" Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2016'"), 0) + 1
'If Me.TİPİ = "2017" And (Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2017'"), 0)) = 0 Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2017'"), 0) + 00000000000: Exit Sub
'If Me.TİPİ = "2017" Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2017'"), 0) + 1
'If Me.TİPİ = "2018" And (Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2018'"), 0)) = 0 Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2018'"), 0) + 00000000000: Exit Sub
'If Me.TİPİ = "2018" Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2018'"), 0) + 1
'If Me.TİPİ = "2019" And (Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2019'"), 0)) = 0 Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2019'"), 0) + 00000000000: Exit Sub
'If Me.TİPİ = "2019" Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2019'"), 0) + 1
'If Me.TİPİ = "2020" And (Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2020'"), 0)) = 0 Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2020'"), 0) + 00000000000: Exit Sub
'If Me.TİPİ = "2020" Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2020'"), 0) + 1
'If Me.TİPİ = "2021" And (Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2021'"), 0)) = 0 Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2021'"), 0) + 00000000000: Exit Sub
'If Me.TİPİ = "2021" Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2021'"), 0) + 1
'If Me.TİPİ = "2022" And (Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2022'"), 0)) = 0 Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2022'"), 0) + 00000000000: Exit Sub
'If Me.TİPİ = "2022" Then FİŞNO = Nz(DMax("FİŞNO", "Siparişgiden", "TİPİ = '" & "2022'"), 0) + 1
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Komut6_Click()
On Error GoTo Err_Komut6_Click

   DoCmd.GoToRecord , , acNewRec
 
  'Call Kod_Ver
 
Exit_Komut6_Click:
   Exit Sub
Err_Komut6_Click:
   MsgBox Err.Description
   Resume Exit_Komut6_Click
   
End Sub
Sub Kod_Ver()
Dim ks, pryd As Integer, gd As String, bslgc As Boolean, SayiDegeri, trz As Long
SayiDegeri = Nz(DMax("id", "Siparişgiden"), 0) + 1
pryd = 10
trz = Fix(SayiDegeri / pryd)
If trz = 0 Then trz = 1
gd = ""
bslgc = False

For ks = 6 To 1 Step -1
If (trz > (26 ^ ks)) Or (bslgc = True) Then
bslgc = True
gd = gd & Chr(64 + Int(trz / (26 ^ ks)))
trz = trz - ((26 ^ ks) * (Int(trz / (26 ^ ks))))
End If
Next ks
gd = gd & Chr(64 + trz)

While InStr(1, gd, "@") > 0
gd = Trim(Left(gd, InStr(1, gd, "@") - 2) _
& Chr(Asc(Mid(gd, InStr(1, gd, "@") - 1, 1)) - 1) _
& "Z" & Mid(gd, InStr(1, gd, "@") + 1, 7))

While Left(gd, 1) = "@"
gd = Trim(Mid(gd, 2, 7))
Wend
Wend
FİŞNO = gd & "-" & Format(SayiDegeri, "00000000")
End Sub
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
Mükerrer Kayıt Sorunu - Yazar: oosmaner - 23/11/2017, 15:52
Cvp: Acil Yardımmm - Yazar: ozanakkaya - 23/11/2017, 16:32
Cvp: Mükerrer Kayıt Sorunu - Yazar: ozguryasin - 23/11/2017, 22:50
Cvp: Mükerrer Kayıt Sorunu - Yazar: ozguryasin - 23/11/2017, 22:51
Cvp: Mükerrer Kayıt Sorunu - Yazar: oosmaner - 28/11/2017, 15:31
Cvp: Mükerrer Kayıt Sorunu - Yazar: C*e*l*o*y*c*e - 28/11/2017, 16:23
Task