Microsoft hesabıyla oturum açın
Oturum açın veya hesap oluşturun.
Merhaba,
Farklı bir hesap seçin.
Birden çok hesabınız var
Oturum açmak istediğiniz hesabı seçin.

Northwind Developer Edition'da Siparişleri yönetme hakkında bilgi edinmek için aşağıdaki konu başlıklarını seçin. 

Northwind Orders örnek uygulamasının bu Developer Edition sürümü Starter Edition'dan daha gelişmiştir. Veritabanı şemasını (kullanılan tablolar) genişletir ve şimdi ek gelişmiş özellikler sağlar. Burada amaç, belirli bir işletmeyi çalıştırmamak için size Microsoft Access'in özelliklerini tanıtmaktır.

  • Sipariş Listesi Şerit'ten kullanılabilir. Birkaç filtre seçeneği ve her siparişi açmak için köprüler vardır.

  • Hem Sipariş Listesi'nde hem de Şeritte yeni bir boş sipariş açmak için Sipariş Ekle düğmesi bulunur.

  • Yeni Sipariş formunda açılan listeden mevcut bir müşteriyi seçin. Bu noktada Çalışan adınız ve yeni durum seçilir. Sipariş Tarihi de zaten doldurulmuş. Vergi Oranı SystemSettings tablosundan ve Vergi Durumu varsayılan olarak Müşteri kaydından okunur.

  • Yeni siparişler ve satın alma siparişleri Şeritteki MRU (En Son Kullanılan) listesine eklenir. Bu makaledekiMRU Listesi bölümü aracılığıyla daha fazla bilgi edinin. 

  • Sevk Tarihi ve Ücretli Tarih'i şimdilik boş bırakın.

  • Yeni müşterilerin siparişlerini eklemek için şirket adını girin ve sekme tuşuyla çıkın. Yeni müşteri kaydını tamamlamak için Şirket Ayrıntıları formu açılır. Ardından kapatın ve siparişle devam edin. Yeni şirket artık Müşteri açılan listesinde olacak.

  • Bir siparişe madde eklemek için, bu sipariş için bir Ürün Kategorisi ve Ürün seçin ve Miktar girin. Birim Fiyat doldurulur ve Fiyat bir ifadeyle hesaplanır.

  • Sipariş Durumunu İlerlet ve Sipariş formunun üst kısmındaki düğmeleri kullanarak Siparişi Yeni > Faturalanmış > Gönderildi > Kapatıldı konumundan iş akışına taşıyın.

  • Faturalama yalnızca ürün söz konusu sipariş için ayrılmışsa gerçekleşebilir. Bir satır öğesi Hisse Senedi Yok veya SiparişTe durumundaysa doğrulama hatası oluşur. Kullanıcı bu ürün için bir Satınalma Siparişi oluşturup alabilir ve sipariş maddesi durumu Ayrılmış olarak ayarlanır.

  • Bir siparişi göndermek için Nakliyeci ve Sevkiyat Ücreti girilmelidir. Bunu yapmayı unutursanız doğrulama hatası oluşur. Sevkiyat ÜcretiSipariş Toplamına eklenir.

  • Gönderilmemiş siparişler Siparişi Sil düğmesi kullanılarak silinebilir.

  • Sipariş satırı öğeleri, sipariş Yeni durumu geçtikten sonra değiştirilemez.

  • Northwind Starter sürümünde Sipariş işlemi son derece basittir (örneğin, envanter her zaman kullanılabilir, hiçbir zaman tükenir ve hiçbir zaman satın almak zorunda kalmaz). Şimdi, bu Dev sürümünde, daha gerçekçi bir işlem en azından bu tür sorunların bazılarını ele alır. Access özelliklerini ve en iyi yöntemlerini gösterdiğimizi, gerçek dünya uygulamasını uygulamadığımıza dikkat edin. 

  • Burada gerçek dünya uygulaması uygulamadığımıza ilişkin kanıt, tarihlerin doğrulanmadığı gerçeğini içerir. Bu nedenle, Sipariş Tarihinden önceki Sevk Tarihi gibi mantıksız tarihleri girmek mümkündür. 

Bu bölümde, FrmOrderDetails Sipariş formunun önemli uygulama ayrıntıları ele alınır:

Sipariş formu verilerini basit bir sorgu qryOrder'dan alır (bkz. RecordSource özelliği). Veri giriş formunu basit bir tek tablolu sorguya dayandırma en iyi yöntemdir. Bu sorguya OrderDetails tablosunun eklenmesinin gerekli olmadığını unutmayın. Sipariş Ayrıntıları alt form tarafından işlenir.

OrderList formu, Sipariş formunun birden çok örneğini açabilir. Satış temsilcileri çok sayıda kesintiyle uğraştığından ve ilk sipariş üzerinde çalışırken başka bir sipariş açması veya üçüncü bir siparişle karşılaştırması gerekebileceği için bu kullanışlıdır. Teknik burada belgelenmiştir.

Çeşitli kimlik alanları, değerlerini iki sütunlu birleşik giriş kutularından alır: gizli kimlik sütunu ve görünür bir Açıklama sütunu. Bu birleşik giriş kutuları basit iki sütunlu sorgulara bağlıdır: RowSource özelliğine bakın.

İş akışı düğmeleri, kullanıcıyı siparişi 1'den 4'e ilerletmeye zorlayan iş mantığına sahiptir. Northwind Geliştirme ekibi, bazı şirketlerin farklı kurallar kullanabileceğinin farkındadır. Bu, düğme tıklama olayları için farklı bir uygulamayla sonuçlanır ve bir siparişin ne zaman kesin olduğu ve siparişin ne zaman silinebileceğinin yeniden düşünülmesiyle sonuçlanır.

sfrmOrderDetails alt formu daha karmaşık bir sorguya bağlıdır. Bunun nedenleri aşağıdaki Basamaklı Birleşik Giriş Kutuları bölümünde ele alınmaktadır. Satır kaydedildiğinde Form_AfterUpdate olayında envanteri denetleriz ve daha güçlü veritabanı sorguları çalıştırabiliriz.

ProductCategory ve Product basamaklı birleşik giriş kutularıdır: birinci (ProductCategory) arasından seçim yapmak, bir sonrakini alt Ürün kayıtlarıyla eşleşecek şekilde daraltır. Burada kullanılan teknik aşağıda ayrıntılı olarak açıklanmıştır.

Kayıt kaydedilirken gerekli alanların doldurulması gerekir. Starter sürümünde Access varsayılan davranışının gerçekleşmesine izin veririz; bu Dev sürümünde daha kullanıcı dostu bir teknik uygulanır. Burada kullanılan teknik aşağıda ayrıntılı olarak açıklanmıştır.

Her sipariş satırı öğesi için kullanılabilir stok denetlenip durum buna göre ayarlanır. Bu özelliğin temel fikri burada açıklanmıştır.
 

BASAMAKLı BIRLEŞIK GIRIŞ KUTULARı

Geçişli Birleşik Giriş Kutuları olarak Ürün Kategorisi ve Ürün açılan listelerini uygulamak zordur çünkü Access bu özelliği kullanıma sunmadan desteklemez. Bu teknikte dört adım gereklidir:

Form Sürekli Formlar modunda olmalıdır (Veri Sayfası değil). Metin kutuları her birleşik giriş kutusunun metin bölümüyle çakışarak yalnızca açılan oklarını görünür bırakır. 

Formun kayıt kaynağı sorgusu qryOrderLineItems her zamanki gibi OrderDetails tablosunu kullanır, ancak ProductName ve ProductCategoryName değerlerini almak için Products ve ProductCategories tablolarıyla birleşir. Çakışan iki metin kutusu bu alanlara bağlıdır.

Ürünler birleşik giriş kutusu için RowSource , yalnızca bu birleşik giriş kutusunda seçilen kategoriye ait ürünleri döndürmek için cboProductCategories'e bakar. "[Form]! söz dizimine dikkat edin Ölçüt ifadesindeki [cboProductCategories]" ifadesi, açık Formlardan daha esnektir! FormName! Bir forma ada göre başvuruda bulunan ControlName söz dizimi.

İlişkisiz ProductCategories birleşik giriş kutusunda bir ürün kategorisi seçtikten sonra , AfterUpdate olayı Ürünler birleşik giriş kutusunu listesindeki ilk değere ayarlar. Bu, formun RecordSource'unda yeni bir satır oluşturur ve bu satır CategoryName'i çakışan metin kutusuyla görüntülenebilmesi için doldurur.
 

DOĞRULAMA

Northwind Dev sürümünde uygulanan doğrulama kodunun kullanılması yalnızca 3 satırlık kod alır:

  • in Form_BeforeUpdate:
       Cancel = ValidateForm(Me)

  • Form_AfterUpdate ve Form_Current:
        ValidateForm_RemoveHighlights

Kodun çok bağımsız hale getirilmesi, her yerde uygulamayı kolaylaştırdığı için izleyebileceğiniz iyi bir modeldir. Profesyonel geliştiriciler, örneğin form alt sınıflama kullanarak bunu daha da ileriye götürebilir. (Bu, Northwind Dev hedeflerinin ötesindedir.)

Form nesnesi, doğrulamak için bağımsız doğrulama koduna geçirilir. Ardından, hangi denetimlerin gerekli alanlara bağlı olduğunu bulmak için temel alınan RecordsetClone Alanları koleksiyonunu denetler ve bir değere sahip olup olmadıklarını denetler. Aksi takdirde vurgulanırlar.

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.

Topluluklar, soru sormanıza ve soruları yanıtlamanıza, geri bildirimde bulunmanıza ve zengin bilgiye sahip uzmanlardan bilgi almanıza yardımcı olur.

Bu bilgi yararlı oldu mu?

Dil kalitesinden ne kadar memnunsunuz?
Deneyiminizi ne etkiledi?
Gönder’e bastığınızda, geri bildiriminiz Microsoft ürün ve hizmetlerini geliştirmek için kullanılır. BT yöneticiniz bu verileri toplayabilecek. Gizlilik Bildirimi.

Geri bildiriminiz için teşekkürler!

×