Udostępnij przez


Śledzenie zależności dla składników rozwiązania

Ten temat dotyczy platformy Dynamics 365 Customer Engagement (on-premises). Aby zapoznać się z wersją tego tematu dotyczącą usługi Power Apps, zobacz: Śledzenie zależności dla składników rozwiązania.

Rozwiązania składają się ze składników rozwiązania. Użyjesz obszaru Rozwiązania w usłudze Dynamics 365 Customer Engagement (lokalnie), aby utworzyć lub dodać składniki rozwiązania. Te akcje można wykonać programowo przy użyciu komunikatu AddSolutionComponentRequest lub komunikatów, które tworzą lub aktualizują SolutionUniqueName składniki rozwiązania, które zawierają parametr.

Składniki rozwiązania często zależą od innych składników rozwiązania. Nie można usunąć żadnego składnika rozwiązania, który ma zależności od innego składnika rozwiązania. Na przykład niestandardowa wstążka zwykle wymaga użycia obrazów lub skryptów zasobów internetowych do wyświetlania ikon i wykonywania akcji za pomocą skryptów. Jeśli dostosowana wstążka znajduje się w rozwiązaniu, wymagane są określone używane zasoby internetowe. Przed usunięciem zasobów internetowych należy usunąć odwołania do nich na dostosowanej wstążce. Te zależności składników rozwiązania można wyświetlić w aplikacji, klikając pozycję Pokaż zależności.

W tym temacie opisano typy składników rozwiązania, które można uwzględnić w rozwiązaniach i sposób ich zależności od siebie.

Wszystkie składniki rozwiązania

Pełną listę dostępnych typów składników rozwiązań znajduje się w zestawie opcji globalnych systemu componenttype . Za pomocą punktu końcowego https://[ORGANIZATION_NAME].api.crm.dynamics.com/api/data/v9.0/GlobalOptionSetDefinitions(Name='componenttype')REST można wykonywać zapytania dotyczące tych danych i wyświetlać wszystkie componenet przy użyciu kodu. Obsługiwany zakres wartości dla tej właściwości jest dostępny przez dołączenie pliku SampleCode\CS\HelperCode\OptionSets.cs lub SampleCode\VB\HelperCode\OptionSets.vb w projekcie. Jednak wiele typów składników rozwiązania wymienionych jest tylko do użytku wewnętrznego, a lista nie udostępnia informacji o relacjach między składnikami rozwiązania.

Zależności składników rozwiązania

Zależności składników rozwiązania pomagają upewnić się, że masz niezawodne środowisko pracy z rozwiązaniami. Uniemożliwiają one wykonywanie akcji zwykle z niezamierzonych dostosowań powodujących niezgodność zdefiniowanych w rozwiązaniu. Te zależności umożliwiają instalowanie i odinstalowywanie rozwiązania zarządzanego po prostu przez zaimportowanie lub usunięcie rozwiązania.

Platforma rozwiązań automatycznie śledzi zależności składników rozwiązania. Każda operacja na składniku rozwiązania automatycznie oblicza wszelkie zależności od innych składników w systemie. Informacje o zależnościach służą do zachowania integralności systemu i zapobiegania operacjom, które mogą prowadzić do niespójnego stanu.

W wyniku śledzenia zależności są wymuszane następujące zachowania:

  • Usunięcie składnika jest blokowane, jeśli zależy od niego inny składnik systemu.

  • Eksportowanie rozwiązania ostrzega użytkownika, jeśli podczas importowania tego rozwiązania w innym systemie wystąpiły jakiekolwiek brakujące składniki, które mogłyby spowodować awarię.

    Ostrzeżenia podczas eksportowania można zignorować, jeśli deweloper rozwiązań zamierza zainstalować rozwiązanie tylko w organizacji, w której składniki zależne mają istnieć. Na przykład podczas tworzenia rozwiązania przeznaczonego do zainstalowania wstępnie zainstalowanego rozwiązania "podstawowego".

  • Importowanie rozwiązania kończy się niepowodzeniem, jeśli wszystkie wymagane składniki nie są uwzględnione w rozwiązaniu, a także nie istnieją w systemie docelowym.

    • Ponadto podczas importowania rozwiązania zarządzanego wszystkie wymagane składniki muszą być zgodne z typem pakietu rozwiązania. Składnik w rozwiązaniu zarządzanym może zależeć tylko od innego składnika zarządzanego.

    Istnieją trzy typy zależności składników rozwiązania:

    Rozwiązanie wewnętrzne
    Zależności wewnętrzne są zarządzane przez usługę Dynamics 365 Customer Engagement (lokalnie). Istnieją, gdy określony składnik rozwiązania nie może istnieć bez innego składnika rozwiązania.

    Opublikowany
    Opublikowane zależności są tworzone, gdy dwa składniki rozwiązania są ze sobą powiązane, a następnie publikowane. Aby usunąć ten typ zależności, skojarzenie musi zostać usunięte i jednostki opublikowane ponownie.

    Niepublikowanych
    Zależności nieopublikowane mają zastosowanie do nieopublikowanej wersji składnika rozwiązania, który można opublikować. Po opublikowaniu składnika rozwiązania staje się ona opublikowaną zależnością.

    Zależności wewnętrzne rozwiązania to zależności, w których akcje ze składnikiem rozwiązania wymagają akcji dla innego składnika rozwiązania. Jeśli na przykład usuniesz jednostkę, należy oczekiwać, że wszystkie atrybuty jednostki zostaną usunięte. Wszystkie relacje jednostki z innymi jednostkami również zostaną usunięte.

    Jednak zależność wewnętrzna może prowadzić do opublikowanej zależności i nadal wymagać interwencji ręcznej. Jeśli na przykład dołączysz pole odnośnika do formularza jednostki, a następnie usuniesz jednostkę podstawową w relacji, nie możesz ukończyć tego usuwania, dopóki nie usuniesz pola odnośnika z powiązanego formularza jednostki, a następnie opublikujesz formularz.

    Podczas programowego wykonywania akcji za pomocą rozwiązań można używać komunikatów związanych z jednostką Dependency . Zobacz Jednostka zależności dla komunikatów, których można użyć do identyfikowania zależności, które mogą istnieć przed usunięciem składnika lub odinstalowaniem rozwiązania.

Sprawdzanie zależności składników rozwiązania

Podczas edytowania rozwiązań może się okazać, że nie można usunąć składnika rozwiązania, ponieważ ma opublikowaną zależność od innego składnika rozwiązania. Możesz też nie być w stanie odinstalować rozwiązania zarządzanego, ponieważ jeden ze składników rozwiązania zarządzanego został użyty w dostosowaniu w innym niezarządzanym rozwiązaniu.

W poniższej tabeli wymieniono komunikaty, których można użyć do pobierania danych dotyczących zależności składników rozwiązania.

Message Description
RetrieveDependentComponentsRequest Zwraca listę zależności dla składników rozwiązania, które są bezpośrednio zależne od składnika rozwiązania.

Na przykład w przypadku użycia tego komunikatu dla globalnego składnika rozwiązania zestawu opcji zwracane są rekordy zależności dla składników rozwiązania reprezentujących wszystkie atrybuty zestawu opcji odwołujące się do globalnego składnika rozwiązania zestawu opcji.

W przypadku użycia tego komunikatu dla rekordu składnika rozwiązania dla jednostki konta zwracane są rekordy zależności dla wszystkich składników rozwiązania reprezentujących atrybuty, widoki i formularze używane dla tej jednostki.
RetrieveRequiredComponentsRequest Zwraca listę zależności dla składników rozwiązania, od których zależy bezpośrednio inny składnik rozwiązania. Ten komunikat zawiera odwrotność komunikatu RetrieveDependentComponentsRequest .
RetrieveDependenciesForDeleteRequest Zwraca listę wszystkich zależności składników rozwiązania, które mogłyby uniemożliwić usunięcie składnika rozwiązania.
RetrieveDependenciesForUninstallRequest Zwraca listę wszystkich zależności dla składników rozwiązania, które mogłyby uniemożliwić odinstalowanie rozwiązania zarządzanego.

Typowe składniki rozwiązania

Są to składniki rozwiązania wyświetlane w aplikacji i składniki, z którymi będziesz pracować bezpośrednio podczas dodawania lub usuwania składników rozwiązania przy użyciu strony rozwiązania. Każdy z innych typów składników rozwiązania będzie zależeć od co najmniej jednego z tych składników rozwiązania.

Wstążki aplikacji (WstążkaDostosowywanie)

Dostosowania wstążki dla szablonów wstążki aplikacji i wstążki jednostek. Wstążki aplikacji nie zawierają definicji wstążek na poziomie jednostki lub formularza.

Niestandardowe wstążki aplikacji często publikują zależności dotyczące zasobów internetowych. Zasoby internetowe służą do definiowania ikon przycisków wstążki i funkcji języka JavaScript do kontrolowania, kiedy są wyświetlane elementy wstążki lub jakie akcje są wykonywane po użyciu określonej kontrolki wstążki. Zależności są tworzone tylko wtedy, gdy definicje wstążki używają $webresource: dyrektywy , aby skojarzyć zasób internetowy ze wstążką. Więcej informacji: $webresource dyrektywa

Szablon artykułu (KBArticleTemplate)

Szablon zawierający standardowe atrybuty artykułu. Zawsze istnieje wewnętrzna zależność między szablonem artykułu a jednostką KbArticle.

Rola połączenia (ConnectionRole)

Rola opisująca relację między dwoma rekordami. Każda rola połączenia definiuje typy rekordów jednostek, które mogą być połączone przy użyciu roli połączenia. Spowoduje to utworzenie opublikowanej zależności między rolą połączenia a jednostką.

Szablon kontraktu (ContractTemplate)

Szablon zawierający standardowe atrybuty kontraktu. Zawsze istnieje wewnętrzna zależność między szablonem kontraktu a jednostką kontraktu.

Formularz pulpitu nawigacyjnego lub jednostki (SystemForm)

Rekordy jednostek formularza systemu służą do definiowania pulpitów nawigacyjnych i formularzy jednostek. Gdy element SystemForm jest używany jako formularz jednostki, istnieje zależność wewnętrzna od jednostki. Gdy element SystemForm jest używany jako pulpit nawigacyjny, nie ma wewnętrznych zależności. Formularze jednostek i pulpity nawigacyjne często opublikowały zależności związane z ich zawartością. Formularz jednostki może mieć pola odnośnika, które zależą od relacji jednostki. Zarówno pulpity nawigacyjne, jak i formularze jednostek mogą zawierać wykresy lub podsieci, które będą tworzyć opublikowaną zależność od widoku, który następnie ma wewnętrzną zależność od jednostki. Opublikowana zależność od zasobów internetowych może zostać utworzona z powodu zawartości wyświetlanej na pulpicie nawigacyjnym lub formularzu albo gdy formularz zawiera biblioteki języka JavaScript. Formularze jednostek opublikowały zależności od wszystkich atrybutów wyświetlanych jako pola w formularzu.

Szablon wiadomości e-mail (EmailTemplate)

Szablon zawierający standardowe atrybuty wiadomości e-mail. Szablon wiadomości e-mail zwykle zawiera pola, które wstawią dane z określonych atrybutów jednostki. Szablon wiadomości e-mail może być połączony z określoną jednostką podczas jej tworzenia, dzięki czemu może istnieć zależność wewnętrzna od jednostki. Globalny szablon wiadomości e-mail nie jest skojarzony z określoną jednostką, ale może mieć opublikowane zależności od atrybutów jednostki używanych do dostarczania danych. Proces (przepływ pracy) często jest skonfigurowany do wysyłania wiadomości e-mail przy użyciu szablonu wiadomości e-mail tworzącego opublikowaną zależność z przepływem pracy.

Jednostka (jednostka)

Podstawowa struktura używana do modelowania danych i zarządzania nimi w usłudze Dynamics 365 Customer Engagement (lokalnie). Wykresy, formularze, relacje jednostek, widoki i atrybuty skojarzone z jednostką są usuwane automatycznie po usunięciu jednostki z powodu zależności wewnętrznych między nimi. Jednostki często publikowały zależności z procesami, pulpitami nawigacyjnymi i szablonami wiadomości e-mail.

Profil zabezpieczeń pola (FieldSecurityProfile)

Profil, który definiuje poziom dostępu dla zabezpieczonych atrybutów.

Szablon korespondencji seryjnej (MailMergeTemplate)

Szablon zawierający standardowe atrybuty dokumentu korespondencji seryjnej. Szablon korespondencji seryjnej ma opublikowaną zależność od jednostki, z nią skojarzonej.

Zestaw opcji (OptionSet)

Zestaw opcji definiuje zestaw opcji. Atrybut listy wyboru używa zestawu opcji do zdefiniowania podanych opcji. Kilka atrybutów listy wyboru może używać globalnego zestawu opcji, dzięki czemu dostępne opcje są zawsze takie same i mogą być przechowywane w jednym miejscu. Opublikowana zależność występuje, gdy atrybut listy wyboru odwołuje się do globalnego zestawu opcji. Nie można usunąć globalnego zestawu opcji używanego przez atrybut listy wyboru.

Zestaw wtyczek (PluginAssembly)

Zestaw zawierający co najmniej jeden typ wtyczki. Wtyczki są rejestrowane w zdarzeniach, które są zwykle skojarzone z jednostką. Spowoduje to utworzenie opublikowanej zależności.

Proces (przepływ pracy)

Zestaw reguł logicznych, które definiują kroki niezbędne do zautomatyzowania określonego procesu biznesowego, zadania lub zestawu akcji do wykonania. Procesy zapewniają szeroką gamę akcji, które tworzą opublikowane zależności od dowolnego innego składnika rozwiązania, do którego odwołuje się proces. Każdy proces ma również opublikowaną zależność od jednostki, z nią skojarzonej.

Raport (raport)

Podsumowanie danych w układzie łatwym do odczytania. Raport opublikował zależności od wszystkich danych jednostki lub atrybutów zawartych w raporcie. Każdy raport musi być również skojarzony z kategorią Raport, tworząc wewnętrzną zależność od składnika rozwiązania o nazwie Kategoria powiązana z raportami (ReportCategory). Raporty mogą być konfigurowane jako podraporty tworzące opublikowaną zależność z raportem nadrzędnym.

Krok przetwarzania komunikatów zestawu SDK (SDKMessageProcessingStep)

Etap w potoku wykonywania, który ma zostać wykonany przez wtyczkę.

Rola zabezpieczeń (rola)

Grupowanie uprawnień zabezpieczeń. Użytkownicy mają przypisane role, które autoryzują dostęp do systemu dynamics 365 Customer Engagement (lokalnego). Formularze jednostek mogą być skojarzone z określonymi rolami zabezpieczeń w celu kontrolowania, kto może wyświetlać formularz. Spowoduje to utworzenie opublikowanej zależności między rolą zabezpieczeń a formularzem.

Uwaga / Notatka

Do rozwiązania można dodawać tylko role zabezpieczeń z jednostki biznesowej organizacji. Tylko użytkownik z dostępem do odczytu do tych ról zabezpieczeń może dodać je do rozwiązania.

Punkt końcowy usługi (ServiceEndpoint)

Punkt końcowy usługi, z którą można się skontaktować.

Mapa witryny (Mapa witryny)

Dane XML używane do kontrolowania okienka nawigacji aplikacji. Mapa witryny może być połączona z wyświetlaniem zasobu internetowego HTML lub ikoną na mapie witryny może używać zasobu internetowego obrazu. $webresource: Gdy dyrektywa jest używana do ustanawiania tych skojarzeń, tworzona jest opublikowana zależność. Więcej informacji: $webresource dyrektywa

Zasób internetowy (WebResource)

Dane równoważne plikom używanym w tworzeniu aplikacji internetowych. Zasoby internetowe udostępniają składniki po stronie klienta, które są używane do udostępniania niestandardowych elementów interfejsu użytkownika. Zasoby internetowe mogły publikować zależności z formularzami jednostek, wstążkami i mapą witryny. $webresource: Gdy dyrektywa jest używana do ustanawiania skojarzeń na wstążce lub w mapie witryny, tworzona jest opublikowana zależność. Aby uzyskać więcej informacji, zobacz $webresource dyrektywy.

Uwaga / Notatka

Zasoby internetowe mogą zależeć od innych zasobów internetowych na podstawie linków względnych. Na przykład zasób internetowy HTML może używać zasobu internetowego CSS lub skryptu. Zasób internetowy silverlight wyświetlany poza formularzem jednostki lub wykresem musi mieć zasób internetowy HTML, aby go hostować. Te zależności nie są śledzone jako zależności rozwiązania.

Zobacz także

Pakowanie i dystrybucja rozszerzeń za pomocą rozwiązania Dynamics 365 Customer Engagement (on-premises)
Wprowadzenie do rozwiązań
Planowanie rozwoju rozwiązania
Tworzenie, eksportowanie lub importowanie rozwiązania niezarządzanego
Tworzenie, instalowanie i aktualizowanie rozwiązania zarządzanego
Tworzenie, instalowanie i aktualizowanie rozwiązania zarządzanego
Odinstalowywanie lub usuwanie rozwiązania
Jednostki rozwiązania