Steg 3. Använda Power Automate för att skapa flödet för att bearbeta dina kontrakt
Du har skapat din contract management-kanal och har kopplat ditt SharePoint-dokumentbibliotek. Nästa steg är att skapa ett Power Automate-flöde för att bearbeta dina kontrakt som Din Syntex-modell identifierar och klassificerar. Du kan göra det här steget genom att skapa ett Power Automate-flöde i SharePoint-dokumentbiblioteket.
För din avtalshanteringslösning vill du skapa ett Power Automate-flöde för att utföra följande åtgärder:
- När ett kontrakt har klassificerats av din Syntex-modell ändrar du kontraktsstatusen till I granskning.
- Kontraktet granskas sedan och godkänns eller avvisas.
- För godkända kontrakt publiceras kontraktsinformationen på en flik för betalningsbearbetning.
- För avvisade kontrakt meddelas teamet för ytterligare analys.
Följande diagram visar Power Automate-flödet för kontraktshanteringslösningen.
Förbereda ditt kontrakt för granskning
När ett kontrakt identifieras och klassificeras av din ostrukturerade dokumentbearbetningsmodell ändrar Power Automate-flödet först statusen till I granskning.
När du har checkat ut filen ändrar du statusvärdet till I granskning.
Nästa steg är att skapa ett adaptivt kort som anger att kontraktet väntar på granskning och publicerar det på contract management-kanalen.
Följande kod är den JSON som används för det här steget i Power Automate-flödet.
{
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"type": "AdaptiveCard",
"version": "1.0",
"body": [
{
"type": "TextBlock",
"text": "Contract approval request",
"size": "large",
"weight": "bolder",
"wrap": true
},
{
"type": "Container",
"items": [
{
"type": "FactSet",
"spacing": "Large",
"facts": [
{
"title": "Client",
"value": "@{triggerOutputs()?['body/Client']}"
},
{
"title": "Contractor",
"value": "@{triggerOutputs()?['body/Contractor']}"
},
{
"title": "Fee amount",
"value": "@{triggerOutputs()?['body/FeeAmount']}"
},
{
"title": "Date created",
"value": "@{triggerOutputs()?['body/Modified']} "
},
{
"title": "Link",
"value": "[@{triggerOutputs()?['body/{FilenameWithExtension}']}](@{triggerOutputs()?['body/{Link}']})"
}
]
}
]
},
{
"type": "TextBlock",
"text": "Comment:"
},
{
"type": "Input.Text",
"placeholder": "Enter comments",
"id": "acComments"
}
],
"actions": [
{
"type": "Action.Submit",
"title": "Approve",
"data": {
"x": "Approve"
}
},
{
"type": "Action.Submit",
"title": "Reject",
"data": {
"x": "Reject"
}
}
]
}
Villkorsstyrd kontext
I ditt flöde måste du sedan skapa ett villkor där ditt kontrakt antingen godkänns eller avvisas.
Om kontraktet godkänns
När ett kontrakt har godkänts sker följande:
På fliken Kontrakt ändras statusen på kontraktskortet till Godkänd.
I ditt flöde ändras statusen till Godkänd.
I den här lösningen läggs kontraktsdata till på fliken För utbetalning så att utbetalningarna kan hanteras. Den här processen kan utökas så att flödet kan skicka kontrakten för betalning av ett finansiellt program från tredje part (till exempel Dynamics CRM).
I flödet skapar du följande objekt för att flytta godkända kontrakt till fliken För utbetalning .
Om du vill hämta uttrycken för den information som behövs från Teams-kortet använder du värdena som visas i följande tabell.
Namn Expression Godkännandetillstånd body('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')? ['submitActionId'] Godkänd av body('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')? ['responder'] ['displayName'] Godkännandedatum body('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')? ['responseTime'] Kommentar body('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')? ['data']? ['acComments'] I följande exempel visas hur du använder formelrutan i Power Automate för att skriva ett uttryck.
Ett adaptivt kort som anger att kontraktet har godkänts skapas och publiceras på contract management-kanalen.
Följande kod är den JSON som används för det här steget i Power Automate-flödet.
{
"type": "AdaptiveCard",
"body": [
{
"type": "Container",
"style": "emphasis",
"items": [
{
"type": "ColumnSet",
"columns": [
{
"type": "Column",
"items": [
{
"type": "TextBlock",
"size": "Large",
"weight": "Bolder",
"text": "CONTRACT APPROVED"
}
],
"width": "stretch"
}
]
}
],
"bleed": true
},
{
"type": "Container",
"items": [
{
"type": "FactSet",
"spacing": "Large",
"facts": [
{
"title": "Client",
"value": "@{triggerOutputs()?['body/Client']}"
},
{
"title": "Contractor",
"value": "@{triggerOutputs()?['body/Contractor']}"
},
{
"title": "Fee amount",
"value": "@{triggerOutputs()?['body/FeeAmount']}"
},
{
"title": "Approval by",
"value": "@{body('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')?['responder']['displayName']}"
},
{
"title": "Approved date",
"value": "@{body('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')?['responseTime']}"
},
{
"title": "Approval comment",
"value": "@{body('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')?['data']?['acComments']}"
},
{
"title": " ",
"value": " "
},
{
"title": "Status",
"value": "Ready for payout"
}
]
}
]
}
],
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"version": "1.2",
"fallbackText": "This card requires Adaptive Cards v1.2 support to be rendered properly."
}
Om kontraktet avvisas
När ett kontrakt har avvisats sker följande:
På fliken Kontrakt ändras statusen i kontraktskortet till Avvisad.
I ditt flöde checkar du ut kontraktsfilen, ändrar statusen till Avvisad och checkar sedan in filen igen.
I ditt flöde skapar du ett adaptivt kort som anger att kontraktet har avvisats.
Följande kod är den JSON som används för det här steget i Power Automate-flödet.
{
"type": "AdaptiveCard",
"body": [
{
"type": "Container",
"style": "attention",
"items": [
{
"type": "ColumnSet",
"columns": [
{
"type": "Column",
"items": [
{
"type": "TextBlock",
"size": "Large",
"weight": "Bolder",
"text": "CONTRACT REJECTED"
}
],
"width": "stretch"
}
]
}
],
"bleed": true
},
{
"type": "Container",
"items": [
{
"type": "FactSet",
"spacing": "Large",
"facts": [
{
"title": "Client",
"value": "@{triggerOutputs()?['body/Client']}"
},
{
"title": "Contractor",
"value": "@{triggerOutputs()?['body/Contractor']}"
},
{
"title": "Fee amount",
"value": "@{triggerOutputs()?['body/FeeAmount']}"
},
{
"title": "Rejected by",
"value": "@{body('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')?['responder']['displayName']}"
},
{
"title": "Rejected date",
"value": "@{body('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')?['responseTime']}"
},
{
"title": "Comment",
"value": "@{body('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')?['data']?['acComments']}"
},
{
"title": " ",
"value": " "
},
{
"title": "Status",
"value": "Needs review"
}
]
}
]
}
],
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"version": "1.2",
"fallbackText": "This card requires Adaptive Cards v1.2 support to be rendered properly."
}
Kortet publiceras i kontraktshanteringskanalen.
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för