Bağlı Tablo Yöneticisini Kullanmadan Bağlantı Yapmak

Katılım
27 Ağustos 2006
Mesajlar
69
Merhaba, öncelikle bu konuyu sabahtan beri araştırıyorum. Çözümü için forumda aramadık yer bırkmadım ama yinede başaramadım.

Accessdeki proje aynı klasör içinde bulunan bağlı iki mdb dosyasından oluşuyor. Biri Program.mdb diğeri ise data.mdb.

İl, ilçe gibi değerleri sabit olan tablolar ve formlar program.mdb dosyasında.
Kullanıcıların bilgi gireceği tablolar ise data.mdb dosyasında. Program.mdb den data.mdb ye bağlantı yaptım. (Örneğin Tablo1 tablosu)

Proje bittikten sonra bunları kullanıcılara zip le sıkıştırıp dağıtacağım. Kullanıcılar ise klasörü herhangi bir yerde açacaklar. Bilgisayar kullanmayıda iyi bilmedikleri için Bağlı Tablo Yöneticisini kullanmaları çok zor bir olay.

Bağlı tablo yöneticisine gerek kalmaksızın herhangi bir klasör içerisinde projenin çalışma imkanı varmıdır. Teşekkür ederim.

Not: Maraştayım. Araştırmam sonucu bu işin çözümü ADO falanla yapılacak bişi galiba ama bizim burada sadece MADO Dondurma var. Ado diye bişi yok :)
 
Katılım
14 Ağustos 2007
Mesajlar
291
Excel Vers. ve Dili
office 2003, sql server
Merhaba..
şöylemi yapmak istiyoruz; ben zip gönderecem kullanıcılara ama onlar access veritabanına girip bağlı tabloyu hangi yerdeyse bağlamayı kendileri yapsın.. ama böyle olmasını istemiyorum diyorsun onlar zipi açar açmaz programı çalışdırdıklarında kendisi yolu bulmuş olsun.. eğer doğru anladaysam
iki yöntemi var ..data.mdb yi c: içinde bi klasöre atarsın ve sonra hangi program ordan bağlı tablo olacaksa ordan bağlamayı yaparsın. göndereceğin kişilerede data.mdb yi sadece c içinde şu klasöre koyun dersin sonra program nerdeyse zaten c içinde datayı bulur çalıştırır.. çünkü her bilgisayarda c var veya program files.. birde şöyle yöntemi var access developer diye bi paketleme programı var o kendisi hepsini yapıyor.. package wizard ile yapabilirsin .. kolay gelsin
 
Katılım
27 Ağustos 2006
Mesajlar
69
Öncelikle teşekkür ederim.

Bu çözüm yollarınıda düşündüm. Ancak şu anda data.mdb dosyası en az 325 bilgisayarda kullanılıyor. VE her biri faklı kasör içerisinde.

Ben sadece Program.mdb dosyasını bu kullanıcılara gönderecem. Ve data.mdb dosyası hangi klasör içerisindeyse oraya atın ve kullanmaya başlayın diğeceğim. Ortada DELPHİ ve Access rekabeti var diyebiliriz.

Birileri delphi ile bir program hazırlamış. Bilgileri ise data.mdb dosyasında saklıyorlar. Ancak benim yaptığım program ile kayıt girmek, kayıt aramak vb. çok pratik.

Hatta ben linkide vereyim.
BURADA

Benim yaptığım projede kullanıcı adı ve şifre olmayacak. Önceden girilen kayıtlar görülebilecek. Bir kayıt girmek için 40 tane yere tıklanmayacak.

Cem Uzan gibi konuştum ama gerçekten çok fark var ne yapayım.

Bence program yazan kişi kendini değil kayıt girecek kullanıcıyı düşünmeli.

Gerekirse 5 gün fazla uğraşacaksınız ama sonunda 325 kişiye eziyet ettirmeyeceksiniz. Benim mantığım böyle.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın altuntaş78,

Delphi ile program yapmışlar ama yanına da Data.UDL diye bir tane de ek var. Buraya da verilerin hangi veritabanı dosyasında olduğunu yazıyorsunuz. Yani burada da aynı işlem var. Hem PaftaKayıtDefteri.exe ve Data.mdb aynı klasörde ve çalışıyor. Data.mdb yi başka bir yere kopyalayın çalışmayacak.

Ancak bağlı tablo yöneticisini çalıştırmak istemiyorsanız bir yöntem aklıma geliyor, tüm bilgisayarı tarayan bir kod var ancak şu an nerede bilemiyorum. Belki bu şekilde bir yere varabilirsiniz. ancak veri alışverişi Bağlı tablolarla değil de ADO kodlarıyla olması gerekir.

İyi çalışmalar
 
Katılım
27 Ağustos 2006
Mesajlar
69
Peki PaftaKayıtDefteri.exe kullandığı biçimde acceste Data.UDL dosyasını kullanabilirmi?


Benim yaptığım projeyi de kullanıcılar data.mdb dosyasının olduğu yere atacaklar. İsterlerse benim yaptığımı isterlse PaftaKayıtDefteri.exe kullanacaklar.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Pek emin değilim ama sanırım access Data.UDL yi kullanamaz. Ve bağlı tablo var ise mutlaka bağlı tablo yöneticisinin bir kez de olsa çalıştırılması gerekir.

Bağlı tablo yöneticisini çalıştıran kod işiniz görür mü?
 
Katılım
27 Ağustos 2006
Mesajlar
69
Epey uğraştım Data.UDL için ama olmadı. Ne yapalım artık. Bağlı tablo yöneticisini çalıştıran kodu forumda buldum. İlginiz için çok teşekkür ederim.

Bir yardım dosyası hazırlar kullanıcılara tabloları nasıl bağlayacaklarını tarif ederim artık.
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
soru biraz abes kaçabilir belki ama

neden tek bir mdb yapmıyorsunuz?
 
Katılım
27 Ağustos 2006
Mesajlar
69
Çünkü genel müdürlük data.mdb dosyasını cd ye çekip kullanıcılardan toplayacak.
Daha doğrusu şu anda memurlar bazı kayıtlar girmiş olabilirler. Kullanıcılara sil baştan bu programı kullanın diyemem.

PaftaKayıtDefteri.exe programının en kötü tarafı ne biliyormusunuz? Önceden girmiş olduğunuz kayıtları göremiyorsunuz. Nasıl bir mantıktır anlayamadım. Kullanıcı nerde kaldığını hatırlamak zorunda :)
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın yeni54,

En başta verilerin emniyeti için.

Ağda çok kullanıcılı bir access veri tabanı kullanabilmek için, veri tabanını ikiye bölüp birine tabloları diğerine de diğer tüm nesneleri atıp, bağlı tablo yöneticisi ile bağlarız. böylece aynı anda birden çok kullanıcı veritabanına ulaşıp işlem yapabilir.

Ancak bunda durum farklı. Başka bir uygulamayla oluşmuş ve içinde tablolar olan bir veritabanı var, bu veritabanına ayrıca başka bir access uygulamasından ulaşılmak isteniyor.

İyi çalışmalar
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
çoklu kullanımdan bahsedilmediği için sormuştum aslında.

ağ üzerinde kullanım olmayacaksa, 300-500 kişiyle sürekli böyle uğraşmaktansa (ki, kimisi makinayı formatlayacak, kimi yeni makina alacak falan filan)
tek bir dosya olur, nereye kopyalarsa kopyalar diye düşünmüştüm aslında.

birkereliğine adamlardan dosyaları istenir, formlar ve veriler birleştirilir sonra
geri gönderilir ve dertler biter diye düşünmüştüm. (uyanığımya biraz :))
 
Katılım
27 Ağustos 2006
Mesajlar
69
sayın yeni54 pratik çözüm önerileriniz için teşekkür ederim. :)
 
Son düzenleme:

akd

Destek Ekibi
Destek Ekibi
Katılım
14 Ağustos 2004
Mesajlar
1,114
Excel Vers. ve Dili
2003
Merhaba arkadaşlar,
Ben excel den mdb dosyasına aşağıdaki gibi başlanıyordum,
yani konu sahibi arkadaşın istedigi gibi, aktif klasörün içindeki mdb dosyasındaki diye arıyor kod, bakın belki size bir fikir verir...
Private Sub UserForm_Initialize()
Set adoCN = CreateObject("ADODB.Connection")
DatabasePath = ThisWorkbook.Path & "\AKD.STOK.mdb"
If Dir(DatabasePath) = "" Then
MsgBox DatabasePath & " bulunamadı, programdan çıkılacak !", vbCritical, "TestMDB"
Unload Me
Exit Sub
End If
adoCN.Provider = "Microsoft.Jet.OLEDB.4.0"
adoCN.ConnectionString = DatabasePath
adoCN.Open

End With
urunal
End Sub
 

akd

Destek Ekibi
Destek Ekibi
Katılım
14 Ağustos 2004
Mesajlar
1,114
Excel Vers. ve Dili
2003
DatabasePath = ThisWorkbook.Path & "\" & AcYedek & ".mdb"
Bu şekil yaptım sorunsuz çalışıyor.
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Benden başka bir öneri: Veriler Access'ten SQL server datalarına convert edilir(bunun için çok pratik yollar var). Sonra kullanıcıların kullandıkları Access dosyasına yapılan alias üzerinden ODBC ile bağlanılır. Fakat burada tabii bazı sıkıntılar var. En önemlisi Delphi üzerinden bağlananlar aynı verilere yazamayacaklardır. Delphi programcısının da verileri ODBC ile bağlaması gerekecek.. Bu yapılabilir mi bilmiyorum. Ama bu yolla alias (yol tanımı diyelim) yapıldığı için verilerin bağlantıları kurulum paketine dahil edilmiş olur. Delphi ile yapılan data.UDL de bence benzeri bir iş yapıyor. Belki onun içi okunursa verilerin yolu delphide de değiştirilebilir. Ama Delphi bilmiyorum, verilerin Access değil de SQL olması bu kadarcık bir yol değişikliğiyle halledilemez diye düşünüyorum.
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
DatabasePath = ThisWorkbook.Path & "\" & AcYedek & ".mdb"
Bu şekil yaptım sorunsuz çalışıyor.
Örnek ekleseniz ne güzel olur. Biz de kullanırız bu yöntemi. Çünkü ben de aynı şekilde iki mdb dosyası ile hazırlıyorum programlarımı. Ama tek bir setup.exe ile kurulum dosytası yapıp yolların standart olmasını sağlıyorum. Sizin örneğiniz işe yarayabilir.
 

akd

Destek Ekibi
Destek Ekibi
Katılım
14 Ağustos 2004
Mesajlar
1,114
Excel Vers. ve Dili
2003
Esas koda dikkat ederseniz, ben excelle ADO ile mdb dosyalarından bilgi almak için yapmıştım bu proğramı,
aynı klasörde olan başka mdb dosyasına bağlanabilirligini göstermek istemiştim,
aslında bende müsait zamanda altuntas78 arkadaşımın yapmak istedigi olayı yapmayı planlıyordum, onlar şu anda olayın içinde oldukları için , bir bakıma banada klavuzluk edecekler, elimde örnek yok malesef,
arkaşların sonuçlerini bende merak ediyorum doğrusu.
İyi çalışmalar...
 
Üst