Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Toto téma se týká Dynamics 365 Customer Engagement (on-premises). Pro verzi Power Apps tohoto tématu se podívejte na: Sledování závislostí pro komponenty řešení
Řešení jsou tvořená komponentami řešení. Oblast Řešení v Dynamics 365 Customer Engagementu (místně) použijete k vytvoření nebo přidání součástí řešení. Tyto akce můžete provádět programově pomocí AddSolutionComponentRequest zprávy nebo všech zpráv, které vytvářejí nebo aktualizují součásti řešení, které obsahují SolutionUniqueName parametr.
Komponenty řešení často závisejí na jiných součástech řešení. Nemůžete odstranit žádnou komponentu řešení, která má závislosti na jiné komponentě řešení. Přizpůsobený pás karet například obvykle vyžaduje, aby webové prostředky obrázku nebo skriptu zobrazovaly ikony a prováděly akce pomocí skriptů. Pokud je přizpůsobený pás karet v řešení, vyžadují se konkrétní webové prostředky, které používá. Před odstraněním webových prostředků je nutné odebrat odkazy na ně na přizpůsobeném pásu karet. Tyto závislosti součástí řešení lze v aplikaci zobrazit kliknutím na Zobrazit závislosti.
Toto téma popisuje typy komponent řešení, které můžete zahrnout do svých řešení a jak na sobě závisejí.
Všechny komponenty řešení
Úplný seznam dostupných typů komponent řešení se nachází v globální sadě možností systému componenttype . Koncový bod REST můžete použít https://[ORGANIZATION_NAME].api.crm.dynamics.com/api/data/v9.0/GlobalOptionSetDefinitions(Name='componenttype')k dotazování na tato data a k zobrazení všech componenetů pomocí kódu. Podporovaný rozsah hodnot pro tuto vlastnost je k dispozici zahrnutím souboru SampleCode\CS\HelperCode\OptionSets.cs nebo SampleCode\VB\HelperCode\OptionSets.vb v projektu. Řada typů komponent řešení, které jsou uvedeny pouze pro interní použití, ale seznam neposkytuje informace o vztazích mezi komponentami řešení.
Závislosti komponent řešení
Závislosti komponent řešení pomáhají zajistit spolehlivé prostředí pro práci s řešeními. Zabrání tomu, aby akce, které obvykle provádíte, neúmyslně přerušily přizpůsobení definované v řešení. Tyto závislosti umožňují instalaci a odinstalaci spravovaného řešení jednoduše importem nebo odstraněním řešení.
Architektura řešení automaticky sleduje závislosti pro komponenty řešení. Každá operace komponenty řešení automaticky vypočítá všechny závislosti na jiných součástech v systému. Informace o závislostech slouží k zachování integrity systému a zabránění operacím, které by mohly vést k nekonzistentnímu stavu.
V důsledku sledování závislostí se vynucují následující chování:
Odstranění komponenty se zabrání, pokud na ní závisí jiná komponenta.
Export řešení upozorní uživatele, pokud existují nějaké chybějící komponenty, které by mohly způsobit selhání při importu tohoto řešení do jiného systému.
Upozornění během exportu je možné ignorovat, pokud vývojář řešení hodlá, aby řešení bylo nainstalováno pouze v organizaci, kde se očekává, že závislé komponenty existují. Když například vytvoříte řešení, které je navržené tak, aby se nainstalovalo přes předinstalované "základní" řešení.
Import řešení selže, pokud nejsou součástí řešení všechny požadované komponenty a v cílovém systému také neexistují.
- Kromě toho při importu spravovaného řešení musí všechny požadované součásti odpovídat typu balíčku řešení. Komponenta ve spravovaném řešení může záviset jenom na jiné spravované komponentě.
Existují tři typy závislostí komponent řešení:
Interní řešení
Interní závislosti spravuje Dynamics 365 Customer Engagement (místní). Existují, pokud konkrétní komponenta řešení nemůže existovat bez jiné komponenty řešení.Publikovaný
Publikované závislosti se vytvoří, když spolu vzájemně souvisí dvě komponenty řešení a pak se publikují. Chcete-li odebrat tento typ závislosti, musí být přidružení odebráno a entity publikovány znovu.Nepublikovaný
Nepublikované závislosti se vztahují na nepublikovanou verzi publikované součásti řešení, která se aktualizuje. Po publikování komponenty řešení se stane publikovanou závislostí.Interní závislosti řešení jsou závislosti, ve kterých akce s komponentou řešení vyžadují akci pro jinou komponentu řešení. Pokud například odstraníte entitu, měli byste očekávat, že se s ní odstraní všechny atributy entity. Odstraní se také všechny vztahy entit s jinými entitami.
Interní závislost však může vést k publikované závislosti a přesto vyžadovat ruční zásah. Pokud například zahrnete vyhledávací pole do formuláře entity a potom odstraníte primární entitu v relaci, nebude možné toto odstranění dokončit, dokud neodeberete vyhledávací pole z formuláře související entity a pak formulář publikujete.
Při programovém provádění akcí s řešeními můžete použít zprávy související s entitou
Dependency. Viz Entity závislostí pro zprávy, které můžete použít k identifikaci závislostí, které mohou existovat před odstraněním komponenty nebo odinstalací řešení.
Kontrola závislostí součástí řešení
Při úpravách řešení můžete zjistit, že komponentu řešení nemůžete odstranit, protože má publikovanou závislost s jinou komponentou řešení. Nebo možná nebudete moct odinstalovat spravované řešení, protože jedna z komponent spravovaného řešení byla použita v přizpůsobení jiného nespravovaného řešení.
Následující tabulka uvádí zprávy, které můžete použít k načtení dat o závislostech součástí řešení.
| Message | Description |
|---|---|
| RetrieveDependentComponentsRequest | Vrátí seznam závislostí pro komponenty řešení, které přímo závisí na komponentě řešení. Pokud například tuto zprávu použijete pro komponentu řešení globální sady možností, vrátí se záznamy závislostí pro součásti řešení představující všechny atributy sady možností, které odkazují na komponentu řešení globální sady možností. Pokud tuto zprávu použijete pro záznam komponenty řešení pro entitu účtu, vrátí se záznamy závislostí pro všechny součásti řešení představující atributy, zobrazení a formuláře použité pro danou entitu. |
| RetrieveRequiredComponentsRequest | Vrátí seznam závislostí pro komponenty řešení, na které přímo závisí jiná komponenta řešení. Tato zpráva poskytuje opak RetrieveDependentComponentsRequest zprávy. |
| RetrieveDependenciesForDeleteRequest | Vrátí seznam všech závislostí pro součásti řešení, které by mohly zabránit odstranění komponenty řešení. |
| RetrieveDependenciesForUninstallRequest | Vrátí seznam všech závislostí pro součásti řešení, které by mohly zabránit odinstalaci spravovaného řešení. |
Běžné komponenty řešení
Jedná se o komponenty řešení zobrazené v aplikaci a komponenty, se kterými budete pracovat přímo při přidávání nebo odebírání součástí řešení pomocí stránky řešení. Každý z ostatních typů komponent řešení bude záviset na existenci jedné nebo více těchto součástí řešení.
- Pásy karet aplikace (RibbonCustomization)
- Entita (entita)
- Sestava (sestava)
- Šablona článku (KBArticleTemplate)
- Profil zabezpečení pole (FieldSecurityProfile)
- Sdk Message Processing Step (SDKMessageProcessingStep)
- Propojovací role (Role připojení)
- Šablona hromadné korespondence (MailMergeTemplate)
- Role zabezpečení (role)
- Šablona kontraktu (ContractTemplate)
- Sada možností (OptionSet)
- Koncový bod služby (ServiceEndpoint)
- Formulář řídicího panelu nebo entity (SystemForm)
- Sestavení modulu plug-in (PluginAssembly)
- Mapa webu (mapa webu)
- Šablona e-mailu (EmailTemplate)
- Proces (pracovní postup)
- Webový prostředek (WebResource)
Pásy karet aplikace (RibbonCustomization)
Přizpůsobení pásu karet pro pás karet aplikace a šablony pásu karet entit Pásy karet aplikací neobsahují definice pásů karet na úrovni entity nebo formuláře.
Pásy karet vlastních aplikací často obsahují publikované závislosti na webových prostředcích. Webové prostředky slouží k definování ikon tlačítek pásu karet a funkcí JavaScriptu k řízení, kdy se zobrazují prvky pásu karet nebo jaké akce se provádějí při použití určitého ovládacího prvku pásu karet. Závislosti se vytvoří pouze v případech, kdy definice pásu karet používají $webresource: direktivu k přidružení webového prostředku k pásu karet. Další informace: direktiva $webresource
Šablona článku (KBArticleTemplate)
Šablona, která obsahuje standardní atributy článku Mezi šablonou článku a entitou KbArticle je vždy interní závislost.
Propojovací role (ConnectionRole)
Role popisující vztah mezi dvěma záznamy Každá propojovací role definuje, jaké typy záznamů entit je možné propojit pomocí propojovací role. Tím se vytvoří publikovaná závislost mezi propojovací rolí a entitou.
Šablona kontraktu (ContractTemplate)
Šablona, která obsahuje standardní atributy kontraktu Mezi šablonou kontraktu a entitou kontraktu je vždy interní závislost.
Formulář řídicího panelu nebo entity (SystemForm)
Záznamy entit systémového formuláře slouží k definování řídicích panelů a formulářů entit. Pokud se systemForm používá jako formulář entity, existuje vnitřní závislost na entitě. Při použití systemForm jako řídicího panelu neexistují žádné interní závislosti. Formuláře entit i řídicí panely běžně obsahují publikované závislosti související s jejich obsahem. Formulář entity může obsahovat vyhledávací pole, která závisí na relaci entity. Řídicí panely i formuláře entit můžou obsahovat grafy nebo podmřížky, které vytvoří publikovanou závislost na zobrazení, která pak má interní závislost na entitě. Publikovanou závislost na webových prostředcích lze vytvořit z důvodu obsahu zobrazeného na řídicím panelu nebo formuláři nebo v případech, kdy formulář obsahuje javascriptové knihovny. Formuláře entit publikovaly závislosti na všech atributech, které jsou zobrazeny jako pole ve formuláři.
Šablona e-mailu (EmailTemplate)
Šablona, která obsahuje standardní atributy e-mailové zprávy Šablona e-mailu obvykle obsahuje pole, která vkládají data ze zadaných atributů entity. Šablona e-mailu může být propojená s konkrétní entitou při jejím vytvoření, takže může existovat interní závislost na entitě. Globální e-mailová šablona není přidružená ke konkrétní entitě, ale může mít publikované závislosti na atributech entit používaných k poskytování dat. Proces (pracovní postup) je často nakonfigurovaný tak, aby odeslal e-mail pomocí e-mailové šablony, která vytváří publikovanou závislost s pracovním postupem.
Entita (entita)
Primární struktura používaná k modelování a správě dat v Dynamics 365 Customer Engagementu (místně). Grafy, formuláře, vztahy entit, zobrazení a atributy přidružené k entitě se automaticky odstraní, když je entita odstraněna z důvodu vnitřních závislostí mezi nimi. Entity často obsahují publikované závislosti s procesy, řídicími panely a e-mailovými šablonami.
Profil zabezpečení pole (FieldSecurityProfile)
Profil, který definuje úroveň přístupu pro zabezpečené atributy.
Šablona hromadné korespondence (MailMergeTemplate)
Šablona, která obsahuje standardní atributy dokumentu hromadné korespondence. Šablona hromadné korespondence obsahuje publikovanou závislost na entitě, ke které je přidružená.
Sada možností (OptionSet)
Sada možností definuje sadu možností. Atribut rozevíracího seznamu používá sadu možností k definování zadaných možností. Několik atributů rozevíracího seznamu může použít globální sadu možností, aby byly možnosti, které poskytují, vždy stejné a lze je udržovat na jednom místě. Publikovaná závislost nastane, když atribut rozevíracího seznamu odkazuje na globální sadu možností. Nelze odstranit globální sadu možností, která se používá atributem rozevíracího seznamu.
Sestavení modulu plug-in (PluginAssembly)
Sestavení, které obsahuje jeden nebo více typů modulů plug-in. Moduly plug-in se registrují k událostem, které jsou obvykle přidružené k entitě. Tím se vytvoří publikovaná závislost.
Proces (pracovní postup)
Sada logických pravidel definující kroky potřebné k automatizaci konkrétního obchodního procesu, úlohy nebo sady akcí, které se mají provést. Procesy poskytují širokou škálu akcí, které vytvářejí publikované závislosti na jakékoli jiné komponentě řešení odkazované procesem. Každý proces má také publikovanou závislost na entitě, ke které je přidružená.
Sestava (sestava)
Souhrn dat v snadno čitelném rozložení Sestava publikovala závislosti na všech datech entit nebo atributů zahrnutých v sestavě. Každá sestava musí být přidružená také k kategorii sestavy, která vytváří interní závislost na komponentě řešení s názvem Report Related Category (ReportCategory). Sestavy můžou být nakonfigurované tak, aby byly podsestavami, které vytvářejí publikovanou závislost s nadřazenou sestavou.
Krok zpracování zpráv sady SDK (SDKMessageProcessingStep)
Fáze v kanálu spuštění, který má modul plug-in provést.
Role zabezpečení (role)
Seskupení oprávnění zabezpečení Uživatelům se přiřazují role, které autorizuje přístup k místnímu systému Dynamics 365 Customer Engagement. Formuláře entit můžou být přidružené ke konkrétním rolím zabezpečení, aby bylo možné určit, kdo může formulář zobrazit. Tím se vytvoří publikovaná závislost mezi rolí zabezpečení a formulářem.
Poznámka:
Do řešení je možné přidat jenom role zabezpečení z organizační jednotky. Do řešení je může přidat jenom uživatel s přístupem pro čtení k těmto rolím zabezpečení.
Koncový bod služby (ServiceEndpoint)
Koncový bod služby, který je možné kontaktovat.
Mapa webu (Mapa webu)
Data XML používaná k řízení navigačního podokna aplikace. Mapa webu může být propojena s zobrazením webového prostředku HTML nebo ikony v mapě webu může použít webový prostředek obrázku. Pokud se direktiva $webresource: použije k vytvoření těchto přidružení, vytvoří se publikovaná závislost. Další informace: direktiva $webresource
Webový prostředek (WebResource)
Data ekvivalentní souborům používaným při vývoji webu Webové prostředky poskytují komponenty na straně klienta, které slouží k poskytování vlastních prvků uživatelského rozhraní. Webové prostředky můžou obsahovat publikované závislosti s formuláři entit, pásy karet a mapou webu. Pokud se direktiva $webresource: používá k vytvoření přidružení na pásu karet nebo na mapě webu, vytvoří se publikovaná závislost. Další informace najdete v $webresource direktivě.
Poznámka:
Webové prostředky můžou záviset na jiných webových prostředcích na základě relativních odkazů. Například webový prostředek HTML může používat webový prostředek CSS nebo skript. Webový prostředek Silverlightu zobrazený mimo formulář entity nebo graf musí mít k hostování webový prostředek HTML. Tyto závislosti se nesledují jako závislosti řešení.
Viz také
Balení a distribuce rozšíření pomocí řešení Dynamics 365 Customer Engagement (místní řešení)
Úvod do řešení
Plánování vývoje řešení
Vytvořte, exportujte nebo importujte nespravované řešení
Vytvoření, instalace a aktualizace spravovaného řešení
Vytvoření, instalace a aktualizace spravovaného řešení
Odinstalace nebo odstranění řešení
Entity řešení