Access 2003 tabloları ilişkilendirme sorunu

Katılım
18 Ocak 2009
Mesajlar
18
Excel Vers. ve Dili
2010, 2007 veya 2003 English
Access 2003 tabloları ilişkilendirme sorunu-RESİMLİ+Dosya

Merhaba arkadaşlar,

Okulumuzun IT malzemelerinin listesini tutacak bir Access programı yazıyorum. Ana tabloya bağlı formda mavi ile işaretlediğim kısımların birbirleri ile ilişkili olmasını istiyorum ki mesela PC'yi seçince markalar alttaki açılan kutuya gelecek ve ordan markayı seçincede bir altındaki açılan kutuya sadece o markata ait modeller gelecek.
Aşağıya resimleri ve dosyayı (Access 2003) ekledim. Yardımcı olursanız çok makbule geçecek.
Saygılarımla

Teoman





Dosya: (232KB)
http://oceanwh.fileave.com/Inventory.mdb
 
Son düzenleme:
Katılım
19 Eylül 2008
Mesajlar
331
Excel Vers. ve Dili
2003
Sayın PulsarKuant
bir tane markalar ve modeller tablosu hazırlamalasınız markalar tablosunda MarkaID(otomototik sayı olmalı). model tablosunda ise MarkaID(sayı )olmalı tabiiki tabloların diğer alanlarını siz yazacaksınız.
Bunları yaptıktan sonra ilişkilerden ModelID birbirine bağlayın (bire Çok ilişki) ve otomotik form oluşturun . Bu formda Modellerin altform olduğunu göreceksiniz. Bir kaç Kayıt girin Yaptıklarınızla forma dönün yardımcı olalım iyi çalışmalar
 
Katılım
18 Ocak 2009
Mesajlar
18
Excel Vers. ve Dili
2010, 2007 veya 2003 English
Sağolun Adnan bey söylediklerinizi aynen yapmaya çalışacağım.
 
Katılım
19 Eylül 2008
Mesajlar
331
Excel Vers. ve Dili
2003
Sayın PulsarKuant
Biraz vakit buldum istediklerinizi yaptım yeni tablo ve formlarda ekledim.Umarım yardımı olur İyi çalışmalar
 

Ekli dosyalar

Son düzenleme:
Katılım
18 Ocak 2009
Mesajlar
18
Excel Vers. ve Dili
2010, 2007 veya 2003 English
Sayın PulsarKuant
Biraz vakit buldum istediklerinizi yaptım yeni tablo ve formlarda ekledim.Umarım yardımı olur İyi çalışmalar
Adnan kardes ellerine saglik cok guzel oldu ya. Su an anlamaya calisiyorum yaptiginizi ama beklentimin otesinde oldugu kesin. Cok tesekkur ederim.
 
Katılım
19 Eylül 2008
Mesajlar
331
Excel Vers. ve Dili
2003
selam istediğin bunun gibimi ?
Yazdıklarının tamamını yapıyor yanlış mı anlıyorum ama ektekileri yaptım sen daha geliştirisin
 

Ekli dosyalar

Katılım
18 Ocak 2009
Mesajlar
18
Excel Vers. ve Dili
2010, 2007 veya 2003 English
Hocam tam olarak anlamışsınız. Tek problem mesela yeni bir cihazı girmek istediğimde hala PC kategorisindeki ürünün detaylarını veriyor. Örneğin Access Point kategorisine bir ürün giriyorum Brand olarak ASUS yazıyorum ancak model kısmına hala PC'den kalan modelleri gösteriyor. Ayrıca tabloda olmayan bir kategrori girince yeni kayıt oluşturmak fikri çok güzel ancak hata veriyor.
Yardımlarınız ve harcadığınız vakit için çok teşekkür ederim.
 
Katılım
18 Ocak 2009
Mesajlar
18
Excel Vers. ve Dili
2010, 2007 veya 2003 English
Merhaba hocam,
Size cok zahmet verdik ancak urun girisinde bir problem var. Kendim duzeltmeye calistim ama bilgi seviyem yeterli degil.
Sadece tablolari bosaltip dosyayi tekrar upload ettim.
Hatayi gormek icin FormINVyi acip yeni bir kayit doldurmaya baslayinca ortaya cikiyor. Yeni bir kayit gorunce programiniz direk bunu listeye eklemek istiyorki bu cok guzel bir fikir ancak hata veriyor.
Haricinde hersey beklediigimden cok daha guzel oldu.
Saygilarimla

Teoman

Inventory
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın pulsarkuant,

Uygulamanızı indirdim ancak herhangi bir hataya rastlamadım. Normal kayıt eklenebiliyor.

Sizde oluşan hata nedir?

İyi çalışmalar
 
Katılım
9 Ocak 2009
Mesajlar
16
Excel Vers. ve Dili
2003 sp3
arkadaşlar excel ve access db konusuna yeniyim.. ancak içerik ve bilgi paylaşımından gördüğüm kadarıyla konuları anlamaya başlıyorum... hepinize başarılar.. hayırlı günler..
 
Katılım
18 Ocak 2009
Mesajlar
18
Excel Vers. ve Dili
2010, 2007 veya 2003 English
Sayın pulsarkuant,

Uygulamanızı indirdim ancak herhangi bir hataya rastlamadım. Normal kayıt eklenebiliyor.

Sizde oluşan hata nedir?

İyi çalışmalar
Çok garip evdeyim ve Access2007 ile aynı dosyayı açtım çalışıyor ancak diğer bilgisayara geçip 2003 ile açınca hata veriyor ve debug penceresini açıyor. Bu sadece yeni kayıt girerken oluyor. Diğer bilgisayar iş yerinde en kısa zamanda enran görüntülerinide göndereceğim.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Çok garip evdeyim ve Access2007 ile aynı dosyayı açtım çalışıyor ancak diğer bilgisayara geçip 2003 ile açınca hata veriyor ve debug penceresini açıyor. Bu sadece yeni kayıt girerken oluyor. Diğer bilgisayar iş yerinde en kısa zamanda enran görüntülerinide göndereceğim.
Ben xp ve office 2003 ile çalıştırdım.
 
Katılım
18 Ocak 2009
Mesajlar
18
Excel Vers. ve Dili
2010, 2007 veya 2003 English
Ayni hata devam ediyor. Asagida resimdeki sekilde kayit girisinde sorun cikiyor.



 
Katılım
18 Ocak 2009
Mesajlar
18
Excel Vers. ve Dili
2010, 2007 veya 2003 English
Normalde olmasi gereken sekil ise asagidaki resimlerdeki gibi. Bunuda cozdukmu tamamdir.




 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın pulsarkuant,

Hakşısınız ama çok hatanız var.

Birincisi frmmarka yazmışsınız formun adı frmMarka
İkincisi açılan formun kayıt kümesini değiştiremezsiniz.
Hiç formla üğraşmadan direkt olarak bilgiyi tblMarka ya kayıt etmek ADO ile

Dim rst As New ADODB.Recordset

rst.Open "tblMarka", CurrentProject.Connection, adOpenKeyset, adLockOptimistic

rst.AddNew
rst(1) = Me.Type
MsgBox Me.Brand.Column(0)
rst(2) = Me.Brand.Column(1)
rst.Update
rst.Close

gibi.

Herneyse düzeltilmesi gereken çok yeri var.

Artık iş yarına kaldı
 
Katılım
18 Ocak 2009
Mesajlar
18
Excel Vers. ve Dili
2010, 2007 veya 2003 English
Sayın pulsarkuant,

Hakşısınız ama çok hatanız var.

Birincisi frmmarka yazmışsınız formun adı frmMarka
İkincisi açılan formun kayıt kümesini değiştiremezsiniz.
Hiç formla üğraşmadan direkt olarak bilgiyi tblMarka ya kayıt etmek ADO ile

Dim rst As New ADODB.Recordset

rst.Open "tblMarka", CurrentProject.Connection, adOpenKeyset, adLockOptimistic

rst.AddNew
rst(1) = Me.Type
MsgBox Me.Brand.Column(0)
rst(2) = Me.Brand.Column(1)
rst.Update
rst.Close

gibi.

Herneyse düzeltilmesi gereken çok yeri var.

Artık iş yarına kaldı

Teşekkür ederim:) En azından yarında olsa bir umut var:) Şimdi orda yarın olunca burda daha da öte oluyor ya:)))
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın pulsarkuant,

Brand açılan kutusuyla ilgili listede olmayan olayı kodlarını aşağıdakilerle değiştirin.

Kod:
Private Sub Brand_NotInList(NewData As String, Response As Integer)
Dim strSql As String
Dim i As Integer
Dim msg As String


msg = "'" & NewData & "' Kayıt Tabloda Bulunmamaktadır" & vbCr & vbCr
msg = msg & "Bunu Tabloya Yeni Kayıt Olarak Eklemek İstermisiniz...?"

i = MsgBox(msg, vbQuestion + vbYesNo, "Kategori dışı Bilgi...")
    If i = vbYes Then
    strSql = "INSERT INTO tblMarka([TypeId],[MarkaAd]) " & _
            "VALUES (" & Me.Type & ",'" & NewData & "');"
    
        DoCmd.SetWarnings False
        DoCmd.RunSQL strSql
        DoCmd.SetWarnings True
        MsgBox "Yeni Marka Listeye Eklendi." _
            , vbInformation, "Kategori Dışı Bilgi Eklendi"
        Response = acDataErrAdded
    Else
        MsgBox "Lütfen listeden bir marka seçin." _
            , vbInformation, "Marka"
        Response = acDataErrContinue
    End If
cboJobTitle_NotInList_Exit:
    Exit Sub
cboJobTitle_NotInList_Err:
    MsgBox Err.Description, vbCritical, "Error"
    Resume cboJobTitle_NotInList_Exit
End Sub
Model ile ilgili tablonun yapısında bir tutarsızlık var. Seri No ve Prodact Id ile ilgili bilgileri hem tblDescription da hemde tblINV kaydediyorsunuz, burada tutarsızlık var önce bu nokta ile ilgili kararınızı verin ki öyle ilerleyelim.

Model Not in list olayı için ekleme kodu yazmaya çalıştığımızda daha girilmemiş bilgilere de ihtiyacımız olacak ve bu noktada kitleneceğiz.

İyi çalışmalar
 
Katılım
18 Ocak 2009
Mesajlar
18
Excel Vers. ve Dili
2010, 2007 veya 2003 English
Sayın pulsarkuant,

Brand açılan kutusuyla ilgili listede olmayan olayı kodlarını aşağıdakilerle değiştirin.

Kod:
Private Sub Brand_NotInList(NewData As String, Response As Integer)
Dim strSql As String
Dim i As Integer
Dim msg As String


msg = "'" & NewData & "' Kayıt Tabloda Bulunmamaktadır" & vbCr & vbCr
msg = msg & "Bunu Tabloya Yeni Kayıt Olarak Eklemek İstermisiniz...?"

i = MsgBox(msg, vbQuestion + vbYesNo, "Kategori dışı Bilgi...")
    If i = vbYes Then
    strSql = "INSERT INTO tblMarka([TypeId],[MarkaAd]) " & _
            "VALUES (" & Me.Type & ",'" & NewData & "');"
    
        DoCmd.SetWarnings False
        DoCmd.RunSQL strSql
        DoCmd.SetWarnings True
        MsgBox "Yeni Marka Listeye Eklendi." _
            , vbInformation, "Kategori Dışı Bilgi Eklendi"
        Response = acDataErrAdded
    Else
        MsgBox "Lütfen listeden bir marka seçin." _
            , vbInformation, "Marka"
        Response = acDataErrContinue
    End If
cboJobTitle_NotInList_Exit:
    Exit Sub
cboJobTitle_NotInList_Err:
    MsgBox Err.Description, vbCritical, "Error"
    Resume cboJobTitle_NotInList_Exit
End Sub
Model ile ilgili tablonun yapısında bir tutarsızlık var. Seri No ve Prodact Id ile ilgili bilgileri hem tblDescription da hemde tblINV kaydediyorsunuz, burada tutarsızlık var önce bu nokta ile ilgili kararınızı verin ki öyle ilerleyelim.

Model Not in list olayı için ekleme kodu yazmaya çalıştığımızda daha girilmemiş bilgilere de ihtiyacımız olacak ve bu noktada kitleneceğiz.

İyi çalışmalar
Hocam esasen o tutarsızlık var dediğiniz tabloları yine bu forumda yardım etmeye çalışan bir arkadaşımız ekledi. Benim ham dosya ilk mesajımdadır zaten ve orada sadece 1 tane tablo vardı. Yapmak istediğim en başından beri kategorilemekti (örneğin; PC>Dell>GX270 gibi)ve bunu için tabloların ilişkilendirilmesi gibi işlemlere gerek vardı ve çakılmıştım.
Nihayetinde ana formumda kategorileme işi hallolduktan sonra orada kaç tablo olduğunun veya hangilerinin silindiğinin hiç bir önemi yok.

Şu aşamada sizlerin bana gösterdiği varolmayan yeni bir girdiyi otomatik olarak uyarmak ve veritabanına eklemek olayı çok güzel. Birde o ilk 3 açılan kutudaki (resimdeki gibi) kategorilemeyi halldersek harika olacak.
Yardımlarınız, harcadığınız vakit ve emek için sonsuz teşekkürler.

Teoman
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın pulsarkuant,

Birşeyler yapmaya çalıştım, umarım aksaklık çıkmaz. Açılan kutular üstünden yeni kayıtları yapabilirsiniz.

İyi çalışmalar
 

Ekli dosyalar

Üst