Hinzufügen von Power-Automate-Flows zu einer Code-App (Vorschau)

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

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.