verideki belli bir bölümü almak
#1
access-sql-18 
Arkadaşlar örnek dosyada 3 ayrı tablom mevcut bunlardan tablo alt olana tablo geçicinin içindeki verileri eklemek istiyorum. buraya kadar sıkıntı yok fakat ben ayrıca gecici dosyadan ekleme yapmadan önce bi kontrol yapmasını ve bu kontrol sonrasında anaid alanına bi id atasın istiyorum.
Anlatamıyorum. bir örnek vereyim
form SORGUr vs neyle olursa olsun geçici tablodaki d:\A\ali\ adlı veriyi çektiğimiz varsayarsak d:\ ve \aliyi silip A harfini tablo anadan kontrol edip id numarasını tblalt ın anaid kismina eklemek istiyorum.
yani tblalt a kaydı alırken
anaid 1 dosya ismi ali dosyayolu d:\a\ali\ olarak kaydetmem gerek ama verilerin sayısı değişik olduğundan len() komutu aklıma geldi ama az önceki nedenden dolayı onuda kullanamıyorum umarım sorunumu anlatabilmişimdir. Yardımcı olan herkese şimdiden çok tşk ederim.


Eklenti Dosyaları
.zip   ornek.zip (Boyut: 13,48 KB / İndirilme: 91)



  Alıntı
Bu mesajı beğenenler:
#2
Merhaba..

Bu fonksiyonu bir modüle kaydediniz..:

Visual Basic
  1. Public Function trz(yol As String)
  2. trz1 = InStrRev(yol, "\")
  3. trz2 = Left(yol, trz1 - 1)
  4. trz3 = InStrRev(trz2, "\") + 1
  5. trz = Mid(yol, trz3, (trz1 - trz3))
  6. End Function



Sorgu içinde bu şekilde kullananabilirsiniz..:

SQL
  1. trz([dosyayolu])



d:\A\ali\ dosya yolunda A değerini alırsınız.. Alt klasör çoğalsa bile ilgili bölümdeki değer yine gelir.. Yani d:\A\ali\access\sql yolunda access değerini alırsınız.. Bu değer yardımı ile de gerekli kontrolü yapabilirsiniz..



  Alıntı
Bu mesajı beğenenler:
#3
Örneğiniz ekte
iyi çalışmalr


Eklenti Dosyaları
.rar   ornek.rar (Boyut: 16,87 KB / İndirilme: 80)
Teşekküre gerek yok, Taş atın yeter!!!



  Alıntı
Bu mesajı beğenenler:
#4
Syn adnanyurdakul verdiğiniz örnek için çok tşk edeirm. Mükemmel çalışıyor. Fkat bi konu dikkatimi çekti. Syn taruz beyin verdiği kod daha çok işime yarayacak gibi çünkü sizin kodda ben A harfini değilde aliyi almak istesem sonra ali mehmet olsa kodlamamda hata çıkacak gibime geldi. Çünkü yanlış anlamadıysam mid komutu ile belli biz harf sayısından başlatıp belli bir karaktere kadar aldırmışsınız. kontrolharfi = Mid(rs(2), 4, 1) 4 cü harften sonraki ilk harfi al anlamı taşıyor yorumum yanlış değilse. Buna göre aliyi almak için 5,3 yazmam gerekecek ama ali sonrakinde mehmet olursa sadece meh i alabilecek. Ynede verdiğiniz emek için çok çok tşk ederim.

Syn Taruz bey elinize sağlık. Bu modulu frmdada aynı şekilde kullanabilirim sanırım kanaatimce kusura bakmayın accesste çok iyi değilim uzunca bi süreden sonra elime aldım cafeme bi film müzik prograı yapmaya çalışıyorum. Tekrar tşk ederim.



  Alıntı
Bu mesajı beğenenler:
#5
Merhaba..

Formda da kullanabilirsiniz elbette.. Hatta Adnan beyin prosedürüne entegre ederek direkt kayıt işmemini de gerçekleştirebilirsiniz..



  Alıntı
Bu mesajı beğenenler:
#6
Syn Adnan bey ve syn Taruz bey ikinizede ayrı ayrı tşk ederim. iki ayrı kodu Taruz beyin önerisi ile birleştirdim fakat koyduğum şartta bi sorun var sanırım. Aşadaki kodu inceleyip hatamı söyleyebilirmisiniz acaba? Nasıl denersem deneyeyim ilk kaydı olması gerektiği gibi var diyo eklemiyo geri kalan kayıtları yine tabloya ekliyo.

Visual Basic
  1. Private Sub Komut0_Click()
  2. Dim rs As New ADODB.Recordset
  3. Dim rs1 As New ADODB.Recordset
  4.  
  5. rs.Open "tblgececi", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
  6. rs1.Open "tblalt", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
  7.  
  8. Do Until rs.EOF
  9. If rs!dosyayolu <> rs1!dosyayolu Then
  10. kontrolharfi = anamenu(rs(2))
  11. IDbul = DLookup("ID", "tblana", "dosya_adi ='" & kontrolharfi & "'")
  12. rs1.AddNew
  13. rs1(1) = CInt(IDbul)
  14. rs1(2) = rs(1)
  15. rs1(3) = rs(2)
  16. rs1.Update
  17. Else
  18. MsgBox "dosya mevcut"
  19. End If
  20.  
  21. rs.MoveNext
  22. Loop
  23.  
  24. 'eğer tblgececi yi tamamen silmek isterseniz aşağıdaki kodun koment' lerini kaldırın
  25. 'DoCmd.SetWarnings (False)
  26. 'DoCmd.RunSQL "delete from tblgececi"
  27. 'DoCmd.SetWarnings (True)
  28.  
  29.  
  30. End Sub





  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  Access Ile Web Den Veri Almak Ve Güncelleme Yapmak. karamurat42 0 345 08-10-2024, 15:42
Son Mesaj: karamurat42
  Ana Forma Bağlı Alt Formdaki Verilerin Ana Formda Toplamını Almak ozan028 5 496 09-09-2024, 17:14
Son Mesaj: ozan028
  Farklı Tablodan Mükerrer Olmayan Bilgi Almak bilservisci 5 535 17-12-2023, 18:04
Son Mesaj: dsezgin
  Access'e Excelden Dış Veri Almak snapper 3 502 02-10-2023, 22:55
Son Mesaj: dsezgin
  Formda Isteğimize Göre Makbuzda Belli Yerlerin çıkmaması ankaram 4 432 03-09-2023, 23:16
Son Mesaj: ankaram
  [FORM] Sürekli Formda Belli Bir Sütundaki Satırları Tek Bir Metin Kutusunda Birleştirme dormin 4 632 18-01-2023, 14:29
Son Mesaj: dormin
  Başlıkları Aynı Olmayan EXcel Tablosunu Dosya Bul Butonu Ile Accese Veri Almak snapper 1 517 17-12-2022, 03:13
Son Mesaj: dsezgin
  Aktif Formda Raporu Pdf Olarak Almak ankaram 4 439 06-11-2022, 22:40
Son Mesaj: onur_can

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar):