Använda API:er för projektscheman V2 med Power Automate
Gäller: Project Operations för resurs- och icke-lagerbaserade scenarier, lite distribution – handlar för att proforma-fakturering
Denna artikel beskriver ett exempelflöde som visar hur du skapar en komplett projektplan med hjälp av Microsoft Power Automate, hur du skapar en åtgärdsuppsättning och uppdaterar en entitet. Exemplet visar hur du skapar ett projekt, en projektteammedlem, åtgärdsgrupper, projektuppgifter samt resurstilldelningar. Denna artikel förklarar även hur du uppdaterar en entitet och kör en åtgärdsuppsättning.
I exemplet i den här artikeln används PssCreateV2 API. För ett exempel som använder PssCreateV1 API, se Använd V1 Projekttidsplan-API:er med Power Automate.
Följande utgör en fullständig lista över de steg som dokumenteras i exempelflödet i denna artikel:
- Skapa en PowerApps-utlösare
- Skapa ett projekt
- Initiera en variabel för teammedlemmen
- Skapa en generisk teammedlem
- Skapa en åtgärdsuppsättning
- Skapa en projektbucket
- Initiera en variabel för antalet uppgifter
- Initiera en variabel för projektets uppgifts-ID
- Initiera en matris
- Gör till
- Ange en projektuppgift
- Lägga till en uppgift i matrisen
- Skapa en resurstilldelning
- Minska en variabel
- Lägga till uppgifter och tilldelningar i åtgärdsuppsättningen
- Kör en åtgärdsuppsättning
Antaganden
Denna artikel förutsätter att du har grundläggande kunskaper om Dataverse-plattformen, molnflöden och API för projektschema. Mer information finns i avsnittet Referenser senare i denna artikel.
Skapa ett flöde
Välj en miljö
Du kan inte skapa Power Automate-flödet i din miljö.
- Gå till https://flow.microsoft.com och logga in med dina autentiseringsuppgifter som global administratör.
- Välj Miljöer i det övre högra hörnet.
- I listan väljer du den miljö där Dynamics 365 Project Operations finns installerat.
Skapa en lösning
Följ dessa steg om du vill skapa ett lösningsmedvetet flöde. Genom att skapa ett lösningsmedvetet flöde kan du enklare exportera flödet och använda det senare.
- I den navigeringsrutan väljer du Lösningar.
- På sidan Lösningar väljer du Ny lösning.
- I dialogrutan Ny lösning anger du erforderliga fält och väljer sedan Skapa.
Steg 1: Skapa en PowerApps-utlösare
- På sidan Lösningar väljer du den lösning du skapat och sedan Nytt.
- I det vänstra fönstret väljer du Molnflöden>Automation>Molnflöde>Direkt.
- I fältet Flödesnamn anger du Schemalägg API-demonstrationsflöde.
- I listan Välj hur du vill utlösa detta flöde väljer du Power Apps. När du skapar en Power Apps-utlösare är logiken upp till dig som författare. I denna artikel lämnar du till exempel indataparametrarna tomma för testningssyften.
- Välj Skapa.
Steg 2: Skapa ett projekt
Skapa ett exempelprojekt genom att följa stegen nedan.
I flödet som du skapat väljer du Nytt steg.
I dialogrutan Välj en åtgärd anger du utför utgående åtgärd i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
I det nya steget markerar du ellipsen (...) och sedan Byt namn.
Byt namn på steget Skapa projekt.
I fältet Åtgärdsnamn väljer du msdyn‑CreateProjectV1.
Under fältet msdyn‑subject väljer du Lägg till dynamiskt innehåll.
På fliken Uttryck, i funktionsfältet anger du concat('Project name - ',utcNow()).
Välj OK.
Steg 3: Initiera en variabel för teammedlemmen
- I flödet väljer du Nytt steg.
- I dialogrutan Välj en åtgärd anger du initiera variabel i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
- I det nya steget markerar du ellipsen (...) och sedan Byt namn.
- Byt namn på steget Init-teammedlem.
- I fältet Namn anger du TeamMemberAction.
- I fältet Typ väljer du Sträng.
- I fältet Värde anger du msdyn‑CreateTeamMemberV1.
Steg 4: Skapa en generisk teammedlem
I flödet väljer du Nytt steg.
I dialogrutan Välj en åtgärd anger du utför utgående åtgärd i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
I det nya steget markerar du ellipsen (...) och sedan Byt namn.
Byt namn på steget Skapa teammedlem.
För fältet Åtgärdsnamn väljer du TeamMemberAction i dialogrutan Dynamiskt innehåll.
Ange följande parameterinformation i fältet Åtgärdsparametrar.
{ "TeamMember": { "@@odata.type": "Microsoft.Dynamics.CRM.msdyn_projectteam", "msdyn_projectteamid": "@{guid()}", "msdyn_project@odata.bind": "/msdyn_projects(@{outputs('Create_Project')?['body/ProjectId']})", "msdyn_name": "ScheduleAPIDemoTM1" } }
Här följer en förklaring av parametrarna:
- @@odata.type – Entitetens namn. Skriv till exempel "Microsoft.Dynamics.CRM.msdyn_projectteam".
- msdyn‑projectteamid – Den primära nyckeln för projektteamets ID. Värdet är ett GUID-uttryck (globalt unik identifierare). ID:t skapas från fliken Uttryck.
- msdyn_project@odata.bind – ID för projektets kalender. Värdet blir dynamiskt innehåll som kommer från svaret i steget Skapa projekt. Kontrollera att du anger den fullständiga sökvägen och lägger till dynamiskt innehåll mellan parenteserna. Citattecken krävs. Skriv till exempel "/msdyn‑projects(ADD DYNAMIC CONTENT)".
- msdyn‑name – Namnet på teammedlemmen. Skriv till exempel "ScheduleAPIDemoTM1".
Steg 5: Skapa en åtgärdsuppsättning
- I flödet väljer du Nytt steg.
- I dialogrutan Välj en åtgärd anger du utför utgående åtgärd i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
- I det nya steget markerar du ellipsen (...) och sedan Byt namn.
- Byt namn på steget Skapa åtgärdsuppsättning.
- I fältet Åtgärdsnamn väljer du den anpassade msdyn_CreateOperationSetV1 Dataverse-åtgärden.
- I fältet Beskrivning anger du ScheduleAPIDemoOperationSet.
- För fältet Projekt väljer du msdyn_CreateProjectV1Response ProjectId i dialogrutan Dynamiskt innehåll.
Steg 6: Skapa en projektbucket
- I flödet väljer du Nytt steg.
- I dialogrutan Välj en åtgärd anger du lägg till ny rad i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
- I det nya steget markerar du ellipsen (...) och sedan Byt namn.
- Byt namn på steget Skapa bucket.
- I fältet Tabellnamn väljer du Projekt-buckets.
- I fältet Namn anger du ScheduleAPIDemoBucket1.
- I fältet Projekt anger du /msdyn‑projects(.
- I dialogrutan Dynamiskt innehåll väljer du msdyn_CreateProjectV1Response ProjectId.
- I fältet Projekt anger du ).
Steg 7: Initiera en variabel för antalet uppgifter
- I flödet väljer du Nytt steg.
- I dialogrutan Välj en åtgärd anger du initiera variabel i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
- I det nya steget markerar du ellipsen (...) och sedan Byt namn.
- Byt namn på steget Init antalet uppgifter.
- I fältet Namn anger du antalet uppgifter.
- I fältet Typ väljer du Heltal.
- I fältet Värde anger du 5.
Steg 8: Initiera en variabel för projektets uppgifts-ID
- I flödet väljer du Nytt steg.
- I dialogrutan Välj en åtgärd anger du initiera variabel i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
- I det nya steget markerar du ellipsen (...) och sedan Byt namn.
- Byt namn på steget Init ProjectTaskID.
- Ange msdyn_projecttaskid i fältet Namn.
- I fältet Typ väljer du Sträng.
- För fältet Värde anger du guid() i uttrycksverktyget.
Steg 9: Initiera en matris
- I flödet väljer du Nytt steg.
- I dialogrutan Välj en åtgärd anger du initiera variabel i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
- I det nya steget markerar du ellipsen (...) och sedan Byt namn.
- Byt namn på steget Init matris.
- I fältet Namn anger du Uppgifter och tilldelningar.
- I fältet Typ väljer du Matris.
Steg 10: Gör till
- I flödet väljer du Nytt steg.
- I dialogrutan Välj en åtgärd anger du Gör till i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
- Ange det första värdet i den villkorliga instruktionen till variabeln antal uppgifter från dialogrutan Dynamiskt innehåll.
- Ange villkoret som mindre än lika med.
- Ange det andra värdet i den villkorliga instruktionen som 0.
Steg 11: Ange en projektuppgift
- I flödet, välj Lägg till en åtgärd.
- I dialogrutan Välj en åtgärd anger du ange variabel i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
- I det nya steget markerar du ellipsen (...) och sedan Byt namn.
- Byt namn på steget Ange projektuppgift.
- I fältet Namn väljer du msdyn‑projecttaskid.
- För fältet Värde anger du guid() i uttrycksverktyget.
Steg 12: Lägg till en uppgift i matrisen
I flödet, välj Lägg till en åtgärd.
I dialogrutan Välj en åtgärd anger du Lägg till i matris i sökfältet.
I det nya steget markerar du ellipsen (...) och sedan Byt namn.
Byt namn på steget Lägg till en uppgift i matrisen.
I fältet Namn väljer du Uppgifter och tilldelningar.
Ange följande parameterinformation i fältet Värde.
{ "@@odata.type": "Microsoft.Dynamics.CRM.msdyn_projecttask", "msdyn_projecttaskid": "@{variables('msdyn_projecttaskid')}", "msdyn_project@odata.bind": "/msdyn_projects(@{outputs('Create_Project')?['body/ProjectId']})", "msdyn_subject": "ScheduleAPIDemoTask1", "msdyn_projectbucket@odata.bind": "/msdyn_projectbuckets(@{outputs('Create_Bucket')?['body/msdyn_projectbucketid']})", "msdyn_start": "@{addDays(utcNow(), 1)}", "msdyn_scheduledstart": "@{utcNow()}", "msdyn_scheduledend": "@{addDays(utcNow(), 5)}", "msdyn_LinkStatus": "192350000" }
Här följer en förklaring av parametrarna:
- @@odata.type – Entitetens namn. Skriv till exempel "Microsoft.Dynamics.CRM.msdyn‑projecttask".
- msdyn‑projecttaskid – Uppgiftens unika ID. Värdet ska anges till en dynamisk variabel från msdyn_projecttaskid.
- msdyn_project@odata.bind – ID för projektets kalender. Värdet blir dynamiskt innehåll som kommer från svaret i steget Skapa projekt. Kontrollera att du anger den fullständiga sökvägen och lägger till dynamiskt innehåll mellan parenteserna. Citattecken krävs. Skriv till exempel "/msdyn‑projects(ADD DYNAMIC CONTENT)".
- msdyn‑subject – Valfritt uppgiftsnamn.
- msdyn_projectbucket@odata.bind – Den projektbucket som innehåller uppgifterna. Värdet blir dynamiskt innehåll som kommer från svaret i steget "Skapa bucket". Kontrollera att du anger den fullständiga sökvägen och lägger till dynamiskt innehåll mellan parenteserna. Citattecken krävs. Skriv till exempel "/msdyn‑projectbuckets(ADD DYNAMIC CONTENT)".
- msdyn‑start – Dynamiskt innehåll för startdatum. Morgondagen representeras till exempel som "addDays(utcNow(), 1)".
- msdyn‑scheduledstart – Det tidsplanerade startdatumet. Morgondagen representeras till exempel som "addDays(utcNow(), 1)".
- msdyn‑scheduleend – Det schemalagda slutdatumet. Välj ett datum i framtiden. Ange till exempel "addDays(utcNow(), 5)".
- msdyn_LinkStatus – Länken till faktureringsinställningarna. Skriv till exempel "192350000" om det inte finns någon länk till faktureringskonfigurationen eller "192350001" om faktureringskonfigurationen är länkad.
Steg 13: Skapa en resurtilldelning
I flödet, välj Lägg till en åtgärd.
I dialogrutan Välj en åtgärd anger du Lägg till i matris i sökfältet.
I det nya steget markerar du ellipsen (...) och sedan Byt namn.
Byt namn på steget Lägg till tilldelning i matrisen.
I fältet Namn väljer du Uppgifter och tilldelningar.
Ange följande parameterinformation i fältet Värde.
{ "@@odata.type": "Microsoft.Dynamics.CRM.msdyn_resourceassignment", "msdyn_resourceassignmentid": "@{guid()}", "msdyn_name": "ScheduleAPIDemoAssign1", "msdyn_taskid@odata.bind": "/msdyn_projecttasks(@{variables('msdyn_projecttaskid')})", "msdyn_projectteamid@odata.bind": "/msdyn_projectteams(@{outputs('Create_Team_Member')?['body/TeamMemberId']})", "msdyn_projectid@odata.bind": "/msdyn_projects(@{outputs('Create_Project')?['body/ProjectId']})" }
Steg 14: Minska en variabel
- I flödet, välj Lägg till en åtgärd.
- I dialogrutan Välj en åtgärd anger du minska variabel i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
- I fältet Namn välje du antal uppgifter.
- I fältet Värde anger du 1.
Steg 15: Lägga till uppgifter och tilldelningar i åtgärdsuppsättningen
- I flödet väljer du Nytt steg.
- I dialogrutan Välj en åtgärd anger du utför utgående åtgärd i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
- I det nya steget markerar du ellipsen (...) och sedan Byt namn.
- Byt namn på steget Lägga till uppgifter och tilldelningar i åtgärdsuppsättningen.
- I fältet Åtgärdsnamn väljer du msdyn_PssCreateV2.
- För fältet OperationSetId, välj msdyn_CreateOperationSetV1Response OperationSetId i dialogrutan Dynamiskt innehåll.
- I fältet EntityCollection, välj Växla ingång till hela matrisen.
- För fältet EntityCollection, välj Uppgifter och tilldelningar i dialogrutan Dynamiskt innehåll.
Steg 16: Kör en åtgärdsuppsättning
- I flödet väljer du Nytt steg.
- I dialogrutan Välj en åtgärd anger du utför utgående åtgärd i sökfältet. På fliken Åtgärder markerar du åtgärden i resultatlistan.
- I det nya steget markerar du ellipsen (...) och sedan Byt namn.
- Byt namn på steget Kör åtgärdsuppsättning.
- I fältet Åtgärdsnamn väljer du msdyn‑ExecuteOperationSetV1.
- För fältet OperationSetId, välj msdyn_CreateOperationSetV1Response OperationSetId i dialogrutan Dynamiskt innehåll.