Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Wybierz dowolny temat poniżej, aby dowiedzieć się więcej o zarządzaniu zamówieniami w wersji Northwind Developer Edition. 

Ta wersja deweloperska przykładowej aplikacji Northwind Orders jest bardziej zaawansowana niż wersja Starter. Rozszerza się na schemacie bazy danych (tabele, które są używane) i teraz zapewnia dodatkowe funkcje zaawansowane. Niniejszym zamierzamy przedstawić funkcje programu Microsoft Access, a nie prowadzić żadnej konkretnej firmy.

  • Lista zamówień jest dostępna na Wstążce. Istnieje kilka opcji filtrowania i hiperlinków umożliwiających otwarcie poszczególnych zamówień.

  • Zarówno lista zamówień, jak i Wstążka mają przycisk Dodaj kolejność, aby otworzyć nową pustą kolejność.

  • W formularzu Nowe zamówienie wybierz z listy rozwijanej istniejącego klienta. W tym momencie zostanie wybrane imię i nazwisko pracownika oraz nowy status. Data zamówienia jest już wypełniona. Stawka podatku jest odczytywana z tabeli SystemSettings , a stan podatku — z rekordu klienta.

  • Nowe zamówienia i zamówienia zakupu są dodawane do listy OSTATNIO używane na Wstążce. Dowiedz się więcej za pośrednictwem sekcji Lista MRU w tym artykule

  • Na razie pozostaw puste pole Data wysyłki i Data zapłaty .

  • Aby dodać zamówienia dla nowych klientów, wprowadź nazwę firmy i przejdź na kartę. Formularz Szczegóły firmy zostanie otwarty w celu dokończenia nowego rekordu klienta. Następnie zamknij go i kontynuuj składanie zamówienia. Nowa firma będzie teraz na liście rozwijanej Klient .

  • Aby dodać elementy do zamówienia, wybierz kategorię produktu i pozycję Produkt dla tego zamówienia, a następnie wprowadź wartość Ilość. Argument Cena jednostkowa jest wypełniany, a wartość Cena jest obliczana za pomocą wyrażenia.

  • Przełączanie stanu zamówienia i przenoszenie zamówienia z nowego > > Zafakturowano > Wysłano za pomocą przycisków u góry formularza zamówienia.

  • Fakturowanie może się zdarzyć tylko wtedy, gdy produkt zostanie przydzielony do tego zamówienia. Jeśli element wiersza jest w stanie Brak akcji lub Przy zamówieniu, wystąpi błąd sprawdzania poprawności. Użytkownik może utworzyć zamówienie zakupu dla tego produktu i odebrać go, a stan zamówienia zostanie dostosowany do pozycji Przydzielone.

  • Aby wysłać zamówienie, należy wprowadzić opłatę zaspedytora i wysyłkę. Jeśli o tym zapomnisz, wystąpi błąd sprawdzania poprawności. Opłata za wysyłkę zostanie dodana do sumy zamówienia.

  • Odkodowane zamówienia można usunąć za pomocą przycisku Usuń kolejność.

  • Nie można modyfikować elementów wiersza zamówienia po przebyciem stanu Nowy .

  • W wersji Northwind Starter proces zamówienia jest niezwykle prosty (np. spis jest zawsze dostępny, nigdy się nie kończy i nigdy nie trzeba go kupować). Teraz, w tej wersji Dev, bardziej realistyczny proces rozwiązuje przynajmniej niektóre takie problemy. Pamiętaj, że prezentujemy funkcje programu Access i najlepsze rozwiązania, a nie zaimplementujemy aplikację w świecie rzeczywistym. 

  • Dowody na to, że nie wdrażamy w tym miejscu rzeczywistego zastosowania, obejmują fakt, że daty nie są weryfikowane. W związku z tym można wprowadzić nielogiczne daty, takie jak Data wysyłki, która znajduje się przed datą zamówienia. 

Ta sekcja dotyczy godnych uwagi szczegółów implementacji formularza Zamówienia, frmOrderDetails:

Formularz zamówienia pobiera dane z prostego zapytania qryOrder (zobacz właściwość RecordSource ). Najlepszym rozwiązaniem jest utworzenie formularza wprowadzania danych na podstawie prostego zapytania jednotajowego. Należy pamiętać, że nie jest konieczne uwzględnianie tabeli SzczegółyZamówień w tym zapytaniu. Szczegóły zamówienia są obsługiwane przez podformularz.

Formularz Listazamów może otwierać wiele wystąpień formularza Zamówienia. Jest to przydatne, ponieważ przedstawiciele handlowi mają do czynienia z wieloma przerwami i mogą potrzebować otwarcia kolejnego zamówienia podczas pracy nad pierwszym zamówieniem lub porównać je z trzecim zamówieniem. Technika jest tutaj udokumentowana.

Różne pola identyfikatorów pobierają wartości z dwukolumnowych pól kombi: ukrytej kolumny identyfikatora i widocznej kolumny Opis. Te pola kombi są powiązane z prostymi zapytaniami dwukolumnowymi: zobacz właściwość RowSource (ŹródłoWiołów ).

Z przyciskami przepływu pracy jest skojarzona logika biznesowa, co wymusza na użytkowniku przechodzenie z 1 do 4. Zespół Northwind Development zdaje sobie sprawę, że niektóre firmy mogą stosować inne zasady. Spowoduje to wówczas inną implementację zdarzeń kliknięcia przycisku, a także ponowne rozważenie, kiedy zamówienie jest określone i kiedy zamówienie nadal może zostać usunięte.

Podformularz sfrmOrderDetails jest powiązany z bardziej złożonym zapytaniem. Przyczyny tego są omówione w sekcji Kaskadowe pola kombi poniżej. Sprawdzamy zapasy w zdarzeniu Form_AfterUpdate po zapisaniu wiersza i możemy uruchamiać bardziej zaawansowane zapytania bazy danych.

Pola kombi KategoriaProduktu i Produkt są kaskadowe: wybranie pierwszego pola (KategoriaProduktu) powoduje zawężenie następnego do pasujących podrzędnych rekordów produktu. Technika używana w tym miejscu została opisana szczegółowo poniżej.

Podczas zapisywania rekordu wymagane pola muszą zostać wypełnione. W wersji Starter zezwalamy na zachowanie domyślne programu Access. w tej wersji Dev zaimplementowano technikę bardziej przyjazną dla użytkownika. Technika używana w tym miejscu została opisana szczegółowo poniżej.

Dla każdego elementu wiersza zamówienia sprawdzany jest dostępny spis, a stan jest odpowiednio ustawiany. Podstawowa idea tej funkcji jest opisana tutaj.
 

KASKADOWE SKRZYNKI KOMBI

Wdrożenie list rozwijanych Kategoria produktu i Produkt jako kaskadowych pól kombi jest kłopotliwe, ponieważ program Access nie obsługuje tej funkcji. Ta technika wymaga wykonania czterech kroków:

Formularz musi być w trybie formularzy ciągłych (a nie w arkuszu danych). Pola tekstowe nakładają się na część tekstową każdego pola kombi, pozostawiając widoczne tylko ich strzałki listy rozwijanej. 

Zapytanie źródłowe rekordów formularza, qryOrderLineItems, używa tabeli SzczegółyZamówień w zwykły sposób, ale także łączy się z tabelami Produkty i KategorieProduktów w celu odebrania wartości ProductName i ProductCategoryName. Dwa nakładające się pola tekstowe są powiązane z tymi polami.

Pole kombi Źródło_wiersza dla produktów sprawdza ponownie pozycję cboProductCategories , aby zwrócić tylko produkty dla kategorii wybranej w tym polu kombi. Zwróć uwagę na składnię "[Formularz]! [cboProductCategories]" w wyrażeniu kryterium, które jest bardziej elastyczne niż jawne Formularze! FormName! Składnia ControlName , która odwołuje się do jednego formularza według nazwy.

Po wybraniu kategorii produktu w niepowiązanej skrzynce kombi KategorieProduktów jego zdarzenie AfterUpdate ustawia pole kombi Produkty na pierwszą wartość na liście. Spowoduje to utworzenie nowego wiersza w źródle rekordów formularza, który wypełnia pole CategoryName , aby można było je wyświetlić przez nakładające się pole tekstowe.
 

SPRAWDZANIA POPRAWNOŚCI

Za pomocą kodu sprawdzania poprawności zaimplementowanego w wersji Northwind Dev są pobierane tylko 3 wiersze kodu:

  • W Form_BeforeUpdate:
       Cancel = ValidateForm(Me)

  • W Form_AfterUpdate i Form_Current:
        ValidateForm_RemoveHighlights mnie

Tworzenie kodu bardzo samodzielny jest dobrym wzorcem do naśladowania, ponieważ ułatwia zaimplementowanie wszędzie. Profesjonalni deweloperzy mogą posunąć to jeszcze bardziej, na przykład za pomocą podklasy formularzy. (To wykracza poza cele Northwind Dev).

Obiekt formularza jest przekazywany do samodzielnego kodu sprawdzania poprawności w celu weryfikacji. Następnie sprawdza kolekcję RecordsetClone Fields, aby dowiedzieć się, które kontrolki są powiązane z wymaganymi polami, i sprawdza, czy mają wartość. Jeśli nie, zostaną one wyróżnione.

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×