Använda API:er för projektscheman V1 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 PssCreateV1 API. För ett exempel som använder PssCreateV2 API, se V2 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 Power Apps-utlösare
- Skapa ett projekt
- Initiera en variabel för teammedlemmen
- Skapa en generisk teammedlem
- Skapa en åtgärdsuppsättning
- Initiera en variabel för projektets bucket-ID
- Skapa en projektbucket
- Initiera en variabel för antalet uppgifter
- Initiera en variabel för projektets uppgifts-ID
- Gör till
- Ange en projektuppgift
- Skapa en projektuppgift
- Skapa en resurstilldelning
- Minska en variabel
- Byt namn på en projektuppgift
- 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 Power Apps-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 uttrycksfliken.
- 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.
- I fältet Projekt, från dialogrutan Dynamiskt innehåll, välj msdyn_CreateProjectV1Response ProjectId.
Steg 6: Initiera en variabel för projektets bucket-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 projektets bucket-ID.
- I fältet Namn anger du projektets bucket-ID.
- I fältet Typ väljer du Sträng.
- I fältet Värde anger du @{guid()}.
Steg 7: Skapa en projektbucket
I flödet, välj Lägg till en åtgärd.
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 bucket.
-
- I fältet Åtgärdsnamn väljer du msdyn‑PssCreateV1.
Ange följande parameterinformation i fältet Entitet.
{ "@@odata.type": "Microsoft.Dynamics.CRM.msdyn_projectbucket", "msdyn_projectbucketid": "@{variables('project bucket id')}", "msdyn_name": "ScheduleAPIDemoBucket1", "msdyn_project@odata.bind": "/msdyn_projects(@{outputs('Create_Project')?['body/ProjectId']})" }
Här följer en förklaring av parametrarna:
- @@odata.type – Entitetens namn. Skriv till exempel ”Microsoft.Dynamics.CRM.msdyn_projectbucket”.
- msdyn_projectbucketid – Det unika ID:t för projekt-bucket. Värdet ska ställas in från den dynamiska variabeln från steg 6.
- msdyn_name – namn på projekt-bucket.
- 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)”.
För fältet OperationSetId, välj msdyn_CreateOperationSetV1Response OperationSetId i dialogrutan Dynamiskt innehåll.
Steg 8: 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 9: 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 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: Skapa en projektuppgift
Följ instruktionerna nedan om du vill skapa en projektuppgift med ett unikt ID som hör till det aktuella projektet och den projektbucket du skapat.
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 till Skapa projektuppgift.
I fältet Åtgärdsnamn väljer du msdyn‑PssCreateV1.
Ange följande parameterinformation i fältet Entitet.
{ "@@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(@{variables('project bucket id')})", "msdyn_start": "@{addDays(utcNow(), 1)}", "msdyn_scheduledstart": "@{utcNow()}", "msdyn_scheduledend": "@{addDays(utcNow(), 5)}" }
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 är samma som det som används för msdyn_projectbucketid på 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änkstatusen. Ange till exempel ”192350000”.
För fältet OperationSetId, välj msdyn_CreateOperationSetV1Response OperationSetId i dialogrutan Dynamiskt innehåll.
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 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 tilldelning.
I fältet Åtgärdsnamn väljer du msdyn‑PssCreateV1.
Ange följande parameterinformation i fältet Entitet.
{ "@@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']})" }
För fältet OperationSetId, välj msdyn_CreateOperationSetV1Response OperationSetId i dialogrutan Dynamiskt innehåll.
Steg 14: Minska en variabel
- I flödet väljer du Nytt steg.
- 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: Byt namn på en projektuppgift
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 till Byt namn på projektuppgift.
I fältet Åtgärdsnamn väljer du msdyn‑PssUpdateV1.
Ange följande parameterinformation i fältet Entitet.
{ "@@odata.type": "Microsoft.Dynamics.CRM.msdyn_projecttask", "msdyn_projecttaskid": "@{variables('msdyn_projecttaskid')}", "msdyn_subject": "ScheduleDemoTask1-UpdatedName" }
För fältet OperationSetId, välj msdyn_CreateOperationSetV1Response OperationSetId 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.