Skip to main content

AccessTr.neT


Yeni gelen Malı hangi Üretici veya Satıcı'dan aldım?

Yeni gelen Malı hangi Üretici veya Satıcı'dan aldım?

#13
Teşekkürler Mevlüt kardeş. Birde böyle deneyeyim bakalım ama 10bin Ürün/Mamül elle girmek nasıl olacak onu henüz bilmiyorum.

Yüzey olarak baktım çok güzel olmuşa benziyor. (Koltukta uyuya kalmışım Sad ) Yarın inceler yazarım.

İyi geceler ve çok Teşekkürler.
Son Düzenleme: 30/01/2016, 05:36, Düzenleyen: bigdaddy_isi.
Cevapla
#14
ürünleri tabloya yine atarız,o sorun değil ama kalıp bu şekil olsun,tabloya veriyi atarız..iyi geceler
Cevapla
#15
Uyku tutmadı geri kalktım  Sadd

Mevlüt kardeş, Listbox'a tıkladığım zaman "Olay Yordamı" bulunamıyor hatası geliyor.

Pardon... meğer "Event Procedure" imiş, ben Access'i Almanca kullandığım için tercüme etmemiş.

Bu arada bir şey farkettim. Türk Access Programcıları genelde ilişkilendirmeyi pek kullanmayıp onun yerine VBA'yı daha çok kullanıyorlar.

Bu Siteden bir çok Program indirip baktım, gördüğüm en kapsamlı Programlarda bile ilişkilendirme HİÇ YOK!

Bunun nedeni nedir acaba?

Halbuki Almanyadakiler tabloları hazırladıktan sonra, ki bütün Alan'ları tek Tabloya yüklemiyorlar, ilişki ile birbirine bağlıyorlar, ardından bir kaç örnek veri verip, daha sonra sorgulamalara geçiyorlar. Form'ları hazırladıktan sonrada yazdırma bölümüne geçiyorlar. Vba ise pek nadir ve sadece kullanılması zorunlu yerlerde kullanıyorlar. En çok değer verdikleri bölüm ise Sorgulamalardır. Zira bütün bilgileri (gerekenleri) Sorgulama ile bir araya topluyorlar (Bende öyle öğrendim).
Son Düzenleme: 30/01/2016, 05:40, Düzenleyen: bigdaddy_isi.
Cevapla
#16
İlişkilendirme ne için yapılır?

1- A tablosundaki veri silindiği/güncellendiği zaman B,C vb. tablolardaki verileri silmek/güncellemek için kullanırsınız. Böylelikle veri tutarsızlığına izin vermezsiniz.

2- Normalizasyon kuralları gereği sürekli tekrar eden verilerden kaçınmak için kullanırız. Aslında bunun ilişkilendirme ile direkt ilişkisi yok. Nitekim ilişkilendirme olmadan da bu iş yapılabilir.

3- Bir kayıt birden çok kayıt ile ilgili ise kullanılır. Elbette birçok kayıt birçok kayıt ile ilgili olduğunda da kullanılır ama bunu boşverin önceki cümle basitçe temsil etsin.

VBA ne için kullanılır?
Herşey için kullanılır ancak ilişkilendirme ile alakası yok.

Sorgu ne için kullanılır?
Form, rapor vb. nesneler üzerinde tablo veya tablolardan gelen verilerin gösterilmesini sağlar.


Görmüş olduğunuz gibi aslında hiç biri birbiri ile ilgili değil ve birbiri ile ilgili. Bu tamamen sizin projenize bağlı. Hiç Vba kodu kullanmadan bir uygulama geliştirebileceğiniz gibi sorgu kullanmadan da uygulama geliştirebilirsiniz. Hatta tablo kullanmadan da uygulama geliştirebilirsiniz.

Veriler ile temelde iki işiniz olacak. Kaydetmek ve görüntülemek. Kaydederken bir malın üreticisini saklamak isterseniz mal ile ilgili tabloda bir tane açılan kutu olacak(combobox). Bu açılan kutuda tüm üreticileri listeleyeceksiniz. Kaydetmek istediğinizde ise üreticileri sakladığınız tablodaki Otomatik Sayı değeri ne ise o değeri kaydedeceksiniz. İşte bu noktada ilişkilendirme söz konusu. İster tablolar arasında sürükle bırak ile ilişkilendirme yapın isterseniz ilişkilendirme yapmayın. Program problemsizce çalışır.
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
#17
Sayın alpeki99 Bey. Geniş ve kapsamlı cevabınız için Teşekkür ederim.

İndirip baktığım örneklerde 20-30 Alanı birden bir tabloya sıkıştırılmış tablolar görmekteyim. Bunun sebebi ilişkilendirme yapmadıkları içindir.

Benim demem oki, ilişkilendirme ve Sorgu yapıp işi kolay hale getirmek yerine Vba ile zahmetli bir şekilde aynı işin yapılmasıdır.

Zira ilişkilendirme ve sorgulama ile işlem yapıldığında Access daha çabuk ve hatasız çalışır.

Benim fikrim, VBA'ya fazla yüklenmeden çalışmaktır.

Size bir örnek vereceğim, kullanıcının bir Form'da şunu yapmış:

2 tane Alanı var: Alan1 ve Alan2
Alan1' e Alan2' nin değerini vermek istemiş ve bunu Vba ile yapmış
Kod:
Me.Alan1.Value = Me.Alan2.Value
Bunu yapmak yerine Form'da Alan1'in içeriğine "=Alan2" yazması hatta sadece "Alan2" yeterli değilmi sizce?

Kısacası VBA'sı kuvvetli olan Programcılarımıza en basit işleri bile Vba ile yapmak alışkanlık haline gelmiş. Ben bunu belirtmek istemiştim.

Saygılar.
Son Düzenleme: 30/01/2016, 15:43, Düzenleyen: bigdaddy_isi.
Cevapla
#18
Sitede normalizasyon diye bir konu vardı yanlış hatırlamıyorsam. Veritabanında normalizasyon kurallarını iyi bilmeden zaten program yapılmaya çalışılırsa sorun yaşanılması kaçınılmaz. Yalnız bu sorun Access'in hatalı çalışmasına sebep olmaz.

Burada o kullanıcının o şekilde yapması ise kesinlikle ve kesinlikle en doğru yol diyebiliriz Img-grin Belki şaşırmışsınızdır neden öyle olsun ki diye. Size birkaç madde yazayım daha iyi anlayacaksınız:

Programı sizin dediğiniz gibi yaptınızda hareket alanınız daralır. Mesela form üzerinde karmaşık bir IF kontrolü yapamazsınız. Hadi IF kontrolü yaptınız diyelim Fonksiyon veya Prosedür kullanamazsınız. Hadi bunlara ihtiyacınız yok diyelim yaptığınız bir şeyi arama imkanınız yok. Yazdığınız KDV hesaplayan bir formül olsun bunu her lazım olan yere kopyalayıp yapıştırdınız diyelim. Bir sürü iş yapmanız lazım. Hadi yaptınız diyelim yarın KDV oranı değiştirdiğinde tüm formları dolaşıp düzenleme yapmanız gerek.

VBA da ismi KdvHesapla olan bir Prosedür veya Fonksiyon yazarsınız. Nerede lazım ise KdvHesapla yazmanız yeterlidir. Yarın Kdv oranı değiştiğinde sadece KdvHesapla içindeki 18 rakamını mesela 19 yaparsınız her yerde sorun çözülür.

Form üzerinde formülleri yazarsınız programı derlersiniz ancak başka bir programcı form üzerinden sizin formülünüzü alıp kendi programında kullanabilir. Vba da ise kod yazılan bölüm kilitlendiği için formülleriniz gizli kalır.

Form üzerinde yeterli ve güçlü kontroller yapamazsınız. Vba ise her şeyi kontrol edebilirsiniz. Form ile yapabilecekleriniz verilerin belli bir "Form" sahibi olmasıdır yani "Biçim" sahibi olmasıdır.

Programlama dillerinde veriler ile sunumlar mümküne mertebe birbirinden farklı katmanlarda saklanır. Yarın form üzerindeki arayüzde değişiklik yapmanız gerektiği zaman form üzerindeki denetimlerde yaptığınız formüller ile uğraşmanız gerekir. Ancak tüm kodlar Vba tarafında olmuş olsaydı hiç bir hata olmadan yeni arayüzü kullanabilirdiniz. Aksi takdirde yapacağınız/kontrol edeceğiniz iş sayısı iki kat artacaktı.
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

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task