Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel erfahren Sie, wie Sie Power Automate-Cloudflüsse mithilfe der npm CLI aus einer Power Apps-Code-App ermitteln, hinzufügen, aufrufen und entfernen.
Von Bedeutung
Nur Flüsse, die den Power Apps-Trigger verwenden, werden unterstützt. Sie können einer Code-App keine Flüsse mit anderen Triggertypen hinzufügen. Diese nicht unterstützten Triggertypen umfassen geplante, automatisierte oder sofortige Abläufe mit Nicht-Power Apps-Triggern.
Voraussetzungen
- Eine initialisierte Power-Apps-Codeanwendung. Siehe Schnellstart: Erstellen einer Code-App mithilfe der npm CLI.
- Ein Power Automate-Fluss, der lösungsbewusst ist und ein Sofortablauf mit dem PowerApps-Triggertyp ist. Wenn Ihr Workflow noch nicht Teil einer Lösung ist, lesen Sie "Hinzufügen eines bestehenden Workflows zu einer Lösung".
- Die
@microsoft/power-appsnpm-Paketversion 1.1.1 oder höher.
Hinweis
Flussbefehle sind nur in der npm-basierten CLI (npx power-apps) verfügbar. Sie sind in den Power Platform CLI(pac code)-Befehlen nicht verfügbar.
Schritt 1: Auflisten der verfügbaren Flüsse
Führen Sie den folgenden Befehl aus, um alle lösungsfähigen Flüsse in Ihrer aktuellen Umgebung auflisten:
npx power-apps list-flows
Der Befehl gibt eine Tabelle mit verfügbaren Flüssen aus:
Name Status Modified On Flow ID
──────────────────────────────────────────────────────────────────────────────
Approval Workflow Started 2026-01-15 a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
Send Notification Started 2026-02-01 b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2
Total flows: 2
Hinweis
Es werden nur lösungsorientierte Flüsse aufgelistet. Wenn ein Flow fehlt, lesen Sie: Erstellen eines Cloudflows in einer Lösung
Verwenden Sie die --search Option, um Ergebnisse nach Namen zu filtern:
npx power-apps list-flows --search approval
Kopieren Sie den Fluss-ID-Wert für den Fluss, den Sie hinzufügen möchten.
Schritt 2: Hinzufügen eines Flusses zu Ihrer Code-App
Führen Sie den folgenden Befehl aus und ersetzen Sie <flow-id> durch den Wert aus dem vorherigen Schritt:
npx power-apps add-flow --flow-id <flow-id>
Example:
npx power-apps add-flow --flow-id a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
Wenn der Befehl erfolgreich ist, bestätigt die CLI, dass der Fluss hinzugefügt wurde:
Flow added successfully.
Tipp
Die Neuausführung von add-flow mit derselben Ablauf-ID ist idempotent. Verwenden Sie sie, um Änderungen an der Definition des Flusses (neue Parameter, aktualisierte Verbindungen usw.) aufzuholen, ohne alte Dateien manuell zu bereinigen.
Was add-flow tut
Der Befehl lädt die OpenAPI-Definition des Flusses herunter, generiert stark typisierte TypeScript-Dateien in Ihrem Projekt und aktualisiert power.config.json mit den Verbindungsverweisen des Flusses.
Von Bedeutung
Die Person, die add-flow ausführt, muss Zugriff haben, um den Fluss lesen und die zugrunde liegenden Verbindungen des Flusses lesen zu können (z. B. eine Office 365 Outlook-Verbindung). Wenn der Zugriff auf eine erforderliche Verbindung fehlt, schlägt der Befehl mit einem Autorisierungsfehler fehl.
Generierte Dateien
Nach dem Ausführen add-flowerstellt die CLI die folgenden Dateien in Ihrem Projekt (Dateinamen werden vom Anzeigenamen des Flusses abgeleitet):
src/
services/
ApprovalWorkflowService.ts ← generated service class with typed methods
models/
ApprovalWorkflowModel.ts ← generated TypeScript types for inputs/outputs
schemas/
logicflows/
ApprovalWorkflow.Schema.json ← flow's OpenAPI schema (do not edit manually)
Der folgende Eintrag wird ebenfalls hinzugefügt:power.config.json
"<uuid>": {
"id": "/providers/microsoft.powerapps/apis/shared_logicflows",
"displayName": "Logic flows",
"dataSources": ["ApprovalWorkflow"],
"workflowDetails": {
"workflowEntityId": "<dataverse-entity-guid>",
"workflowDisplayName": "Approval Workflow",
"workflowName": "<flow-id>",
"dependencies": {
"shared_office365": "<dependency-uuid>"
}
}
}
Schritt 3: Aufrufen des Flusses aus Ihrer App
Die generierte Dienstklasse macht eine Run statische Methode verfügbar. Die genaue Signatur hängt davon ab, ob der Trigger des Flusses Eingabeparameter definiert.
Fluss mit Eingabeparametern
import { ApprovalWorkflowService } from './services/ApprovalWorkflowService';
const result = await ApprovalWorkflowService.Run({
requester: 'Alex',
amount: 1500,
});
if (result.success) {
console.log('Flow triggered. Response:', result.data);
} else {
console.error('Flow failed:', result.error);
}
Flow ohne Eingabeparameter
import { SendNotificationService } from './services/SendNotificationService';
const result = await SendNotificationService.Run();
if (result.success) {
console.log('Flow triggered.');
}
Das result Objekt hat die folgende Form:
| Eigentum | Typ | Beschreibung |
|---|---|---|
success |
boolean |
true wenn der Fluss erfolgreich ausgelöst wurde. |
data |
(variiert) | Eingegebene Antwortnutzlast aus dem Fluss, falls vorhanden. |
error |
Error (wahlweise) |
Fehlerdetails, wenn successfalse ist. |
Hinweis
Die genauen Eingabe- und Ausgabetypen werden durch die OpenAPI-Definition des Flusses bestimmt. Öffnen Sie die generierte Dienstdatei, um die spezifischen Typen für Ihren Fluss anzuzeigen. Parameter, die mit einem Standardwert gekennzeichnet x-ms-visibility: internal sind, werden automatisch vom Codegenerator inlineiert und werden in der Methodensignatur nicht verfügbar gemacht.
Aktualisieren eines Flusses
Wenn sich die Definition des Ablaufs ändert – z. B. fügt der Autor einen neuen Parameter hinzu oder aktualisiert Verbindungsreferenzen – führen Sie add-flow erneut mit derselben Ablauf-ID aus, um die neueste Definition zu übernehmen und die Dienstdateien neu zu generieren.
npx power-apps add-flow --flow-id a1b2c3d4-e5f6-7890-abcd-ef1234567890
Der Befehl passt zum Datenfluss anhand von workflowEntityId und verwendet die vorhandene UUID in power.config.json, sodass keine manuelle Bereinigung erforderlich ist.
Entfernen eines Flusses
Um einen Fluss aus Ihrer Code-App zu entfernen, verwenden Sie remove-flow. Sie können den Fluss entweder anhand seines Datenquellennamens (wie in power.config.json) oder anhand seiner ursprünglichen Fluss-ID identifizieren:
Nach Datenquellenname:
npx power-apps remove-flow --flow-name ApprovalWorkflow
Nach Ablauf-ID:
npx power-apps remove-flow --flow-id a1b2c3d4-e5f6-7890-abcd-ef1234567890
Der Befehl:
- Entfernt den Fluss von
power.config.json. - Regeneriert alle Modelldienste.
Bereitstellen Ihrer App
Nach dem Hinzufügen von Flüssen und der lokalen Überprüfung der App mit npm run dev, Erstellen und Bereitstellen wie gewohnt:
npm run build
npx power-apps push
Einschränkungen und Überlegungen
Beachten Sie beim Hinzufügen von Flüssen zu einer Code-App die folgenden Einschränkungen und Überlegungen.
| Einschränkung | Einzelheiten |
|---|---|
| Nur manuelle Abläufe mit PowerApps-Trigger | Nur manuelle Flüsse, die den PowerApps-Trigger verwenden, werden unterstützt. Flows mit anderen Auslösertypen (geplante, automatisierte oder sofortige Flows mit nicht-PowerApps-Auslösern) werden nicht unterstützt und funktionieren in einer Code-App nicht korrekt. |
| Nur lösungsfähige Abläufe | Der list-flows Befehl zeigt nur Flüsse an, die zu einer Lösung gehören. Um einen Nicht-Lösungsfluss hinzuzufügen, fügen Sie ihn zuerst zu einer Lösung hinzu. |
| Maker-Zugriff erforderlich | Der add-flow Ersteller muss Zugriff auf den Flow und auf die zugrunde liegenden Verbindungen des Flows haben. Wenn der Zugriff auf eine erforderliche Verbindung fehlt, schlägt der Befehl fehl. |
| Zur Laufzeit erforderliche Dataverse-Berechtigungen | Endbenutzer müssen über ausreichende Dataverse-Berechtigungen zum Aufrufen von Flüssen verfügen. Weisen Sie die Sicherheitsrolle "App Opener " (oder gleichwertig) zu. Siehe Konfigurieren der Benutzersicherheit in einer Umgebung. |
| Für Änderungen am Ablauf ist eine manuelle Aktualisierung erforderlich | Wenn sich die Definition des Flows ändert, führen Sie add-flow mit derselben Ablauf-ID erneut aus. Die App erkennt Flussänderungen nicht automatisch. |
| nur npm CLI | Diese Befehle sind nicht verfügbar in pac code. |