# Power Apps Power Apps

Level-500-Referenz zu Canvas Apps, Model-driven Apps, Dataverse, Power Fx, Konnektoren, ALM, DLP, AI Builder, CoE und Administrationsautomatisierung. Level 500 reference for canvas apps, model-driven apps, Dataverse, Power Fx, connectors, ALM, DLP, AI Builder, CoE, and administrative automation.

100+ 100+
Canvas Controls im Katalog Canvas controls in catalog
40+ 40+
Power-Fx-Schlüsselbausteine Power Fx core building blocks
Dataverse Dataverse
Sicherheits- und Datenkern Security and data core
ALM ALM
Lösungen, Pipelines, Governance Solutions, pipelines, governance
ℹ️ Enterprise Power Apps beginnt mit Datenmodell und Delegation ℹ️ Enterprise Power Apps starts with data model and delegation

Canvas Apps skalieren nur dann sauber, wenn Delegationsgrenzen, Verbindungsreferenzen, Komponentenbibliotheken und Dataverse-Sicherheitsrollen früh berücksichtigt werden. Canvas apps scale cleanly only when delegation limits, connection references, component libraries, and Dataverse security roles are addressed early.

Canvas Apps Canvas apps

Screens, Controls, Responsive Design Screens, controls, responsive design

Power Fx und Konnektoren Power Fx and connectors

Formeln, Datenquellen, Delegation Formulas, data sources, delegation

Model-driven und Dataverse Model-driven and Dataverse

Tabellen, Formulare, Sicherheit Tables, forms, security

ALM und Governance ALM and governance

Solutions, DLP, CoE, APIs Solutions, DLP, CoE, APIs

## Canvas Apps, Screens und Controls Canvas apps, screens, and controls

Canvas Apps kombinieren Formeln, deklarative UI und Datenquellen in einem ereignisorientierten Laufzeitmodell. Enterprise-Design erfordert responsive Container, Komponentenbibliotheken, offlinefähige Muster und eine klare Trennung zwischen Zustandsvariablen, Named Formulas und Datenabruf. Canvas apps combine formulas, declarative UI, and data sources in an event-driven runtime model. Enterprise design requires responsive containers, component libraries, offline-capable patterns, and a clear separation between state variables, named formulas, and data retrieval.

Control Control | Kategorie Category | Zweck Purpose | Praxisnotiz Practical note
--- | --- | --- | ---
Label Label | Anzeige Display | Zeigt statischen oder formelbasierten Text an. Displays static or formula-driven text. | AutoHeight und AccessibleLabel konsequent setzen. Use AutoHeight and AccessibleLabel consistently.
Text Text | Anzeige Display | Einfache Textdarstellung für Layouts. Simple text display for layouts. | Moderne Variante für Fluent-Layouts. Modern variant for Fluent layouts.
Auto Height Label Auto Height Label | Anzeige Display | Dynamische Textbox für variable Inhalte. Dynamic text box for variable content. | Hilfreich in Galerien und responsiven Karten. Useful in galleries and responsive cards.
Button Button | Aktion Action | Startet Befehle oder Navigation. Triggers commands or navigation. | DisplayMode, OnSelect und Loading-State beachten. Consider DisplayMode, OnSelect, and loading state.
Modern Button Modern Button | Aktion Action | Fluent-2-Schaltfläche für moderne Oberflächen. Fluent 2 button for modern surfaces. | Für neue Apps bevorzugen. Prefer for new apps.
Icon Icon | Anzeige Display | Ikonische Aktion oder Statusdarstellung. Iconic action or status display. | Nicht als einzige barrierefreie Kennzeichnung verwenden. Do not use as the sole accessible indicator.
Image Image | Medien Media | Zeigt Bilder aus URLs oder Medien an. Displays images from URLs or media. | Caching und Bandbreite berücksichtigen. Account for caching and bandwidth.
Add Picture Add Picture | Medien Media | Nimmt Bilder vom Gerät auf. Captures images from the device. | Offline-Caches und Dateigröße beachten. Consider offline caches and file size.
Camera Camera | Medien Media | Greift auf die Gerätekamera zu. Accesses the device camera. | Berechtigungen und Mobilplattform testen. Test permissions and mobile platform behavior.
Barcode Reader Barcode Reader | Medien Media | Scannt Barcodes oder QR-Codes. Scans barcodes or QR codes. | Mobilorientiert und hardwareabhängig. Mobile-oriented and hardware-dependent.
Microphone Microphone | Medien Media | Nimmt Audiodaten auf. Records audio. | Nur bei klarem Geschäftsfall nutzen. Use only for a clear business case.
Audio Audio | Medien Media | Spielt Audioquellen ab. Plays audio sources. | Autoplay vermeiden. Avoid autoplay.
Video Video | Medien Media | Spielt Videoinhalte ab. Plays video content. | Streaming und Datenverbrauch beachten. Consider streaming and data consumption.
PDF Viewer PDF Viewer | Dokument Document | Stellt PDFs in der App dar. Renders PDFs inside the app. | Mobile Rendering und Zoom testen. Test mobile rendering and zoom.
Pen Input Pen Input | Eingabe Input | Erfasst handschriftliche Eingaben. Captures handwriting input. | Für Signaturen und Skizzen geeignet. Good for signatures and sketches.
Ink Image Ink Image | Eingabe Input | Zeigt Pen-Input als Bild an. Displays pen input as an image. | Oft zusammen mit Pen Input verwendet. Often used together with Pen Input.
Text Input Text Input | Eingabe Input | Erfasst einzeiligen Text. Captures single-line text. | DelayOutput reduziert unnötige Abfragen. DelayOutput reduces unnecessary queries.
Modern Text Input Modern Text Input | Eingabe Input | Fluent-2-Texteingabe. Fluent 2 text input. | Für moderne Apps und Theming geeignet. Suitable for modern apps and theming.
Rich Text Editor Rich Text Editor | Eingabe Input | Erfasst formatierte HTML-Inhalte. Captures formatted HTML content. | Sanitization und Datenspeicherung planen. Plan for sanitization and storage.
Number Input Number Input | Eingabe Input | Erfasst numerische Werte. Captures numeric values. | Val()-Konvertierungen minimieren. Minimize Val() conversions.
Dropdown Dropdown | Auswahl Selection | Wählt genau einen Wert aus einer Liste. Selects one value from a list. | Für kurze Listen geeignet. Suitable for short lists.
Modern Dropdown Modern Dropdown | Auswahl Selection | Fluent-2-Dropdown für Einzelauswahl. Fluent 2 dropdown for single selection. | Konsistentes modernes Styling. Consistent modern styling.
Combo Box Combo Box | Auswahl Selection | Sucht und wählt einen oder mehrere Werte. Searches and selects one or more values. | Delegation und SearchFields prüfen. Review delegation and SearchFields.
Modern Combo Box Modern Combo Box | Auswahl Selection | Moderne Combobox mit Fluent-Rendering. Modern combo box with Fluent rendering. | Large lists nur mit delegierbarer Quelle. Use large lists only with a delegable source.
List Box List Box | Auswahl Selection | Zeigt Optionen in Listenform. Displays options in list form. | Gut für Mehrfachauswahl in Desktop-Layouts. Good for multi-select in desktop layouts.
Radio Radio | Auswahl Selection | Einzelauswahl mit direkter Sichtbarkeit. Single selection with immediate visibility. | Nur für wenige Optionen. Use only for a few options.
Modern Radio Modern Radio | Auswahl Selection | Fluent-2-Radio-Optionen. Fluent 2 radio options. | Konsistentes Theming. Consistent theming.
Checkbox Checkbox | Auswahl Selection | Ja/Nein oder Listenmarkierung. Yes/no or list selection. | Default-Werte transparent gestalten. Make default values explicit.
Modern Checkbox Modern Checkbox | Auswahl Selection | Fluent-2-Checkbox. Fluent 2 checkbox. | Gut für Einstellungen und Präferenzen. Good for settings and preferences.
Toggle Toggle | Auswahl Selection | Schaltet eine Option ein oder aus. Turns an option on or off. | Besser als Checkbox bei Zustandsumschaltung. Better than a checkbox for state toggles.
Modern Toggle Modern Toggle | Auswahl Selection | Fluent-2-Toggle. Fluent 2 toggle. | Labeling für Barrierefreiheit mitgeben. Provide labeling for accessibility.
Slider Slider | Eingabe Input | Wählt Werte auf einem Kontinuum. Chooses values on a continuum. | Für Kennzahlen mit Bereich. Useful for ranged values.
Modern Slider Modern Slider | Eingabe Input | Fluent-2-Slider. Fluent 2 slider. | Touch-Ziele auf Mobilgeräten testen. Test touch targets on mobile.
Date Picker Date Picker | Datum Date | Erfasst Datumswerte. Captures date values. | Locale, Format und UTC-Verhalten prüfen. Review locale, format, and UTC behavior.
Modern Date Picker Modern Date Picker | Datum Date | Fluent-2-Datumsauswahl. Fluent 2 date picker. | Konsistente Datumsformate verwenden. Use consistent date formats.
Rating Rating | Eingabe Input | Erfasst Bewertungen auf Skalenbasis. Captures rating values. | Für Feedback-Szenarien geeignet. Suitable for feedback scenarios.
Link Link | Navigation Navigation | Öffnet Hyperlinks oder Deep Links. Opens hyperlinks or deep links. | Launch() nur mit validierten Zielen. Use Launch() only with validated targets.
Timer Timer | Logik Logic | Steuert zeitbasierte Abläufe. Controls time-based behavior. | Nicht für komplexe Serverlogik missbrauchen. Do not misuse for complex server logic.
Form Form | Daten Data | Allgemeine Eingabehülle für Datensätze. General data-entry shell for records. | EditForm oder DisplayForm gezielt wählen. Choose EditForm or DisplayForm intentionally.
Edit Form Edit Form | Daten Data | Bearbeitet einen Datensatz deklarativ. Edits a record declaratively. | Karten-Anpassung statt komplettem Neubau bevorzugen. Prefer card customization over full rebuilds.
Display Form Display Form | Daten Data | Zeigt Datensätze schreibgeschützt an. Displays records read-only. | Gut für Genehmigungs- und Detailseiten. Good for approval and detail pages.
Gallery Gallery | Daten Data | Wiederholt Vorlagen pro Datensatz. Repeats templates per record. | TemplateFill und Lazy Loading prüfen. Review TemplateFill and lazy loading.
Vertical Gallery Vertical Gallery | Daten Data | Vertikale Datensatzliste. Vertical list of records. | Standard für mobile Listen. Default for mobile lists.
Horizontal Gallery Horizontal Gallery | Daten Data | Horizontale Karten- oder Medienliste. Horizontal list for cards or media. | Breitenlogik responsiv halten. Keep width logic responsive.
Flexible Height Gallery Flexible Height Gallery | Daten Data | Variable Zeilenhöhe für Textlastige Daten. Variable row height for text-heavy data. | Renderaufwand beobachten. Watch rendering cost.
Blank Vertical Gallery Blank Vertical Gallery | Daten Data | Leere vertikale Vorlage für freies Layout. Blank vertical template for freeform layouts. | Mehr Freiheit, aber mehr Pflegeaufwand. More freedom, but more maintenance.
Blank Horizontal Gallery Blank Horizontal Gallery | Daten Data | Leere horizontale Galerie. Blank horizontal gallery. | Für Carousels oder dynamische Kacheln. For carousels or dynamic tiles.
Data Table Data Table | Daten Data | Tabellarische Darstellung vieler Spalten. Tabular display of many columns. | Für reine Anzeige, nicht für reiches Layout. For read-heavy display, not rich layout.
Table Table | Daten Data | Moderne Tabellenvisualisierung. Modern table visualization. | Fluent-2-Alternative zur klassischen Data Table. Fluent 2 alternative to the classic data table.
Chart Chart | Visualisierung Visualization | Oberbegriff für Diagrammsteuerelemente. General chart control family. | Datenvorbereitung oft via AddColumns oder GroupBy. Often needs AddColumns or GroupBy.
Pie Chart Pie Chart | Visualisierung Visualization | Anteilige Verteilungen anzeigen. Shows proportional distributions. | Nicht für zu viele Kategorien verwenden. Do not use with too many categories.
Column Chart Column Chart | Visualisierung Visualization | Vergleicht diskrete Werte über Kategorien. Compares discrete values across categories. | Achsenbeschriftung früh testen. Test axis labels early.
Line Chart Line Chart | Visualisierung Visualization | Zeigt Trends über Zeit. Shows trends over time. | Zeitdimension sauber sortieren. Sort the time dimension correctly.
Power BI Tile Power BI Tile | Visualisierung Visualization | Bindet Power-BI-Kacheln in Apps ein. Embeds Power BI tiles into apps. | Für kombinierte App- und BI-Erlebnisse. Useful for combined app and BI experiences.
Map Map | Visualisierung Visualization | Geografische Datenpunkte oder Bereiche. Displays geographic points or areas. | Datenschutz und API-Beschränkungen beachten. Observe privacy and API limits.
Address Input Address Input | Eingabe Input | Erfasst adressbezogene Informationen strukturiert. Captures address information in structured form. | Gut mit Maps und Geocoding kombinierbar. Works well with maps and geocoding.
People Picker People Picker | Auswahl Selection | Sucht Benutzer und Gruppen. Searches users and groups. | Meist mit Office- oder Dataverse-Personenfeldern kombiniert. Usually paired with Office or Dataverse person fields.
Attachment Attachment | Dokument Document | Dateianhänge zu Datensätzen verwalten. Manages file attachments on records. | Dataverse/SharePoint-Verhalten unterscheiden. Distinguish Dataverse and SharePoint behavior.
Import Import | Datei File | Importiert Dateien in die App. Imports files into the app. | Typischerweise mit Parse- oder Upload-Logik gekoppelt. Typically paired with parse or upload logic.
Export Export | Datei File | Exportiert Daten oder Dateien. Exports data or files. | Berechtigungen und DLP berücksichtigen. Consider permissions and DLP.
HTML Text HTML Text | Anzeige Display | Rendert HTML-Inhalte. Renders HTML content. | Nur mit vertrauenswürdigen Inhalten nutzen. Use only with trusted content.
Spinner Spinner | Feedback Feedback | Zeigt Ladezustände an. Shows loading states. | Mit globalen Busy-Flags koppeln. Tie to global busy flags.
Progress Bar Progress Bar | Feedback Feedback | Visualisiert Fortschritt. Visualizes progress. | Für lange Operationen oder Onboarding. Useful for long operations or onboarding.
Badge Badge | Feedback Feedback | Kleine Statusmarkierung. Small status marker. | Ideal für Zustände in Galerien. Ideal for states in galleries.
Info Label Info Label | Feedback Feedback | Zeigt Zusatzinformationen oder Tooltips. Shows supporting information or tooltips. | Hilft bei Formularerklärungen. Helps explain forms.
Header Header | Layout Layout | Wiederverwendbarer Kopfbereich. Reusable header region. | Oft als Komponente umgesetzt. Often implemented as a component.
Footer Footer | Layout Layout | Wiederverwendbarer Fußbereich. Reusable footer region. | Responsive Sichtbarkeit beachten. Consider responsive visibility.
Container Container | Layout Layout | Basiskontainer für Ausrichtung. Base container for alignment. | Automatisches Layout bevorzugen. Prefer automatic layout.
Horizontal Container Horizontal Container | Layout Layout | Ordnet Inhalte horizontal an. Arranges content horizontally. | Gap und Wrap gezielt steuern. Control gap and wrap deliberately.
Vertical Container Vertical Container | Layout Layout | Ordnet Inhalte vertikal an. Arranges content vertically. | Standardbaustein für responsive Screens. Core building block for responsive screens.
Group Container Group Container | Layout Layout | Gruppiert Controls logisch. Groups controls logically. | Erleichtert Sichtbarkeits- und Style-Vererbung. Simplifies visibility and style propagation.
Responsive Container Responsive Container | Layout Layout | Dynamisches Layout für verschiedene Größen. Dynamic layout for different sizes. | Breakpoints und flexible Width-Funktionen nutzen. Use breakpoints and flexible width functions.
Screen Screen | Layout Layout | Top-Level-Container einer Ansicht. Top-level container of a view. | Navigation, OnVisible und Loading getrennt halten. Keep navigation, OnVisible, and loading separate.
Component Component | Komponente Component | Wiederverwendbare UI- und Logikbausteine. Reusable UI and logic blocks. | Properties, Output und Behavior sauber definieren. Define properties, output, and behavior cleanly.
Component Library Component Library | Komponente Component | Zentrale Bibliothek für gemeinsame Komponenten. Central library for shared components. | Governance- und Versionierungshebel für große Teams. Governance and versioning lever for large teams.
Command Bar Command Bar | Navigation Navigation | Befehlsleiste für kontextuelle Aktionen. Command bar for contextual actions. | Modernes Pattern für Listen und Detailseiten. Modern pattern for lists and detail pages.
Tab List Tab List | Navigation Navigation | Wechselt zwischen Bereichen innerhalb eines Screens. Switches between areas inside a screen. | Tabs statt zusätzlicher Screens bei leichter Variation. Use tabs instead of extra screens for light variation.
Modern Tabs Modern Tabs | Navigation Navigation | Fluent-2-Tabnavigation. Fluent 2 tab navigation. | Für moderne Oberflächen und Accessibility geeignet. Suitable for modern surfaces and accessibility.
Breadcrumb Breadcrumb | Navigation Navigation | Zeigt Navigationspfad an. Shows the navigation path. | Vor allem in Desktop-Szenarien nützlich. Mostly useful in desktop scenarios.
Menu Menu | Navigation Navigation | Kontextmenü oder App-Menü. Context or app menu. | Rollenabhängige Sichtbarkeit unterstützen. Support role-based visibility.
Dialog Dialog | Feedback Feedback | Modale Bestätigung oder Datenerfassung. Modal confirmation or data capture. | Für kritische Aktionen oder kurze Formulare. For critical actions or short forms.
Persona Persona | Anzeige Display | Darstellung einer Person mit Avatar und Metadaten. Displays a person with avatar and metadata. | Passt gut zu M365-Nutzerprofilen. Fits well with M365 user profiles.
Avatar Avatar | Anzeige Display | Kompakte Personendarstellung. Compact person representation. | Für Listen, Karten und Header. For lists, cards, and headers.
Tag List Tag List | Anzeige Display | Mehrere Tags oder Chips anzeigen. Displays multiple tags or chips. | Gut für Filterzustände und Metadaten. Good for filter state and metadata.
Tree View Tree View | Navigation Navigation | Hierarchische Navigation oder Auswahl. Hierarchical navigation or selection. | Nützlich für Produkt- oder Standortstrukturen. Useful for product or location hierarchies.
Search Box Search Box | Eingabe Input | Optimierte Sucheingabe. Optimized search input. | Debounce mit Timer oder DelayOutput kombinieren. Pair with debounce via Timer or DelayOutput.
Rectangle Rectangle | Form Shape | Rechteckige Flächen oder Trennungen. Rectangular areas or separators. | Für Hintergründe und Hervorhebungen. For backgrounds and emphasis.
Circle Circle | Form Shape | Kreisförmige Flächen oder Indikatoren. Circular shapes or indicators. | Oft als Badge-Hintergrund genutzt. Often used as a badge background.
Triangle Triangle | Form Shape | Geometrische Form für Marker. Geometric shape for markers. | Kann Status oder Hinweise markieren. Can mark status or hints.
Arrow Arrow | Form Shape | Visuelle Führung oder Flow-Richtung. Visual guidance or flow direction. | Nützlich in Wizard-Layouts. Useful in wizard layouts.
Line Line | Form Shape | Trenner oder Verbindungsmarkierung. Divider or connector. | Für visuelle Hierarchie. For visual hierarchy.
Chevron Chevron | Form Shape | Expand/Collapse-Hinweise. Expand/collapse hints. | Oft mit Komponenten gekoppelt. Often paired with components.
Business Card Reader Business Card Reader | AI Builder AI Builder | Liest Kontaktdaten aus Visitenkarten. Reads contact data from business cards. | Benötigt AI-Builder-Kapazität. Requires AI Builder capacity.
Object Detector Object Detector | AI Builder AI Builder | Erkennt Objekte in Bildern oder Kamera-Streams. Detects objects in images or camera streams. | Eignet sich für Inventur- und QS-Szenarien. Fits inventory and quality scenarios.
Text Recognizer Text Recognizer | AI Builder AI Builder | Extrahiert Text aus Bildern. Extracts text from images. | OCR-Ergebnis vor Persistenz validieren. Validate OCR results before persisting.
Document Viewer Document Viewer | Dokument Document | Zeigt Dokumente im Kontext eines Prozesses. Shows documents in process context. | PDF Viewer oder benutzerdefinierte Komponenten kombinieren. Combine with PDF Viewer or custom components.
Model-Driven Form Component Model-Driven Form Component | Komponente Component | Bindet model-driven Formularlogik ein. Brings model-driven form behavior into an app. | Hilfreich in hybriden Szenarien. Useful in hybrid scenarios.
PCF Control PCF Control | Komponente Component | Benutzerdefiniertes React/TypeScript-Control. Custom React/TypeScript control. | Für komplexe UI-Anforderungen und Wiederverwendung. For complex UI requirements and reuse.
Data Card Data Card | Daten Data | Eingabekarte innerhalb eines Formulars. Input card inside a form. | Unlock nur mit klarem Grund. Unlock only for a clear reason.
Custom Card Custom Card | Daten Data | Maßgeschneiderte Formularsektion. Tailored form section. | Gute Balance zwischen Flexibilität und Governance. Good balance between flexibility and governance.
Section Section | Layout Layout | Logische Unterteilung eines Screens. Logical subdivision of a screen. | Mit Komponenten oder Containern modellieren. Model with components or containers.
Rich Text Display Rich Text Display | Anzeige Display | Stellt formatierte Inhalte schreibgeschützt dar. Displays formatted content read-only. | Für Wissensinhalte oder FAQ-Bereiche. For knowledge content or FAQ areas.
Calendar View Calendar View | Visualisierung Visualization | Kalenderartige Darstellung von Terminen. Calendar-like view of schedules. | Häufig via Galerie und Datumslogik gebaut. Often built using galleries and date logic.
Kanban Board Kanban Board | Visualisierung Visualization | Spaltenbasierte Aufgabenansicht. Column-based task view. | Oft als zusammengesetztes Galerie-Pattern. Often implemented as a composite gallery pattern.
Timeline Timeline | Visualisierung Visualization | Zeitliche Abfolge von Ereignissen. Chronological sequence of events. | Hilfreich für Status- und Case-Apps. Useful for status and case apps.
Wizard Stepper Wizard Stepper | Navigation Navigation | Mehrstufige Datenerfassung führen. Guides multi-step data capture. | Mit Kontextvariablen und Validierung koppeln. Pair with context variables and validation.
Notification Banner Notification Banner | Feedback Feedback | Hebt Meldungen oder Fehler hervor. Highlights messages or errors. | Mit zentraler Fehlerbehandlung kombinieren. Combine with centralized error handling.
Status Pill Status Pill | Feedback Feedback | Verdichtete Statusdarstellung in Listen. Compact status display in lists. | Farben zusätzlich textlich erklären. Explain colors with text as well.
Empty State Panel Empty State Panel | Feedback Feedback | Leitet Benutzer bei leerem Datenbestand. Guides users when no data exists. | Wichtig für Adoption und Support-Entlastung. Important for adoption and support reduction.
Hero Card Hero Card | Anzeige Display | Präsentiert primäre Kennzahl oder Aktion. Presents a primary metric or action. | Für Startseiten und Dashboards. For home pages and dashboards.
KPI Tile KPI Tile | Anzeige Display | Zeigt Kennzahl mit Trend oder Status. Shows a KPI with trend or state. | Oft als Komponentenpattern umgesetzt. Often implemented as a component pattern.
Adaptive Card Host Adaptive Card Host | Integration Integration | Stellt Adaptive Cards oder Kartenobjekte dar. Hosts adaptive cards or card objects. | Hilfreich bei Teams-nahen Erfahrungen. Useful for Teams-adjacent experiences.
Office Profile Card Office Profile Card | Integration Integration | Zeigt M365-Profilkontext an. Shows M365 profile context. | Gut für People-Centric-Apps. Good for people-centric apps.
Record Picker Record Picker | Auswahl Selection | Wählt einen Dataverse-Datensatz gezielt aus. Picks a Dataverse record explicitly. | Such- und Filterperformance testen. Test search and filter performance.
Lookup Chip Lookup Chip | Auswahl Selection | Komprimierte Darstellung gewählter Referenzen. Compact display of selected references. | Nützlich in Formularchips und Many-to-Many-Szenarien. Useful in form chips and many-to-many scenarios.
Schedule Grid Schedule Grid | Visualisierung Visualization | Raster für Schicht- oder Terminplanung. Grid for shift or appointment planning. | Oft per PCF besser realisierbar. Often better implemented with PCF.
Attachment Gallery Attachment Gallery | Dokument Document | Listet mehrere Anhänge visuell auf. Lists multiple attachments visually. | Mit Attachment-Control oder Dataverse-File-Spalten koppeln. Pair with the attachment control or Dataverse file columns.

## Power Fx, Konnektoren, Delegation und Offline-Muster Power Fx, connectors, delegation, and offline patterns

Power Fx ist eine tabellenorientierte, deklarative Sprache mit starkem Bezug zum Excel-Denkmodell. Enterprise-Apps scheitern meist nicht an fehlenden Formeln, sondern an falscher Delegation, zu vielen Chatty Calls, unklarer Zustandslogik oder fehlender Trennung zwischen Behavior- und Property-Formeln. Power Fx is a table-oriented declarative language strongly related to Excel thinking. Enterprise apps usually fail not because formulas are missing, but because delegation is wrong, calls are too chatty, state logic is unclear, or behavior and property formulas are not separated.

Power-Fx-Baustein Power Fx building block | Wofür What for | Beispiel Example | Hinweis Note
--- | --- | --- | ---
Patch Patch | Datensätze erstellen oder ändern Create or update records | Patch(Accounts, Defaults(Accounts), { Name: txtName.Text }) Patch(Accounts, Defaults(Accounts), { Name: txtName.Text }) | Für Bulk-Updates mit ForAll sparsam einsetzen Use sparingly with ForAll for bulk updates
Collect Collect | Lokale Sammlung oder temporäre Daten Local collection or temporary data | Collect(colCart, ThisItem) Collect(colCart, ThisItem) | Nicht als dauerhaften Datenspeicher missverstehen Do not mistake for durable storage
ClearCollect ClearCollect | Sammlung zurücksetzen und neu laden Reset and refill a collection | ClearCollect(colOpenCases, Filter(Cases, Status = 'Open')) ClearCollect(colOpenCases, Filter(Cases, Status = 'Open')) | Bei großen Datenmengen Delegation beachten Mind delegation on large data sets
Filter Filter | Datensätze nach Kriterien einschränken Restrict records by criteria | Filter(Accounts, StartsWith(Name, txtSearch.Text)) Filter(Accounts, StartsWith(Name, txtSearch.Text)) | Mit delegierbaren Funktionen bevorzugen Prefer delegable functions
LookUp LookUp | Ersten passenden Datensatz finden Find the first matching record | LookUp(Accounts, Account = varAccountId) LookUp(Accounts, Account = varAccountId) | Explizit gewünschte Spalten projizieren, wenn möglich Project only desired columns when possible
Set Set | Globale Variable setzen Set a global variable | Set(varMode, "Edit") Set(varMode, "Edit") | Für App-weiten Zustand, nicht für alles Use for app-wide state, not everything
UpdateContext UpdateContext | Screen-lokale Variablen Screen-local variables | UpdateContext({ showDialog: true }) UpdateContext({ showDialog: true }) | Für lokale UI-Zustände ideal Ideal for local UI state
Navigate Navigate | Zwischen Screens wechseln Move between screens | Navigate(scrDetails, ScreenTransition.Fade, { recordId: ThisItem.Id }) Navigate(scrDetails, ScreenTransition.Fade, { recordId: ThisItem.Id }) | Kontextobjekte explizit übergeben Pass context records explicitly
ForAll ForAll | Tabelleniteration Table iteration | ForAll(colChanges, Patch(Tasks, LookUp(Tasks, Task = ThisRecord.Task), { Status: "Done" })) ForAll(colChanges, Patch(Tasks, LookUp(Tasks, Task = ThisRecord.Task), { Status: "Done" })) | Nicht delegierbar, daher für kleinere Sets Not delegable, so use for smaller sets
Concurrent Concurrent | Parallele Datenabrufe Parallel data calls | Concurrent(Refresh(Accounts), Refresh(Contacts)) Concurrent(Refresh(Accounts), Refresh(Contacts)) | Verbessert Ladezeit bei unabhängigen Aufrufen Improves load time for independent calls
With With | Lokale Ausdrucksbindung Local expression binding | With({ base: Value(txtAmount.Text) }, base * 1.19) With({ base: Value(txtAmount.Text) }, base * 1.19) | Lesbarkeit großer Formeln verbessern Improves readability of large formulas
As As | Alias in verschachtelten Tabellen Alias in nested tables | AddColumns(colItems As i, "Gross", i.Net * 1.19) AddColumns(colItems As i, "Gross", i.Net * 1.19) | Besonders in ForAll und AddColumns hilfreich Especially useful in ForAll and AddColumns
Sequence Sequence | Zahlenreihen oder Iterationsgrundlage Number sequences or iteration base | Sequence(12) Sequence(12) | Hilfreich für Kalender und Platzhalter Useful for calendars and placeholders
SortByColumns SortByColumns | Explizite Sortierung Explicit sorting | SortByColumns(Accounts, "name", SortOrder.Ascending) SortByColumns(Accounts, "name", SortOrder.Ascending) | Für delegierbare Sortierung bevorzugen Prefer for delegable sorting
AddColumns AddColumns | Berechnete Spalten zur Laufzeit Runtime-calculated columns | AddColumns(Accounts, "OpenCases", CountRows(Filter(Cases, Account = Account))) AddColumns(Accounts, "OpenCases", CountRows(Filter(Cases, Account = Account))) | Kann nicht delegierbar werden Can become non-delegable
DropColumns DropColumns | Nicht benötigte Felder entfernen Remove unnecessary fields | DropColumns(colAccounts, "LargeBlob") DropColumns(colAccounts, "LargeBlob") | Reduziert Payload und Speicher Reduces payload and memory
ShowColumns ShowColumns | Gezielte Projektion Targeted projection | ShowColumns(Accounts, "name", "accountid") ShowColumns(Accounts, "name", "accountid") | Hilft bei Bandbreite und Delegation Helps with bandwidth and delegation
JSON JSON | Objekte für APIs serialisieren Serialize objects for APIs | JSON(colPayload, JSONFormat.Compact) JSON(colPayload, JSONFormat.Compact) | Gut für Custom Connector-Calls Good for custom connector calls
ParseJSON ParseJSON | JSON in untyped object umwandeln Turn JSON into an untyped object | ParseJSON(varResponse) ParseJSON(varResponse) | Typed access gezielt nachbauen Rebuild typed access intentionally
LoadData/SaveData LoadData/SaveData | Offline-Caching Offline caching | SaveData(colCache, "cases") SaveData(colCache, "cases") | Nur auf unterstützten Clients verwenden Use only on supported clients

Datenquelle Data source | Delegierbar? Delegable? | Typischer Einsatz Typical usage | Hinweis Note
--- | --- | --- | ---
Dataverse Dataverse | Weitgehend ja Mostly yes | Transaktionale Geschäftsdaten Transactional business data | Beste Wahl für Model-driven und sichere Canvas-Apps Best choice for model-driven and secure canvas apps
SharePoint SharePoint | Teilweise Partial | Listen, leichte Prozessdaten Lists and light process data | Komplexe Filter früh auf Delegation testen Test complex filters for delegation early
SQL Server SQL Server | Connectorabhängig hoch High depending on connector | LOB-Daten und relationale Quellen LOB data and relational sources | Views oder Stored Procedures für Performance nutzen Use views or stored procedures for performance
Custom Connector / REST Custom Connector / REST | Nein No | Spezial-APIs und Integrationen Specialized APIs and integrations | Serverseitiges Paging und Batch-Design nötig Need server-side paging and batch design
Excel Excel | Begrenzt Limited | Prototypen und Kleinstlösungen Prototypes and tiny solutions | Für Enterprise nicht als Primärspeicher empfehlen Do not recommend as a primary enterprise store

Power Fx Power Fx

    Set(varBusy, true);
    Concurrent(
        ClearCollect(colAccounts, ShowColumns(Accounts, "accountid", "name", "accountnumber")),
        ClearCollect(colOwners, ShowColumns(Users, "systemuserid", "fullname"))
    );
    Set(varBusy, false);

    Patch(
        Accounts,
        Coalesce(varCurrentAccount, Defaults(Accounts)),
        {
            Name: txtName.Text,
            'Primary Contact': cmbPrimaryContact.Selected,
            Revenue: Value(txtRevenue.Text)
        }
    )

## Model-driven Apps und Dataverse Model-driven apps and Dataverse

Dataverse-Baustein Dataverse building block | Beschreibung Description | Beispiel Example | Architekturhinweis Architecture note
--- | --- | --- | ---
Tabelle Table | Geschäftsobjekt mit Metadaten, Formularen und Sicherheitsmodell Business object with metadata, forms, and security model | Account, Case, Work Order Account, Case, Work Order | Namenskonventionen und Lösungsgrenzen früh definieren Define naming conventions and solution boundaries early
Primärspalte Primary column | Lesbarer Hauptwert eines Datensatzes Readable main value of a record | Account Name Account Name | Für Suche und UX zentral Central for search and UX
Choice Choice | Einfach- oder Mehrfachauswahl Single or multi-select option | Status, Segment, Priority Status, segment, priority | ALM über globale Choices vereinfachen Simplify ALM with global choices
Lookup Lookup | Beziehung zu anderem Datensatz Relationship to another record | Primary Contact Primary Contact | Beziehungslogik statt Freitext bevorzugen Prefer relationship logic over free text
Calculated Column Calculated column | Serverseitig aus anderen Feldern berechnet Server-calculated from other fields | Net Margin Net Margin | Keine zyklischen Abhängigkeiten erzeugen Avoid cyclic dependencies
Rollup Column Rollup column | Zeitversetzte Aggregation über Beziehungen Deferred aggregation across relationships | Total open cases per account Total open cases per account | Asynchrone Aktualisierung und Limits beachten Observe async refresh and limits
Business Rule Business rule | Low-Code Validierung und Sichtbarkeit Low-code validation and visibility | Pflichtfeld abhängig von Status Required field based on status | Nicht für komplexe Prozesslogik überstrapazieren Do not overstretch for complex process logic
Security Role Security role | Tabellenrechte, Aufgaben und privilegierte Aktionen Table rights, tasks, and privileged actions | Salesperson, CSR Admin Salesperson, CSR Admin | Rollen nach Persona und SoD modellieren Model roles by persona and segregation of duties
Business Unit Business unit | Organisationsgrenze für Besitz und Zugriff Organizational boundary for ownership and access | HQ, Region, Subsidiary HQ, region, subsidiary | Spätere Re-Organisationen sind teuer Later reorganizations are expensive
Team Team | Gemeinsame Besitz- oder Zugriffsfläche Shared ownership or access surface | Owner Team, Access Team Owner team, access team | Access Teams für Ad-hoc-Zugriff gut geeignet Access teams are useful for ad hoc access
Virtual Table Virtual table | Externe Daten ohne Replikation External data without replication | SQL oder SAP Referenzdaten SQL or SAP reference data | CRUD- und Performance-Beschränkungen prüfen Review CRUD and performance limits
Elastic Table Elastic table | Hoher Schreibdurchsatz und flexible Skalierung High write throughput and flexible scale | Telemetrie, Ereignisströme Telemetry and event streams | Nicht jede Dataverse-Funktion ist identisch verfügbar Not every Dataverse feature is identically available

Model-driven Element Model-driven element | Wofür What for | Beispiele Examples | Hinweis Note
--- | --- | --- | ---
Main Form Main form | Primäre Detailbearbeitung Primary detail editing | Tabbed account form Tabbed account form | Commanding und Business Rules hier eng abstimmen Align commanding and business rules closely here
Quick Create Form Quick create form | Schnellerfassung Rapid create | Lead quick create Lead quick create | Nur Kernfelder aufnehmen Include only core fields
Quick View Form Quick view form | Anzeigen verknüpfter Informationen Display related information | Primary contact snapshot Primary contact snapshot | Read-only und kontextbezogen halten Keep it read-only and contextual
View View | Listen und Filterdefinitionen List and filter definitions | My open opportunities My open opportunities | Sicherheits- und UX-Anforderungen verbinden Combine security and UX requirements
Dashboard Dashboard | Aggregation und Arbeitsvorrat Aggregation and work queue | Customer service dashboard Customer service dashboard | Mit Teams- oder Workspace-Szenarien koppeln Link with Teams or workspace scenarios
Sitemap Sitemap | Navigationsstruktur Navigation structure | Sales hub sitemap Sales hub sitemap | Rollenabhängige Navigation planen Plan role-based navigation
Classic Commanding Classic commanding | Ribbon-basierte Befehle Ribbon-based commands | Enable/disable buttons Enable/disable buttons | Modern Commanding bevorzugen, wenn möglich Prefer modern commanding when possible
Modern Commanding Modern commanding | Zeitgemäße Befehlsleiste mit Power Fx Modern command bar with Power Fx | Row actions and bulk actions Row actions and bulk actions | Solutions und Komponentenstrategie einbeziehen Include solutions and component strategy

## ALM, DLP, Admin Center, AI Builder und APIs ALM, DLP, admin center, AI Builder, and APIs

Governance-Bereich Governance area | Empfehlung Recommendation | Werkzeuge Tools | Warum Why
--- | --- | --- | ---
Environment Strategy Environment strategy | Prod, Non-Prod, Sandbox und Personal klar trennen Clearly separate prod, non-prod, sandbox, and personal | Power Platform admin center, naming standards Power Platform admin center, naming standards | Verhindert Schattenbetrieb und Datendrift Prevents shadow operations and data drift
Solutions Solutions | Alle produktiven Artefakte solution-aware bereitstellen Deploy all production artifacts as solution-aware | Managed solutions, patches, upgrades Managed solutions, patches, upgrades | Ermöglicht wiederholbare Releases Enables repeatable releases
Connection References Connection references | Verbindungen niemals hart im Flow oder App verankern Never hardcode connections inside the flow or app | Connection references, service accounts Connection references, service accounts | Vereinfacht Transport zwischen Umgebungen Simplifies promotion across environments
Environment Variables Environment variables | URLs, IDs und Flags parametrieren Parameterize URLs, IDs, and flags | Solution variables Solution variables | Erhöht Portabilität und Geheimnismanagement Improves portability and secret handling
DLP Policies DLP policies | Connectoren nach Business und Non-Business klassifizieren Classify connectors as business or non-business | Admin center, tenant isolation Admin center, tenant isolation | Verhindert Datenkopplung zwischen riskanten Diensten Prevents data joining across risky services
CoE Toolkit CoE toolkit | Inventarisierung, Nurturing und Governance automatisieren Automate inventory, nurturing, and governance | Starter Kit, audit apps, admin sync Starter Kit, audit apps, admin sync | Pflichtbaustein für große Mandanten A core building block for large tenants
AI Builder AI Builder | Nur mit klaren Datenszenarien und Kostenkontrolle einsetzen Use only with clear data scenarios and cost control | Form processing, prediction, OCR, sentiment Form processing, prediction, OCR, sentiment | Trainingsdaten und Modelllebenszyklus steuern Govern training data and model lifecycle

PowerShell PowerShell

    Install-Module Microsoft.PowerApps.Administration.PowerShell -Scope CurrentUser
    Install-Module Microsoft.PowerApps.PowerShell -Scope CurrentUser

    Add-PowerAppsAccount
    Get-AdminPowerAppEnvironment |
        Select-Object DisplayName, EnvironmentName, Location, EnvironmentSku

    Get-DlpPolicy |
        Select-Object DisplayName, PolicyName, DefaultConnectorClassification

CLI CLI

    pac auth create --url https://org.crm4.dynamics.com
    pac solution init --publisher-name Contoso --publisher-prefix cto
    pac solution add-reference --path .\src\CanvasApp
    pac solution export --path .\drop\Contoso_Core.zip --managed true

HTTP HTTP

    GET https://org.crm4.dynamics.com/api/data/v9.2/accounts?$select=name,revenue&$top=5
    Authorization: Bearer <token>
    Accept: application/json
    Prefer: odata.include-annotations="*"