mükerrer vb6

Katılım
20 Aralık 2006
Mesajlar
939
Excel Vers. ve Dili
türkçe
arkadaşlar vb6 da
text2 ye barkod giriyorum
istediğim eğer aynı barkoddan giriş varsa uyarması
ve giriş yapmaması
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın Fuat Şirin,

Kod:
Dim cn As ADODB.Connection, rs As ADODB.Recordset, r As Long
    Set cn =  New ADODB.Connection
    cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " &  "Data Source= C:\db.mdb"

   Set rs = New  ADODB.Recordset
   rs.Open "tabloadınız", cn, adOpenKeyset, adLockOptimistic,  adCmdTable
  
  If rs.RecordCount > 0 Then
          Do Until  rs.EOF
                 If  rs.Fields("barkod") =Text2.Text Then
                            msgbox "Kayıt Zaten  Var"
                            rs.Close
                            Set  rs =  Nothing
                            cn.Close
                            Set  cn = Nothing
                            Exit Sub
                 end  if
                 rs.MoveNext
          Loop
  End if
gibi birşey olması lazım. Malum deneyemiyorum.

İyi çalışmalar
 
Katılım
20 Aralık 2006
Mesajlar
939
Excel Vers. ve Dili
türkçe
hocam çok teşekkür

Bilginize ve paylaşımınıza güvenerek bir şey daha sormak istiyorum konu ile

alakalı

veriyi sayfaya atarken 12,50 gibi atıyorum

sayfada 12,5 olarak gözüküyor

3bu veriyi geri text5 e çağırıyorum mesela

bu sefer 125 olarkak gözüküyor

bu format olayını çözemedim

access sayfaya atarken ve veriyi geri text e çağırdığımızda hep 12,50 olarak

görmemiz için ne yapmak lazım hocam
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın Fuat Şirin,

Access uygulamanıza nasıl kaydediliyor. Acceessi açıp tablodan sonucu söyleyebilirmisiniz?

İyi çalışmalar
 
Katılım
20 Aralık 2006
Mesajlar
939
Excel Vers. ve Dili
türkçe
kodlar

Kod:
Private Sub Command1_Click()
On Error Resume Next
    Adodc1.Refresh
    Adodc1.Recordset.AddNew
    Adodc1.Recordset.Fields(1) = Text1
    Adodc1.Recordset.Fields(2) = Text2
    Adodc1.Recordset.Fields(3) = Text3
    Adodc1.Recordset.Fields(4) = Text4
    Adodc1.Recordset.Fields(5) = Text5
    Adodc1.Recordset.Fields(6) = Text6
    Adodc1.Recordset.Fields(7) = Text7
    Adodc1.Recordset.Fields(8) = Text8
    Adodc1.Recordset.Update
    Set DataGrid1.DataSource = Adodc1
    DataGrid1.Refresh
    Command2_Click
    Form_Load
    
End Sub

Private Sub Command2_Click()
Text1.Text = Date
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
Text7.Text = ""
Text8.Text = ""
End Sub


Private Sub Form_Load()
On Error Resume Next
'depo giriş klasörünü aktif eden kodlar
Adodc1.ConnectionString = "Provider=Microsoft.Jet.Oledb.4.0; Data Source=" & App.Path & "\Magza.mdb"
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = "select * from dg ORDER BY Barkod"
Adodc1.Refresh
If Adodc1.Recordset.RecordCount <> 0 Then
VeriSet
Set DataGrid1.DataSource = Adodc1
End If
DataGrid1.Refresh

End Sub

Private Sub VeriSet()
        Text9 = Adodc1.Recordset.Fields(0)
        Text1 = Adodc1.Recordset.Fields(1)
        Text2 = Adodc1.Recordset.Fields(2)
        Text3 = Adodc1.Recordset.Fields(3)
        Text4 = Adodc1.Recordset.Fields(4)
        Text5 = Adodc1.Recordset.Fields(5)
        Text6 = Adodc1.Recordset.Fields(6)
        Text7 = Adodc1.Recordset.Fields(7)
        Text8 = Adodc1.Recordset.Fields(8)
End Sub

hocam bu kodları kullanarak kaydediyorum
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Kodları kast etmedim. Access tablosuna 12,5 yoksa 125 olarak mı kaydediliyor. Bir de ek olarak accessteki tabloda ilgili alan ne olarak tanımlanmış?
 
Katılım
20 Aralık 2006
Mesajlar
939
Excel Vers. ve Dili
türkçe
text olarak tan&#305;mlad&#305;m hocam sayfaya ge&#231;erken
12,5 olarak ge&#231;iyor

Say&#305;ya &#231;evirmeyi bulamad&#305;m
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Hata Amerikan ve Türk sistemlerinin çakışmasından oluşuyor. Amerkan sistemde ondalık ayracı . bizde ise , Karışıklık ordan ileri geliyor.

Aklıma şöyle bir şey geldi:

Kod:
'İşlemler yapılmadan önce bir değişkende saklamak için değişken tanımladım
Dim temp As Variant
'Eğer sayımız ondalık bir sayı ise virgülün birden fazla kullanılmasını
'engellemek gerekiyor bunun için de bir değişken tanımladım
Dim ondalık As Boolean
Private Sub Form_KeyPress(KeyAscii As Integer)
Dim sTemplate As String
'Basılan tuş virgül olsa da sistem bunu . olarak algılamalı
've birden fazla kullanmamalı
ondalık = False

ondalık = InStr(1, Text1.Text, ".")
If ondalık <> 0 Then
ondalık = True
End If
If ondalık = True And (KeyAscii = 44 Or KeyAscii = 46) Then
KeyAscii = 0
Else
'Aşağıdaki kısımda virgül basılmış olsa da sisteme bunu nokta olarak gönderdik
If KeyAscii = 44 Then
KeyAscii = 46
End If
End If

Private Sub Text1_Change()
'klavye kullanarak girişte sorunu çözdük ancak aynı sorun form üzerinde maus kullanarak girişte
'devam etmekte bunu da engellemek için yukarıdaki kodları Text1'in change olayına yazıjyoruz
ondalık = False
ondalık = InStr(1, Text1.Text, ".")
If ondalık <> 0 Then
tuşlar(10).Enabled = False
End If
'klavyeden ondalık sayı girilip backspace tuşuyla silindiğinde .'nın tekrar enable olması gerekir.
If Text1.Text = "" Or ondalık = 0 Then tuşlar(10).Enabled = True
'İmlecin focus'tan sonra sürekli rakamların sağında olması için ekranın alamayacağı bir sayı yazdım
Text1.SelStart = 20
Text1.SetFocus
End Sub
İyi çalışmalar
 
Katılım
20 Aralık 2006
Mesajlar
939
Excel Vers. ve Dili
türkçe
hocam tamam hakl&#305;s&#305;n&#305;z . , den kaynaklan&#305;yor
vistada denedim &#351;imdi &#231;al&#305;&#351;&#305;yor
 
Üst