Übersicht über LösungenSolutions overview

In PowerApps dienen Lösungen dazu, Apps und Komponenten von einer Umgebung in eine andere zu transportieren oder eine Reihe von Anpassungen auf vorhandene Apps anzuwenden.In PowerApps, solutions are leveraged to transport apps and components from one environment to another or to apply a set of customizations to existing apps. Eine Lösung kann eine oder mehrere Apps sowie weitere Komponenten wie Entitäten, Optionssätze usw. enthalten. Sie können eine Lösung aus AppSource oder von einem unabhängigen Softwareanbieter (Independent Software Vendor, ISV) beziehen.A solution can contain one or more apps as well as other components such as entities, option sets, etc. You can get a solution from AppSource or from an independent software vendor (ISV).

Weitere Informationen finden Sie unter: Whitepaper: Solution Lifecycle ManagementMore information: Whitepaper: Solution Lifecycle Management

Hinweis

Wenn Sie als ISV eine App erstellen, die Sie verteilen möchten, müssen Sie Lösungen verwenden.If you’re an ISV creating an app that you will distribute, you’ll need to use solutions. Weitere Informationen zum Verwenden von Lösungen finden Sie im Entwicklerleitfaden: Einführung in Lösungen.For more information about using solutions, see Developer Guide: Introduction to solutions.

Wenn Sie PowerApps-Apps zur Verwendung in der Organisation erstellen oder Dynamics 365 für Kundenbindungs-Apps anpassen möchten, müssen Sie über Lösungen Folgendes wissen:If you are interested in creating PowerApps apps for organizational use or customizing Dynamics 365 for Customer Engagement apps, here is what you need to know about solutions:

  • Das Erstellen von Lösungen ist optional.Creating solutions is optional. Sie können Apps in Ihrer PowerApps-Umgebung erstellen oder anpassen, ohne eine Lösung zu erstellen.You can build or customize apps in your PowerApps environment directly without ever creating a solution.

  • Wenn Sie die PowerApps-Umgebung ohne Erstellen einer Lösung direkt anpassen, arbeiten Sie mit einer speziellen Lösung, die als Common Data Services-Standardlösung bezeichnet wird.When you customize the PowerApps environment directly without creating any solution, you work with a special solution called the Common Data Services Default Solution. Diese Lösung enthält alle Anpassungen, die Sie in Ihrer PowerApps-Umgebung vornehmen.This solution contains all the customizations you make in your PowerApps environment.

  • Es gibt eine weitere spezielle Lösung mit dem Namen Standardlösung.There is another special solution called the Default Solution. Diese Lösung enthält alle Komponenten in Ihrem System, unabhängig davon, ob diese von Ihnen oder jemand anderem erstellt wurden.This solution contains all the components in your system, whether created by you or anyone else. Sie können die Standardlösung exportieren, um eine Sicherung der in Ihrer Organisation definierten Anpassungen zu erstellen.You can export the Default Solution to create a backup of the customizations you have defined in your organization. Es empfiehlt sich, Änderungen zu sichern, um sie notfalls rückgängig machen oder wiederherstellen zu können.This is a good practice to back up your changes in a worst case scenario.

KomponentenComponents

Eine Komponente stellt ein Element dar, das Sie möglicherweise anpassen können.A component represents something that you can potentially customize. Jedes Element, das Bestandteil einer Lösung sein kann, ist eine Komponente.Anything that can be included in a solution is a component. Die folgende Liste enthält Komponenten, die Sie in einer Lösung anzeigen können:The following is a list of components that you can view in a solution:

  • AnwendungsmenübandApplication Ribbon

  • ArtikelvorlageArticle Template

  • GeschäftsregelBusiness Rule

  • Canvas-AppCanvas App

  • DiagrammChart

  • VerbindungsrolleConnection Role

  • VertragsvorlageContract Template

  • Benutzerdefiniertes SteuerelementCustom Control

  • DashboardDashboard

  • E-Mail-VorlageEmail Template

  • EinrichtungEntity

  • EntitätsbeziehungEntity Relationship

  • FeldField

  • FeldsicherheitsprofilField Security Profile

  • FlowFlow

  • FormularForm

  • SeriendruckvorlageMail Merge Template

  • NachrichtMessage

  • Modellgesteuerte AppModel-driven app

  • OptionssatzOption Set

  • Plug-In-AssemblyPlug-in Assembly

  • ProzessProcess

  • Schritt zur Verarbeitung der SDK-NachrichtSdk Message Processing Step

  • SicherheitsrolleSecurity Role

  • DienstendpunktService Endpoint

  • SiteübersichtSite Map

  • Datenanbieter für virtuelle EntitätVirtual Entity Data Provider

  • Datenquelle für virtuelle EntitätVirtual Entity Data Source

  • WebressourceWeb Resource

Einige Komponenten sind in anderen Komponenten geschachtelt.Some components are nested within other components. So enthält eine Entität beispielsweise Formulare, Ansichten, Diagramme, Felder, Entitätsbeziehungen, Nachrichten und Geschäftsregeln.For example, an entity contains forms, views, charts, fields, entity relationships, messages, and business rules. Für jede dieser Komponenten muss eine Entität vorhanden sein.Each of those components requires an entity to exist. Ein Feld kann außerhalb einer Entität nicht existieren.A field can’t exist outside of an entity. Wir sprechen davon, dass das Feld von der Entität abhängt.We say that the field is dependent on the entity. Eigentlich gibt es doppelt so viele Arten von Komponenten wie in der oben stehenden Liste angegeben. Die meisten davon sind jedoch in anderen Komponenten geschachtelt und in der Anwendung nicht sichtbar.There are actually twice as many types of components as shown in the preceding list, but most of them are not nested within other components and not visible in the application.

Der Zweck von Komponenten besteht darin, alle Einschränkungen hinsichtlich der Anpassbarkeit mit verwalteten Eigenschaften sowie alle Abhängigkeiten nachzuverfolgen, sodass sie exportiert, importiert und (in verwalteten Lösungen) restlos gelöscht werden können.The purpose of having components is to keep track of any limitations on what can be customized using managed properties and all the dependencies so that it can be exported, imported, and (in managed solutions) deleted without leaving anything behind.

Nicht verwaltete und verwaltete LösungenManaged and unmanaged solutions

Es gibt verwaltete und nicht verwaltete Lösungen.There are managed and unmanaged solutions. Eine verwaltete Lösung kann nicht geändert, aber nach dem Import deinstalliert werden.A managed solution cannot be modified and can be uninstalled after it is imported. Durch die Deinstallation der Lösung werden alle Komponenten dieser Lösung entfernt.All the components of that solution are removed by uninstalling the solution.

Beim Importieren einer nicht verwalteten Lösung werden Ihrer Umgebung alle Komponenten dieser Lösung hinzugefügt.When you import an unmanaged solution, you add all the components of that solution into your environment. Die Komponenten können nicht durch Deinstallieren der Lösung entfernt werden.You can’t remove the components by uninstalling the solution.

Wenn Sie eine nicht verwaltete Lösung importieren, die bereits von Ihnen angepasste Komponenten enthält, werden Ihre Anpassungen durch die Anpassungen in der importierten nicht verwalteten Lösung überschrieben.When you import an unmanaged solution that contains components that you have already customized, your customizations will be overwritten by the customizations in the imported unmanaged solution. Dieser Vorgang kann nicht rückgängig gemacht werden.You can’t undo this.

Wichtig

Installieren Sie eine nicht verwaltete Lösung nur, wenn Sie alle Komponenten zu Ihrer Umgebung hinzufügen und alle vorhandenen Anpassungen überschreiben möchten.Install an unmanaged solution only if you want to add all the components to your environment and overwrite any existing customizations.

Selbst wenn Sie Ihre Apps und Anpassungen nicht verteilen möchten, empfiehlt es sich möglicherweise, eine nicht verwaltete Lösung zu erstellen und zu verwenden, um über eine separate Ansicht nur der von Ihnen angepassten Teile der Anwendung zu verfügen.Even if you don’t plan on distributing your apps or customizations, you may want to create and use an unmanaged solution to have a separate view that only includes those parts of the application that you have customized. Wenn Sie irgend etwas anpassen, fügen Sie es einfach der nicht verwalteten Lösung hinzu, die Sie erstellt haben.Whenever you customize something, just add it to the unmanaged solution that you created.

Sie können Ihre Standardlösung nur als nicht verwaltete Lösung exportieren.You can only export your Default Solution as an unmanaged solution.

Zum Erstellen einer verwalteten Lösung wählen Sie beim Exportieren der Lösung die Option Verwaltet aus.To create a managed solution, you choose the As managed option when you export the solution. Wenn Sie eine verwaltete Lösung erstellen, können Sie diese nicht wieder in die Umgebung importieren, die Sie für die Erstellung verwendet haben.If you create a managed solution, you can’t import it back into the same environment you used to create it. Sie können sie nur in eine andere Umgebung importieren.You can only import it into a different environment.

Anwenden von LösungenHow solutions are applied

Alle Lösungen werden als Ebenen ausgewertet, um zu bestimmen, was Ihre App tatsächlich tun wird.All solutions are evaluated as layers to determine what your app will actually do. Das folgende Diagramm zeigt, wie verwaltete und nicht verwaltete Lösungen ausgewertet und Änderungen an den Lösungen in Ihrer Umgebung angezeigt werden.The following diagram shows how managed and unmanaged solutions are evaluated and how changes in them will appear in your environment.

LösungsebenenSolution layering

Von unten nach oben:Starting from the bottom and working up to top:

SystemlösungSystem Solution
Bei der Systemlösung handelt es sich um eine verwaltete Lösung, über die jede Umgebung verfügt.The system solution is like a managed solution that every environment has. Die Systemlösung ist die Definition aller sofort einsetzbaren Komponenten im System.The system solution is the definition of all the out-of-the box components in the system.

Verwaltete LösungenManaged Solutions
Mit verwalteten Lösungen können die Systemlösungskomponenten geändert und neue Komponenten hinzugefügt werden.Managed solutions can modify the system solution components and add new components. Wenn mehrere verwaltete Lösungen installiert werden, wird die erste unter den später installierten verwalteten Lösungen installiert.If multiple managed solutions are installed, the first one installed is below the managed solution installed later. Das bedeutet, dass die erste installierte Lösung durch die zweite installiert Lösung geändert werden kann.This means that the second solution installed can customize the one installed before it. Wenn die Definitionen zweier verwalteter Lösungen in Konflikt stehen, gilt als allgemeine Regel, dass die letzte den Vorrang hat.When two managed solutions have conflicting definitions, the general rule is “Last one wins”. Wenn Sie eine verwaltete Lösung deinstallieren, wird die verwaltete Lösung darunter wirksam.If you uninstall a managed solution, the managed solution below it takes effect. Wenn Sie alle verwalteten Lösungen deinstallieren, wird das innerhalb der Systemlösung definierte Standardverhalten angewendet.If you uninstall all managed solution, the default behavior defined within the system solution is applied.

Nicht verwaltete AnpassungenUnmanaged Customizations
Nicht verwaltete Anpassungen sind alle Änderungen, die Sie durch eine nicht verwaltete Lösung an Ihrer Umgebung vornehmen.Unmanaged customizations are any change you have made to your environment through an unmanaged solution. Durch die Systemlösung wird definiert, was Sie mit verwalteten Eigenschaften anpassen können.The system solution defines what you can or can't customize by using managed properties. Herausgeber von verwalteten Lösungen können Ihre Möglichkeiten bei der Anpassung von Lösungskomponenten begrenzen, die sie in ihrer Lösung hinzufügen.Publishers of managed solutions have the same ability to limit your ability to customize solution components that they add in their solution. Sie können alle Lösungskomponenten anpassen, die keine verwalteten Eigenschaften aufweisen, mit denen Sie an deren Anpassung gehindert werden.You can customize any of the solution components that do not have managed properties that prevent you from customization them.

AnwendungsverhaltenApplication Behavior
Das ist das Ergebnis, das Sie in Ihrer Umgebung tatsächlich zu sehen bekommen:This is what you actually see in your environment. die Standardsystemlösung, alle verwalteten Lösungen sowie alle nicht verwalteten Anpassungen, die Sie angewendet haben.The default system solution plus any managed solutions, plus any unmanaged customizations you have applied.

Verwaltete EigenschaftenManaged properties

Einige Komponenten können nicht angepasst werden.Some components can’t be customized. Diese Komponenten in der Systemlösung enthalten Metadaten, mit denen Sie an der Anpassung gehindert werden.These components in the system solution have metadata that prevents you from customizing them. Sie werden als verwaltete Eigenschaften bezeichnet.These are called managed properties. Der Herausgeber einer verwalteten Lösung kann die verwalteten Eigenschaften so festlegen, dass Sie daran gehindert werden, seine Lösung auf eine von ihm nicht gewünschte Weise anzupassen.The publisher of a managed solution can also set the managed properties to prevent you from customizing their solution in ways they don’t want you to.

LösungsabhängigkeitenSolution dependencies

Aufgrund der Anordnung verwalteter Lösungen in Ebenen können einige verwaltete Lösungen von Lösungskomponenten in anderen verwalteten Lösungen abhängen.Because of the way that managed solutions are layered some managed solutions can be dependent on solution components in other managed solutions. Diesen Umstand nutzen einige Lösungsherausgeber und erstellen modulare Lösungen.Some solution publishers will take advantage of this to build solutions that are modular. Möglicherweise müssen Sie zunächst eine verwaltete „Basislösung“ installieren und können erst danach eine zweite verwaltete Lösung installieren, mit der die Komponenten in der verwalteten Basislösung weiter angepasst werden.You may need to install a “base” managed solution first and then you can install a second managed that will further customize the components in the base managed solution. Die zweite verwaltete Lösung hängt von den Lösungskomponenten ab, die Teil ersten Lösung sind.The second managed solution depends on solution components that are part of the first solution.

Diese Abhängigkeiten zwischen Lösungen werden vom System verfolgt.The system tracks these dependencies between solutions. Eine Lösung, für die eine Basislösung erforderlich ist, die nicht installiert ist, kann nicht installiert werden.If you try to install a solution that requires a base solution that isn’t installed, you won’t be able to install the solution. Sie erhalten eine Meldung, dass für die Lösung zuerst eine andere Lösung installiert werden muss.You will get a message saying that the solution requires another solution to be installed first. Entsprechend kann die Basislösung aufgrund der Abhängigkeiten nicht deinstalliert werden, solange noch eine von ihr abhängige Lösung installiert ist.Similarly, because of the dependencies, you can’t uninstall the base solution while a solution that depends on it is still installed. Die abhängige Lösung muss vor der Basislösung deinstalliert werden.You have to uninstall the dependent solution before you can uninstall the base solution.

Nächste SchritteNext steps

Import, update, and export solutions (Importieren, Aktualisieren und Exportieren von Lösungen)Import, update, and export solutions
Navigieren zu einer bestimmten LösungNavigate to a specific solution