Einführung in Lösungen

Dieses Thema bezieht sich auf Dynamics 365 Customer Engagement (on-premises). Die Power Apps-Version dieses Themas finden Sie unter: Lösungskonzepte.

Lösungen sind die Art und Weise, wie Anpasser und Entwickler Einheiten von Software erstellen, verpacken und pflegen, die Dynamics 365 for Customer Engagement erweitern. Lösungen werden von Anpassern und Entwicklern verteilt, sodass Organisationen Dynamics 365 Customer Engagement (on-premises) verwenden können, um die Funktionalität für das Unternehmen, angegeben durch die Lösung, zu installieren und zu deinstallieren.

Erweiterungsmöglichkeiten

Verwenden Sie Lösungen, um die Funktionen von Dynamics 365 Customer Engagement (on-premises) zu erweitern. Verwenden Sie für Software, die außerhalb der Anwendung verwendet wird, traditionelle Methoden, um Ihre Anwendung zu verpacken und zu installieren, wie etwa ein Installationsprogramm.

Wenn Ihre Anwendung nur aus Dynamics 365 Customer Engagement (on-premises) Lösungskomponenten besteht, kann sie direkt in Customer Engagement importiert werden. Sie müssen kein Installationsprogramm erstellen.

Eine Anwendung mit externen Komponenten.

Wenn Ihre Erweiterungen jedoch aus einer Kombination von Dynamics 365 Customer Engagement (on-premises)-Lösungskomponenten und externen Komponenten bestehen, die nicht Dynamics 365 Customer Engagement (on-premises)-Lösungskomponenten sind, wird ein Installationsprogramm benötigt.

Sie können zum Beispiel eine .NET Framework-Anwendung erstellen, die mit Hilfe der Webdienst-APIs Daten verwaltet, die in angepassten Dynamics 365 Customer Engagement (on-premises)-Entitäten gespeichert sind. Personen, die Ihre Anwendung installieren, können eine Dynamics 365 Customer Engagement (on-premises)-Lösung installieren, um benutzerdefinierten Entitäten zu erstellen und dann Ihre Anwendung separat mit einem Installationsprogramm installieren. Sie können auch die Installation der Dynamics 365 Customer Engagement (on-premises)-Lösung in das Installationsprogramm aufnehmen, das Sie für Ihre Anwendung erstellen.

Versionskompatibilität

Lösungen, die aus einer früheren Version von Customer Engagement exportiert wurden, können in spätere Versionen importiert werden, wie in der folgenden Tabelle dargestellt.

Lösungsversions-Kompatibilität.

Im Allgemeinen können Lösungen in Versionen von weniger als zwei Versionen über der Version beim Exportieren der Lösung in Organisationen importiert werden. Service Pack-Veröffentlichungen bieten die Möglichkeit, entweder eine Lösung mit Kompatibilität mit diesem Service Pack zu exportieren, oder nur mit den Funktionen, die in der Basisversion enthalten sind. Weitere Informationen: Wartung verwalteter Lösungen: Versionskompatibilität.

Notiz

Weitere Informationen zu Lösungen, die bereits erstellt wurden vor Dynamics CRM 2015 finden Sie unter Dynamics CRM 2016 Einführung für Lösungen > Versionskompatibilität

Lösungskomponenten

Lösungskomponenten werden mit den Anpassungstools oder APIs erstellt, die in Dynamics 365 Customer Engagement (on-premises) enthalten sind und werden anschließend vollständig in der Anwendung gehostet. Das folgende Diagramm zeigt die Typen von Lösungskomponenten.

Lösungskomponenten

Wenn Sie eine Customer Engagement Lösung definieren, erstellen Sie eine Gruppe von Lösungskomponenten, die gemeinsam verwaltet werden können.

Notiz

Lösungen können nur neue Lösungskomponenten hinzufügen oder vorhandene Lösung überschreiben. Lösungen können nicht verwendet werden, um Lösungskomponenten zu löschen.

Verwaltete und nicht verwaltete Lösungen

Es gibt zwei Typen von Dynamics 365 Customer Engagement (on-premises)-Lösungen: verwaltet und nicht verwaltet. Eine verwaltete Lösung ist eine abgeschlossene Lösung, die dafür vorgesehen ist, verteilt und installiert zu werden. Eine nicht verwaltete Lösung ist eine Lösung, die sich immer noch in der Entwicklung befindet oder nicht dafür vorgesehen ist, verteilt zu werden. Wenn die nicht verwaltete Lösung vollständig ist und Sie sie verteilen möchten, exportieren und verpacken Sie sie wie eine verwaltete Lösung.

Im folgenden Diagramm wird erläutert, wie verwaltete und nicht verwaltete Lösungen mit der Systemlösung interagieren, um das Anwendungsverhalten zu steuern.

Lösungsebenen.

Systemlösung
Die Systemlösung repräsentiert die Lösungskomponenten, die in Dynamics 365 Customer Engagement (on-premises) definiert sind. Ohne verwaltete Lösungen oder Anpassungen definiert die Systemlösung das standardmäßige Anwendungsverhalten.

Viele der Komponenten der Systemlösung können angepasst und in verwalteten Lösungen oder nicht verwalteten Lösungen verwendet werden.

Verwaltete Lösungen
Verwaltete Lösungen werden über der Systemlösung installiert und können alle anpassbaren Lösungskomponenten modifizieren oder weitere Lösungskomponenten hinzufügen.

Verwaltete Lösungen können auch über andere verwaltete Lösungen installiert werden. Solange eine verwaltete Lösung die Anpassung ihrer Lösungskomponenten erlaubt, können andere verwaltete Lösungen darüber installiert werden und alle anpassbaren Lösungskomponenten, die sie bereitstellt, modifizieren.

Nicht verwaltete Anpassungen
Alle anpassbaren Lösungskomponenten, die von der Systemlösung oder einer verwalteten Lösung bereitgestellt werden, können in den nicht verwalteten Anpassungen angepasst werden.

Nicht verwaltete Lösungen
Nicht verwaltete Lösungen sind Gruppen nicht verwalteter Anpassungen. Jede nicht verwaltete angepasste Lösungskomponente kann mit einer beliebigen Zahl nicht verwalteter Lösungen verbunden werden.

Sie erstellen eine verwaltete Lösung, indem Sie eine nicht verwaltete Lösung als verwaltete Lösung exportieren und verpacken.

Anwendungsverhalten
Die letztendliche Verhalten einer Instanz von Dynamics 365 Customer Engagement (on-premises) für eine bestimmte Organisation ist der Kulminationspunkt der Systemlösung, aller verwalteter Lösungen und aller nicht verwalteter Lösungen.

Nicht verwaltete Lösungen

Wenn eine Lösung nicht verwaltet ist, können Sie folgende Aktionen ausführen:

Importieren nicht verwalteter Lösungen

Wenn Sie eine nicht verwaltete Lösung importieren, können Sie die Komponenten in der neuen Organisation bearbeiten.

Wichtig

Wenn Sie eine nicht verwaltete Lösung importieren, werden alle Definitionen der Lösungskomponenten, die in der Organisation bereits vorliegen, überschrieben. Dieser Vorgang kann nicht rückgängig gemacht werden.

Nicht verwaltete Anpassungen

Jede Dynamics 365 Customer Engagement (on-premises)-Organisation enthält anpassbare Lösungskomponenten. Zusammen werden alle diese Lösungskomponenten als Standardlösung bezeichnet. Dies ist die Lösung, die Sie bearbeiten, wenn Sie System anpassen auswählen in der Anwendung. Sie können diese Lösung sowie die Anpassungen darin wie in eine nicht verwaltete Lösung exportieren. Sie können die Standardlösung jedoch nicht als verwaltete Lösung exportieren.

Erstellen einer nicht verwalteten Lösung

Wenn Sie keine verwaltete Lösung erstellen möchten, müssen Sie keine nicht verwaltete Lösung erstellen. Sie können das System direkt anpassen. Organisationen, die lediglich ihre Anpassungen bearbeiten, sichern und transportieren können möchten, müssen die erweiterten Funktionen des Dynamics 365 Customer Engagement (on-premises)-Lösungsframeworks nicht verwenden.

Wenn Sie eine nicht verwaltete Lösung erstellen, erstellen Sie eine Methode zum Gruppieren einer Reihe von anpassbaren Lösungskomponenten. Die Lösungskomponenten in einer nicht verwalteten Lösung sind Referenzen zu anpassbaren Lösungskomponenten in der Organisation.

Wenn Sie eine nicht verwaltete Lösung erstellt haben, können Sie ihr Lösungskomponenten hinzufügen. Durch die Verwendung dieses kleineren Satzes von Komponenten können Sie entscheiden, dass nur die Lösungskomponenten eingeschlossen werden, die für eine bestimmte Funktion relevant sind. Dieses ermöglicht ein kleineres Paket beim Export Ihrer Lösung sowie einen besser handhabbaren Komponentensatz.

Alle Komponenten, die Sie Ihrer nicht verwalteten Lösung hinzufügen, befidnen sich in den anpassbaren Lösungskomponenten für das System. Nicht verwaltete Lösungskomponenten können mehreren nicht verwalteten Lösungen hinzugefügt werden.

Wichtig

Da jede nicht verwaltete Lösung einen Verweis auf die gemeinsam genutzte Gruppe von Lösungen enthält, werden Änderungen, die Sie an den Lösungskomponenten einer Lösung vornehmen, auch für alle nicht verwalteten Lösungen übernommen, die auf diese Lösungskomponenten verweisen.

Tipp

Sie können auch nicht verwaltete Lösungen erstellen, um lediglich den problemlosen Zugriff auf bestimmte Lösungskomponenten zu ermöglichen. Vielleicht verwenden Sie sehr viele HTML-Webressourcen, aber nur einige davon repräsentieren Benutzeroberflächenelemente der obersten Ebene in Ihrer Lösung. Sie können dann eine nicht verwaltete Lösung erstellen, die nur diese Benutzeroberflächenkomponenten enthält, so dass Sie sie einfach finden und öffnen können.

Lösungsherausgeber für nicht verwaltete Lösungen

Jede Lösung erfordert einen Lösungsherausgeber. Für eine nicht verwaltete Lösung bietet der Lösungsherausgeber ein gemeinsames Anpassungspräfix und ein Optionswertpräfix. Weitere Informationen: Erstellen Sie einen Lösungs-Publisher

Viele Lösungen können einem einzelnen Lösungsherausgeber zugeordnet werden. Jede Organisation verfügt über einen Lösungs-Publisher mit dem Namen „Default Publisher für <OrganizationUniqueName>". Wenn alle Ihre nicht verwalteten Lösungen das gleiche Optionswertpräfix und Anpassungspräfix verwenden sollen, sollten Sie nur Ihre nicht verwalteten Lösungen dem Standardherausgeber für Ihre Organisation zuordnen.

Notiz

Die Lösungsherausgebe steuert, wie verwaltete Lösungen aktualisiert werden können. Wenn Sie eine verwaltete Lösung installieren, wird der Herausgeber angezeigt, Sie können ihm jedoch keine nicht verwaltete Lösung zuordnen. Wenn Sie möchten, eine verwaltete Lösung zu verteilen, siehe Lösungsherausgeber für verwaltete Lösungen.

Löschen einer nicht verwalteten Lösung

Wenn Sie eine nicht verwaltete Lösung löschen, löschen Sie nur die Gruppe, die verwendet wird, um Referenzen zu den Lösungskomponenten zu enthalten. Die Lösungskomponenten in einer nicht verwalteten Lösung bleiben im System, sind aber nicht mehr der nicht verwalteten Lösung zugeordnet, die Sie löschen.

Notiz

Wenn Sie eine Lösungskomponente in einer nicht verwalteten Lösung löschen, wird diese vom System gelöscht und kann nicht mehr von einer anderen nicht verwalteten Lösung verwendet werden. Verwenden Sie „Entfernen“ und nicht „Löschen“, wenn Sie lediglich eine Lösungskomponente aus einer nicht verwalteten Lösung entfernen möchten.

Verwaltete Lösungen

Wenn Sie Ihre Lösung als verwaltete Lösung verteilen möchten, exportieren Sie Ihre nicht verwaltete Lösung, und wählen Sie die Option Verwaltet im Dialogfeld Pakettyp aus.

Notiz

Nachdem Sie eine verwaltete Lösung erstellt haben, können Sie sie nicht in derselben Dynamics 365 Customer Engagement (on-premises)-Organisation installieren, die die nicht verwaltete Lösung enthält, mit der sie erstellt wurde. Sie muss in einer anderen Organisation installiert werden.

Wenn Sie eine verwaltete Lösung installiert haben, gilt folgendes:

  • Sie können keine Lösungskomponenten einer verwalteten Lösung hinzufügen oder daraus entfernen.

  • Verwaltete Lösungen können nicht exportiert werden.

  • Beim Löschen einer verwalteten Lösung werden alle Lösungskomponenten darin deinstalliert.

    Weitere Informationen: Erstellen, Installieren und Aktualisieren einer verwalteten Lösung

    Nachdem Sie eine verwaltete Lösung installiert haben, können Sie die Lösungskomponenten anpassen, wenn der Ersteller der verwalteten Lösung die verwaltete Lösung so konfiguriert hat, dass dies möglich ist. Sie müssen auf die anpassbaren Lösungskomponenten mithilfe von System anpassen und nicht über die verwaltete Lösung selbst zugreifen.

    Verwenden Sie Verwaltete Eigenschaften, um zu steuern, ob eine Lösungskomponente anpassbar ist und welche bestimmten Anpassungsaktionen aktiviert sind.

Lösungsherausgeber für verwaltete Lösungen

Wenn Sie verwaltete Lösungen verteilen möchten, wird der Lösungsherausgeberdatensatz, der Ihrer verwalteten Lösung zugeordnet ist, in jeder Organisation erstellt, die Ihre Lösung installiert. Verwenden Sie den Lösungsherausgeber, um Informationen dazu bereitzustellen, wie Personen, die Ihre Lösung installieren, mit Ihnen Verbindung aufnehmen können.

Der Lösungsherausgeber für eine verwaltete Lösung ist auch wichtig, wenn Sie eine Aktualisierung Ihrer verwalteten Lösung freigeben möchten. Wenn Sie denselben Lösungsherausgeber verwenden, können Sie eine neue verwaltete Lösung erstellen, die die vorher freigegebene verwaltete Lösung aktualisieren kann. Weitere Informationen: Verwaltete Lösungen verwalten

Verwaltete Eigenschaften

Mithilfe verwalteter Eigenschaften kann der Ersteller einer verwalteten Lösung steuern, ob eine Lösungskomponente anpassbar ist, und welche ihrer Teile angepasst werden können.

Notiz

Verwaltete Eigenschaften müssen in einer nicht verwalteten Lösung festgelegt werden. Die Einstellungen für die verwalteten Eigenschaften werden erst nach dem Packen vind Installieren der erwalteten Lösung angewendet.

Welche verwalteten Eigenschaften genau verfügbar sind, hängt vom Typ der Lösungskomponente ab. Der folgende Screenshot zeigt die verwalteten Eigenschaften für eine benutzerdefinierte Entität an.

Verwaltete Eigenschaften für eine Entität.

Standardmäßig gehen die verwalteten Eigenschaften davon aus, dass alle Arten von Lösungskomponenten vollständig anpassbar sind. Lösungsentwickler sollten dafür sorgen, dass die Lösungskomponenten in ihren Lösungen anpassbar sind. Es gibt jedoch Situationen, in denen die Definition einer Lösungskomponente „gesperrt“ werden muss, um potenziell schädliche Änderungen zu vermeiden oder um die künftige Verwaltung der Lösungskomponente einfacher zu machen.

Weitere Informationen: Verwaltete Eigenschaften verwenden

Konfliktlösung

Wenn zwei oder mehr Lösungen Lösungskomponenten unterschiedlich definieren, löst Dynamics 365 Customer Engagement (on-premises) den Konflikt anhand von zwei Strategien, Zusammenführen und Spitze gewinnt. Im folgenden Diagramm werden die Unterschiede illustriert.

Zwei Lösungsstrategien zur Konfliktlösung.

Zusammenführen
Benutzeroberflächenkomponenten (Befehlsleiste, Menübänder, Formulare und Siteübersicht) werden zusammengeführt. Dies bedeutet, dass die Lösungskomponenten von der untersten Ebene zur obersten neu berechnet werden, so dass die nicht verwalteten Anpassungen einer Organisation zuletzt hinzugefügt werden.

Spitze gewinnt
Bei allen anderen Lösungskomponente wird jeder Konflikt zugunsten der zuletzt angewendeten Anpassung aufgelöst. Für verwaltete Lösungen bedeutet dies in der Regel, dass die zuletzt installierte Lösung angewendet wird. Es gibt allerdings einen speziellen Fall, wenn ein Update einer verwalteten Lösung installiert wurde.

Konfliktlösung bei der Aktualisierung einer verwalteten Lösung

Da nicht verwaltete Anpassungen für die Konfliktlösung als „höher“ als alle verwalteten Lösungen eingestuft werden, sehen Organisationen, die eine Aktualisierung einer verwalteten Lösung installieren, möglicherweise nicht die durchgeführten Änderungen aufgrund nicht verwalteter Änderungen. Es gibt eine Option, um sicherzustellen, dass die Änderungen, die durch ein Update an einer verwalteten Lösung angewendet wurden, verfügbar sind.

Wenn Sie eine Aktualisierung einer verwalteten Lösung freigeben, kann die Organisation, die diese installiert, Folgendes auswählen:

  • Beibehalten aller Anpassungen, die sie über Ihrer verwalteten Lösung angewendet hat.

  • Überschreiben aller Anpassungen, die sie über Ihrer verwalteten Lösung angewendet hat.

    Organisationen, die ein Update auf einer verwalteten Lösung installieren, sollten mit dem Ersteller der verwalteten Lösung zusammenarbeiten, um herauszufinden, welches die beste Lösung ist.

Wichtig

Änderungen an Entitätsformularen und der Siteübersicht werden auch dann nicht überschrieben werden, wenn die Option zum Überschreiben ausgewählt wurde. Hinweise zur Verwaltung von Änderungen finden Sie unter Anpassungen von Formularen und Anpassungen der Navigation (SiteMap). Einige manuelle Anpassungen sind eventuell erforderlich, um nicht verwaltete Anpassungen mit Änderungen zusammenzuführen, die in Aktualisierungen verwalteter Lösungen enthalten sind.

Abhängigkeitsnachverfolgung

Durch das Solutions Framework werden Abhängigkeiten für Lösungskomponenten automatisch überwacht. Jeder Vorgang über eine Lösungskomponente berechnet automatisch alle Abhängigkeiten zu anderen Komponenten im System. Die Abhängigkeitsinformationen werden verwendet, um die Integrität des Systems beizubehalten und Vorgänge zu verhindern, die zu einem inkonsistenten Zustand führen können.

Die Abhängigkeitsüberwachung erzwingt die folgenden Verhaltensweisen:

  • Das Löschen einer Komponente wird verhindert, wenn eine andere Komponente im System von ihr abhängig ist.

  • Beim Exportieren einer Lösung wird der Benutzer gewarnt, falls eine Komponente fehlen sollte und der Import der Daten in ein anderes System dadurch fehlschlagen kann.

    Warnungen können während des Exports ignoriert werden, wenn der Lösungsentwickler beabsichtigt, die Lösung in nur einer Organisation zu installieren, in der die abhängigen Komponenten vorhanden sind. Ein Beispiel wäre, dass Sie eine Lösung erstellen, die dafür konzipiert wurde, über eine vorinstallierten „Basis“-Lösung installiert zu werden.

  • Das Importieren einer Lösung ist nicht erfolgreich, falls nicht alle erforderlichen Komponenten in der Lösung enthalten sind und auch nicht in dem Zielsystem vorhanden sind.

    • Wenn Sie außerdem eine verwaltete Lösung importieren, müssen alle erforderlichen Komponenten mit dem Pakettyp der Lösung übereinstimmen. Eine Komponente in einer verwalteten Lösung kann nur von einer anderen verwalteten Komponente abhängig sein.

    Weitere Informationen: Abhängigkeitsverfolgung für Lösungskomponenten

Unterstützung für mehrere Sprachen

Dynamics 365 Customer Engagement (on-premises) unterstützt mehrere Sprachen in nativer Weise. Immer wenn ein Language Pack (manchmal „MUI-Pack“ genannt) installiert wird, können Benutzeroberflächenelemente in einer anderen Sprache angezeigt werden.

Es gibt verschiedene Taktiken, die Sie je nach dem Typ der in Ihrer Lösung enthaltenen Lösungskomponenten anwenden können. Weitere Informationen: Erstellen Sie Lösungen, die mehrere Sprachen unterstützen

Siehe auch

Packen und Verteilen von Erweiterungen mithilfe von Dynamics 365 Customer Engagement (on-premises) Lösungen
Microsoft Dynamics 365 Customer Engagement-Muster und -Prinzipien für Lösungsentwickelnde
Planen einer Lösungsentwicklung
Abhängigkeitsnachverfolgung für Lösungskomponenten
Erstellen, Exportieren oder Importieren einer nicht verwalteten Lösung
Eine verwaltete Lösung erstellen, installieren und aktualisieren
Deinstallieren oder Löschen einer Lösung
Erstellen von Lösungen, die mehrere Sprachen unterstützen
Solution-Entitäten
Mit Lösungen arbeiten
Beispiel: Verwenden von Lösungen
Beispiel: Erkennen von Lösungsabhängigkeiten
Lösungsentitäten