Udostępnij przez


Korzystanie z złożonych relacji w Microsoft Dataverse

Microsoft Dataverse to platforma danych przedsiębiorstwa na platformie Power Platform, która umożliwia organizacjom tworzenie aplikacji dla przedsiębiorstw. Te aplikacje mogą obejmować śledzenie informacji o procesach biznesowych, które obejmują złożone relacje między danymi. Usługa Dataverse obsługuje typowe relacje danych przy użyciu wbudowanych typów relacji "jeden do wielu", "wiele do jednego" i "wiele do wielu". Możesz również zaimplementować bardziej zaawansowane relacje wiele-do-wielu, gdy konieczne jest śledzenie powiązanych danych dotyczących relacji. Ta elastyczność jest przydatna w przypadku aplikacji, takich jak aplikacja do zarządzania zdarzeniami, gdzie śledzenie szczegółów obecności wymaga więcej niż prostych skojarzeń.

Napiwek

Ten artykuł zawiera przykładowy scenariusz i wizualną reprezentację sposobu modelowania złożonych relacji danych w usłudze Microsoft Dataverse. To rozwiązanie jest uogólnioną przykładową architekturą scenariusza, która może być używana dla wielu różnych scenariuszy i branż.

Diagram architektury

Diagram architektury pokazujący, w jaki sposób tabele Event, Contact i Event Attendee łączą się, aby śledzić, kto uczestniczy w wydarzeniach i powiązanych danych dotyczących każdego uczestnika.

Workflow

Aplikacja kanwy Power Apps używa usługi Dataverse do zarządzania danymi dla aplikacji do zarządzania wydarzeniami. Aplikacja umożliwia użytkownikowi śledzenie, kto uczestniczył w wydarzeniu (lub wydarzeniach) hostowanym przez zespół sprzedaży organizacji.

  • Kontakt: tabela Kontakt śledzi osoby, które zespół sprzedaży zaprasza do wydarzeń.
  • Zdarzenie: Tabela zdarzeń śledzi informacje o zdarzeniach, takie jak nazwa, data i lokalizacja każdego zdarzenia.
  • Uczestnik wydarzenia: tabela Uczestnik wydarzenia śledzi, kto uczestniczy w każdym wydarzeniu i ich dane dotyczące obecności. Ta tabela ma relację wiele do wielu między kontaktami i zdarzeniami. Jest ona tworzona z relacją wiele do jednego z tabelą Contact i relacją wiele-do-jednego z tabelą Event. Ta konfiguracja umożliwia tej tabeli wiele-do-wielu dołączanie danych dotyczących uczestników wydarzenia, takich jak ich status RSVP, stan obecności i czy zapłacili opłatę.

Przypadek użycia

Głównym celem aplikacji do zarządzania zdarzeniami jest śledzenie obecności zdarzeń i powiązanych informacji. Wymagania są następujące:

  • Aplikacja musi zarejestrować osoby, które uczestniczyły w każdym wydarzeniu i szczegółowe informacje o ich obecności.
  • Jedna osoba może uczestniczyć w wielu wydarzeniach.

Może wchodzić w relację „wiele do wielu”

Gdy zespół tworzący aplikację ocenił opcje modelowania danych, rozważał wbudowaną obsługę wielu-do-wielu w rozwiązaniu Dataverse. Takie podejście umożliwia kontaktowi uczestnictwo w wielu wydarzeniach. Za kulisami, usługa Dataverse tworzy wewnętrzną tabelę powiązań, która śledzi połączenia między kontaktem a co najmniej jednym wierszem zdarzenia. Ta tabela wewnętrzna nie jest modyfikowalna — nie można dodać dodatkowych kolumn do śledzenia danych o relacji między tymi dwoma tabelami. Chociaż takie podejście spełnia część wymagań aplikacji, nie uwzględnia potrzeby śledzenia informacji o każdym zdarzeniu, w którym uczestniczy kontakt, na przykład o stanie RSVP.

Ręczna relacja „wiele do wielu”

Aby śledzić dodatkowe informacje o każdym zdarzeniu, w którym uczestniczy kontakt, należy wziąć pod uwagę ręczny wzorzec relacji wiele-do-wielu. Ten schemat obejmuje utworzenie niestandardowej tabeli reprezentującej tabelę krzyżową, a następnie ustanowienie dwóch relacji wiele-do-jednego z tabelami definiującymi relację. Dzięki temu podejściu utworzysz tabelę niestandardową, Uczestnik Wydarzenia, aby reprezentować intersekcję między Kontaktem a Wydarzeniem. Tabela Uczestników Wydarzeń zawiera relacje wiele-do-jednego z tabelą Kontaktów i tabelą Wydarzeń, co pozwala na przechowywanie innych pól, takich jak status RSVP, status obecności i informacje o płatności.

Chociaż ten wzorzec zapewnia większą elastyczność niż wbudowana relacja wiele-do-wielu, należy jej używać tylko wtedy, gdy trzeba przechowywać dodatkowe dane dotyczące relacji.

Kiedy należy używać każdego podejścia

Wbudowana metoda "wiele do wielu": Najlepsza, jeśli musisz tylko wiedzieć, które kontakty są powiązane z którymi zdarzeniami — nie są wymagane żadne dodatkowe informacje. Automatyzuje zarządzanie współdziałaniem między tabelami i wierszami. Zapewnia bezproblemowe środowisko łączenia wielu rekordów jednocześnie, zwłaszcza w aplikacjach opartych na modelu, które są zoptymalizowane pod kątem wbudowanego podejścia.

Ręczny wiele-do-wielu: Użyj, gdy musisz przechowywać dodatkowe dane dotyczące każdej relacji. Łatwiejsze dodawanie pól niestandardowych za pośrednictwem tabeli krzyżowej. Zapewnia pełną kontrolę nad zabezpieczeniami i pozwala zautomatyzować, kiedy i kto może ustanowić relację. Wymaga więcej kroków, aby podać dodatkowe informacje dla każdego wiersza (szczególnie zauważalne podczas kojarzenia wielu wierszy naraz).

W naszym scenariuszu wzorzec ręczny może obejmować przedstawienie użytkownikowi nowego formularza wiersza i konieczność, co najmniej, zapewnienia, że podano dwa skojarzone wiersze. W aplikacjach kanwy usługi Power Apps twórcy mogą uprościć tę złożoność, zapewniając środowisko użytkownika, które usprawnia skojarzenie. Należy również pamiętać, że podczas tworzenia relacji ręcznej należy skonfigurować opcje kaskadowe w relacjach wiele-do-jednego, aby upewnić się, że jeśli którykolwiek z powiązanych wierszy zostanie usunięty, opcje kaskadowe automatyzują usunięcie niestandardowego wiersza tabeli, który śledzi relację. Jeśli nie skonfigurujesz poprawnie opcji kaskadowych w celu usunięcia niestandardowego wiersza tabeli skrzyżowań, ryzykujesz pozostawienie osieroconych wierszy.

Podczas wybierania między najlepszą opcją modelu danych należy pamiętać, że nie ma wbudowanej obsługi konwersji między dwoma podejściami. Po wybraniu podejścia nie można przełączać się między nimi bez migrowania danych. Należy dokładnie ocenić potrzebę relacji wiele-do-wielu, aby określić, czy konieczne jest zastosowanie niestandardowej tabeli. Zastanów się również, czy będą potrzebne dodatkowe dane nie tylko teraz, ale w przyszłości. Ręczny wzorzec wielu do wielu, pomimo swojej złożoności, zapewnia większą elastyczność.

Components

Usługa Power Apps służy do implementowania środowiska użytkownika rozwiązania. Twórcy tworzą aplikację, aby zarządzać danymi w usłudze Dataverse. Twórcy muszą zaimplementować środowisko użytkownika dla wszystkich tworzonych relacji wiele-do-wielu.

Dataverse: usługa Dataverse obsługuje potrzeby danych aplikacji. Dataverse udostępnia typy relacji: wiele do jednego, jeden do wielu i wiele do wielu, które służą do modelowania rzeczywistych połączeń danych biznesowych.

Rozważania

Te rozważania wdrażają filary Power Platform Well-Architected, zestaw zasad przewodnich, które poprawiają jakość obciążenia. Dowiedz się więcej w Microsoft Power Platform artykule Dobrze zaprojektowane środowisko.

Reliability

Projektowanie obciążeń w celu dopasowania do celów biznesowych i unikanie niepotrzebnej złożoności lub nakładu pracy: korzystanie z ręcznego wzorca wiele-do-wielu dla wszystkich relacji tego typu zwiększa niepotrzebną złożoność tworzenia, konserwacji i obsługi aplikacji. Pamiętaj, aby ocenić każdą relację, aby upewnić się, że wybrane podejście jest najlepszym rozwiązaniem, biorąc pod uwagę wymagania.

Zabezpieczenia

Projektowanie w celu ochrony poufności i integralności: relacje między danymi mogą być poufne i mają bezpośredni wpływ na operacje biznesowe. Domyślnie model zabezpieczeń Usługi Dataverse zapewnia obsługę szczegółowych zabezpieczeń dotyczących sposobu, w jaki dane są powiązane i jakie operacje może wykonywać użytkownik względem wierszy danych. Podczas tworzenia manualnej relacji wiele-do-wielu, która ma niestandardową tabelę przecinającą, uzyskasz dodatkowe mechanizmy kontrolne, które mogą być używane do zarządzania dostępem do danych tej relacji.

Doskonałość operacyjna

Automatyzowanie wszystkich zadań, które nie korzystają z szczegółowych informacji i dostosowywania interwencji człowieka: użyj automatyzacji kaskadowej w relacjach, aby automatycznie wyczyścić niestandardowe wiersze tabeli przecinające się po usunięciu jednego z powiązanych wierszy.

Optymalizacja środowiska

Projektowanie pod kątem prostoty i wydajności: wybór typu relacji wiele-do-wielu ma wpływ na sposób, w jaki użytkownik ustanawia relacje między wierszami danych w aplikacji. W przypadku korzystania ze wzorca ręcznego ustanów spójny sposób na powiązanie danych przez użytkowników i zoptymalizowanie typowych scenariuszy interakcji w spójny sposób w całej aplikacji. W przypadku modelowych aplikacji Power Apps rozważ zapewnienie bardziej spersonalizowanego doświadczenia użytkownika podczas korzystania ze wzorca ręcznego. Na przykład przy użyciu niestandardowej strony kanwy usługi Power Apps lub Power Apps Component Framework (PCF) można zapewnić podobne usprawnione środowisko interakcji, jak w aplikacji kanwy usługi Power Apps.