Skip to main content

AccessTr.neT


kodlar.mdb nin ilceler tablosundan sahıs.mdb nin sahıs vt alanındaki kaydı tamamlamak.

kodlar.mdb nin ilceler tablosundan sahıs.mdb nin sahıs vt alanındaki kaydı tamamlamak.

Çözüldü #1
tblSAHIS tabllosunun ilcekodu alanı boş, il adı ve ilce adı alnları dolu ise Aynı veritabanında bulunan ytbl_MERNISILCEKOD tablosunda il adı ve ilce adı tblsahıstakilerle eşleşiyorsa ilçe kodunu alıp Tblsahıs.ılcekodu alanını güncelleyen kodları alpeki ve sleadgeab hocalarım sayesinde çözdüm.

ancak genel senaryoda böyle bir şey mümkün değil. MERNISILCEKOD tablosu başka bir veritabanı içinde olsa (idi ki öyle olmalı) mesala (vtKODLAR.MDB) aşağıdaki visiual basic kodları nasıl değişmelidir?






Private Sub Komut21_Click()
'sleadgeab / accestr
Dim kaynak_tablo_sql, hedef_tablo_sql, hedef_id, islem_sql As String
Dim sira As Integer
Dim ks As ADODB.Recordset
Set ks = New ADODB.Recordset

DoCmd.SetWarnings False

kaynak_tablo_sql = "SELECT VATNO, SHS_NKOIL, SHS_NKOILCE, SHS_NKOILCEKODU FROM tblSAHIS"
ks.Open kaynak_tablo_sql, CurrentProject.Connection, adOpenStatic, adLockReadOnly

Say = 0
If Not ks.BOF And Not ks.EOF Then
If ks.EOF <> True Then
Do
With ks

If IsNull(.Fields("SHS_NKOILCEKODU")) Then
Say = Say + 1
If IsNull(.Fields("SHS_NKOIL")) Then
islem_sql = "UPDATE tblSAHIS SET tblSAHIS.SHS_NKOILCEKODU = '9999' WHERE (((tblSAHIS.[VATNO])='" & .Fields("VATNO") & "'));"
DoCmd.RunSQL islem_sql
GoTo ATLA
End If

If .Fields("SHS_NKOIL") <> "0" And .Fields("SHS_NKOILCE") <> "0" Then
ilimiz = .Fields("SHS_NKOIL")
ilcemiz = .Fields("SHS_NKOILCE")
hedef_id = Nz(DLookup("MRNS_ILCEKODU", "ytbl_MERNISILCEKOD", "MRNS_ILCEADI='" & ilcemiz & "'"), "9999")

If hedef_id = "9999" Then
hedef_id = Nz(DLookup("MRNS_ILCEKODU", "ytbl_MERNISILCEKOD", "MRNS_ILADI='" & ilimiz & "' AND MRNS_DIGERILCEADI='" & ilcemiz & "'"), "9999")
End If

If hedef_id = "9999" Then
hedef_id = Nz(DLookup("MRNS_ILCEKODU", "ytbl_MERNISILCEKOD", "MRNS_ILADI='" & ilimiz & "' AND MRNS_DIGERILCEADI2='" & ilcemiz & "'"), "9999")
End If

islem_sql = "UPDATE tblSAHIS SET SHS_NKOILCEKODU ='" & hedef_id & "' WHERE VATNO='" & .Fields("VATNO") & "'"
DoCmd.RunSQL islem_sql
Else
hedef_id = Dlookup ("TRF_PLKKODU", "ytbl_MERNISILCEKOD", "MRNS_ILADI='" & ilimiz & "'")
islem_sql = "UPDATE tblSAHIS SET SHS_NKOILCEKODU = 99 & '" & hedef_id & "' WHERE VATNO='" & .Fields("VATNO") & "'"
DoCmd.RunSQL islem_sql
End If

ATLA:
End If
ks.MoveNext
End With
Loop Until ks.EOF
End If
MsgBox "İşlem başarıyla tamamlandı. - DegKaySay: " & Say, vbInformation + vbOKOnly, "AccessTR.Net"
Else
MsgBox "Tabloda kayıt yok"
End If
End Sub
Cevapla
Çözüldü #2
kodda oynama yapmadan bağlı tablo yöneticisini kullanarak vtKODLAR.MDB veritabanındaki herhangi bir tabloyu geçerli veritabanınızda kullanabilirsiniz.

bkz #37
Cevapla
Çözüldü #3
hocam Acces versiyonu olarak ofiste 2010 evde 2007 kullanıyıorum.
Bağlı tablo yöneticisini kullanamay inceleyeceğim. bununla ilgili forum dersi örnek uygulama ise link verir misiniz?
Ama illada kodlarla olsun dersek nasıl olmalıdır?
Cevapla
Çözüldü #4
Köprü varken boğazı yüzerek geçeyim diyorsunuz yani Img-grin Ezbere iş yapmayalım geçen sorunuzda öyle yaptınız şartları değiştirdiğiniz için daha soruya bile bakasım gelmiyor. Tam olarak olması gerekenleri yazın ya da dosyaları (gerçekte nasılsa) koyun ona göre çözüm bakalım.
AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla
Çözüldü #5
En son indirdiğiniz dosyada yrd. tabloyu başka çalışma kitabına pardon mdb ye alınız. kalanı aynı değiştirmeyeceğim söz.
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task