Steg 3. Använd Power Automate för att skapa flödet för att bearbeta dina kontrakt

Du har skapat din kanal för kontraktshantering och bifogat ditt SharePoint dokumentbibliotek. Nästa steg är att skapa ett Power Automate flöde för att bearbeta de kontrakt SharePoint Syntex modellen identifierar och klassificerar. Du kan göra det här steget genom att skapa Power Automate ett flöde i SharePoint-dokumentbiblioteket.

För din lösning för kontraktshantering vill du skapa ett Power Automate att göra följande:

  • När ett kontrakt har klassificerats av din SharePoint Syntex kan du ändra kontraktsstatus till Vid granskning.
  • Avtalet 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 vidare analys.

Följande diagram visar Power Automate för kontraktshanteringslösningen.

Flow ett diagram som visar hela lösningen.

Förbered ditt kontrakt för granskning

När ett kontrakt identifieras och klassificeras av din SharePoint Syntex dokument förstå modell, kommer Power Automate att först ändra status till I granskning.

Uppdateringsstatus.

När du checkat ut filen ändrar du statusvärdet till Vid granskning.

I granskningsstatus.

Nästa steg är att skapa ett adaptivt kort som anger att avtalet väntar på granskning och publicerar det i kanalen Kontraktshantering.

Granskning av avtal.

Skapa adaptiva kort för granskning.

Följande kod är det JSON som används för det här steget i Power Automate flöde.

{
"$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 avtalet antingen godkänns eller avvisas.

Villkorsstyrd.

Om avtalet godkänns

När ett kontrakt har godkänts inträffar följande:

  • fliken Kontrakt ändras statusen i kontraktskortet till Godkänd.

    Kortstatus godkänd.

  • I flödet ändras statusen till Godkänd.

    Flow status 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 in avtal om betalning med en ekonomisk tredje part-app (till exempel Dynamics CRM).

    Avtalet flyttas till Betala ut.

  • I flödet skapar du följande objekt för att flytta godkända kontrakt till fliken För utbetalning.

    Flow att flytta till Betala ut.

    Om du vill hämta uttrycken för den information Teams på kortet använder du värdena som visas i följande tabell.

    Namn Expression
    Godkännandetillstånd brödtext('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')? ['submitActionId']
    Godkänd av brödtext('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')? ['svarare'] ['displayName']
    Godkännandedatum brödtext('Post_an_Adaptive_Card_to_a_Teams_channel_and_wait_for_a_response')? ['responseTime']
    Kommentar brödtext('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.

    Skärmbild i Power Automate med en uttrycksformel.

  • Ett adaptivt kort som anger att avtalet har godkänts skapas och publiceras i kanalen Kontraktshantering.

    Godkännande av avtal publicerat.

    Adaptivt kortgodkännande.

    Följande kod är det JSON som används för det här steget i Power Automate flöde.

{ 
    "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 avtalet avvisas

När ett kontrakt har avvisats inträffar följande:

  • fliken Kontrakt ändras statusen i kontraktskortet till Avvisad.

    Kortstatus avvisades.

  • I flödet checkar du ut kontraktsfilen, ändrar status till Avvisat och checkar sedan in filen igen.

    Flow status avvisades i kontraktsfil.

  • I flödet skapar du ett adaptivt kort som säger att avtalet har avvisats.

    Flow status visas avvisat på adaptivt kort.

Följande kod är det JSON som används för det här steget i Power Automate flöde.

{ 
    "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 kanalen Kontraktshantering.

    Flow adaptivt kort att avvisa.