Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dowiedz się więcej o aplikacji typu kanwa do zarządzania danymi relacyjnymi w bazie danych Northwind Traders, które zainstalowałeś w swoim środowisku. Następnie postępuj zgodnie z instrukcjami krok po kroku w kolejnych tematach, aby utworzyć tę aplikację od podstaw, uzyskując praktyczne doświadczenie w pracy z danymi relacyjnymi.
W tym temacie odnajdź następujące elementy:
- Jak użytkownik aplikacji wyświetla dane relacyjne w aplikacji i zarządza nimi.
- Które typy danych napędzają aplikację.
- Sposób tworzenia relacji między tymi typami danych.
Na jednym ekranie użytkownik aplikacji może wyświetlać, aktualizować, tworzyć i usuwać zamówienia.
Poznawanie interfejsu użytkownika
Galeria zamówień
Na lewej krawędzi aplikacji galeria zawiera listę zamówień, w tym numer zamówienia, stan, nazwę klienta i całkowity koszt zamówienia. Użytkownik może przewinąć listę, aby znaleźć zamówienie, a następnie wyświetlić więcej informacji, wybierając strzałkę zamówienia. Więcej informacji: Tworzenie galerii zamówień.
Formularz podsumowania
W prawym górnym rogu formularz podsumowuje kolejność wybraną przez użytkownika w galerii zamówień. Podsumowanie zawiera wiele tych samych informacji, co ta galeria, ale podsumowanie zawiera również daty utworzenia i zapłaty zamówienia, a także nazwę i obraz pracownika, który zarządzał zamówieniem. Użytkownik może zmienić dane w formularzu, zapisać te zmiany, anulować je lub usunąć zamówienie, wybierając ikonę w pobliżu prawej krawędzi paska tytułu. Więcej informacji: Tworzenie formularza podsumowania.
Galeria szczegółów
W prawym dolnym rogu inna galeria zawiera informacje o produktach, które zawiera wybrane zamówienie i w jakich ilościach. Każda pozycja w tej galerii jest znana jako szczegół zamówienia. Użytkownik aplikacji może dodawać i usuwać dowolny element w tej galerii przy użyciu kontrolek w i pod nim. Więcej informacji: Tworzenie galerii szczegółów.
Eksplorowanie źródeł danych
Aby utworzyć tę aplikację, zostaną wyświetlone dane z pięciu tabel i wyboru. W rzeczywistości większość obszarów tej aplikacji pokazuje dane z wielu tabel. Na przykład galeria zamówień zawiera następujące informacje:
- Numer zamówienia jest polem w tabeli Orders (Zamówienia ).
- Stan to inne pole w tabeli Orders (Zamówienia ), opcja z wyboru Orders Status (Stan zamówień ).
- Nazwa klienta jest polem w tabeli Customers .
- Łączny koszt jest obliczany na podstawie danych w tabeli Order Details .
Podsumowanie zawiera niektóre z tych samych informacji co lista zamówień, ale zawiera również nazwę i obraz pracownika, który zarządzał zamówieniem. Te informacje są pobierane z pól w tabeli Employees . Galeria szczegółów zawiera rekordy w tabeli Order Details , a każdy produkt w tych szczegółach jest rekordem w tabeli Order Products .
Eksplorowanie relacji
Dane z różnych źródeł (na przykład tabel) można wyświetlić w tej samej galerii lub formularzu, ponieważ te tabele mają relacje utworzone dla Ciebie w bazie danych.
Relacje wiele-do-jednego
Na przykład informacje o kliencie i pracowniku dla każdego zamówienia znajdują się w tabelach Customers i Employees . W związku z tym tabela Orders (Zamówienia) ma relacje "wiele do jednego" z tymi tabelami, ponieważ istnieje wiele zamówień i każde z nich może być złożone tylko przez jednego klienta i zarządzane tylko przez jednego pracownika.
Każde zamówienie zawiera również co najmniej jeden wiersz, który reprezentuje produkty, które zawiera zamówienie i ich ilości. Każdy element wiersza jest rekordem w tabeli Szczegóły zamówienia , który pobiera informacje o każdym produkcie z tabeli Order Products . Każdy szczegół identyfikuje tylko jeden produkt, ale każdy produkt może być wyświetlany w wielu szczegółach. W związku z tym tabela Szczegóły Zamówienia ma relację typu wiele do jednego z tabelą Produkty Zamówienia.
Relacje jeden-do-wielu
Każde zamówienie może zawierać wiele elementów wiersza, ale każdy element wiersza odnosi się tylko do jednego zamówienia. W związku z tym tabela Orders ma relację jeden do wielu z tabelą Order Details .
Notacja kropkowa dla relacji
Aby pokazać dane na podstawie relacji między tabelami, możesz użyć selektora właściwości kropki, aby przejść przez relację z jednej tabeli do innej. Na przykład każdy rekord w tabeli Orders (Zamówienia) pobiera informacje z tabeli Customers (Klienci ), aby galeria zamówień mogła wyświetlać nazwy klientów. W tej galerii skonfigurujesz to zachowanie, ustawiając właściwość Text etykiety na następujące wyrażenie:ThisItem.Customer.Company
ThisItem określa rekord w tabeli Orders (Zamówienia ) i pobiera informacje z tabeli Customers (Klienci ) o kliencie, który złożył zamówienie. W tym przypadku wyrażenie określa, że wyświetlana jest nazwa firmy klienta. Jednak cały rekord tego klienta jest ściągany, więc wystarczy tylko szybko wyświetlić na przykład adres e-mail danego klienta.
W innym przykładzie przechodzenia z jednej tabeli do innej można określić, że galeria powinna wyświetlać rekordy w jednej tabeli na podstawie rekordu wybranego przez użytkownika w innej galerii i w innej tabeli. Aby wyświetlić szczegóły zamówienia, ustaw właściwość Items galerii szczegółów na następujące wyrażenie:Gallery1.Selected.'Order Details'
W tym przypadku Gallery1.Selected określa rekord w tabeli Orders, tak jak ThisItem w poprzednim przykładzie. Jednak to wyrażenie nie ściąga tylko jednego rekordu, tak jak w poprzednim wyrażeniu. Zamiast tego pobiera cały zestaw danych z tabeli, aby pokazać nazwę i koszt jednostkowy każdego produktu (jak przedstawiono w tabeli Order Products) oraz ilość (jak przedstawiono w tabeli Order Details).
Zrób to sam
Instrukcje krok po kroku dotyczące tworzenia aplikacji kanwy Northwind Orders można wykonać, postępując zgodnie z instrukcjami opisanymi w artykule. Instrukcje są podzielone na trzy części:
Jeśli chcesz przejść do przodu, rozwiązanie zawiera aplikację bazową dla każdej części. Na liście aplikacji poszukaj Northwind Orders (Canvas) — Rozpocznij część 1 i tak dalej.