9. Slutför agentflödet
I förra kapitlet byggde du flödets indata, beräkningar och tre grenar för standardprocessen. Nu kopplar du grenarna till de åtgärder som reserverar lagret eller skickar begäran för manuell granskning.
När kapitlet är klart kan arbetsflödet:
- uppdatera
ReservedQuantitynär en begäran uppfyller standardvillkoren - skicka rätt mejl för standardprocess eller manuell granskning
- returnera
ResultStatusochResultMessage - publiceras och användas av agenten
Två vägar genom samma flöde
De tre standardgrenarna går till samma reservationsväg. Grenen Annars ändrar inte lagret utan skickar underlaget för manuell granskning. Båda vägarna avslutas i samma svarsnod.
Del 1: Förbered reservationen
Välj plustecknet efter en av de tre standardgrenarna och klicka på Lägg till ett steg.

Välj åtgärden Variabel.

Dra sedan anslutningar från de två andra standardgrenarna till samma variabelnod. Grenen Annars ska inte anslutas hit.

Öppna noden och byt namn på den till:
Förbered reservation

Välj Initiera variabel och ange namnet:
NewReservedQuantity
Välj typen Float. Variabeln ska innehålla det nya totalvärdet för SharePoint-kolumnen ReservedQuantity.

Välj ikonen Växla till uttrycksläge vid fältet Värde.

Börja med att skriva funktionen:
add()

Placera markören mellan parenteserna och öppna dynamiskt innehåll. Sök efter:
ReservedQuantity
Välj värdet från Hämta vald produktvariant.

Skriv ett kommatecken efter värdet.

Öppna dynamiskt innehåll och sök efter:
Quantity
Välj värdet från When an agent calls the flow.

Det färdiga uttrycket ska motsvara följande:
@add(outputs('Hämta_vald_produktvariant')?['body/field_7'],triggerOutputs()?['body/number_1'])
NewReservedQuantity är det nya totala reserverade antalet. Om 8 exemplar redan är reserverade och begäran gäller 2 blir värdet 10.

Välj Uppdatera variabel och välj ResultStatus.

Behåll åtgärden Set variable och ange värdet:
reserverad

Välj Uppdatera variabel igen och välj ResultMessage.

Växla värdefältet till uttrycksläge.

Skriv först meddelandet med platshållare:
[Quantity] st av [Title] har reserverats för [ShowroomName]. Bekräftelsemejlet har skickats.

Ta bort [Quantity] och sök efter:
Quantity
Välj värdet från When an agent calls the flow.

Ta bort [Title] och sök efter:
Title
Välj värdet från Hämta vald produktvariant.

Ta bort [ShowroomName] och sök efter:
ShowroomName
Välj värdet från When an agent calls the flow.

Det färdiga värdet ska motsvara följande:
@{triggerOutputs()?['body/number_1']} st av @{outputs('Hämta_vald_produktvariant')?['body/Title']} har reserverats för @{triggerOutputs()?['body/text']}. Bekräftelsemejlet har skickats.

Del 2: Uppdatera reserverat antal i Centrallager
Lägg till ett steg efter Förbered reservation.

Sök efter:
Uppdatera objektet
Välj SharePoint-åtgärden med det namnet.

Byt namn på noden till:
Uppdatera reserverat antal

Välj Lyserno Produktportal under Webbplatsadress och Centrallager under Listnamn.

Klicka i fältet ID och öppna dynamiskt innehåll. Sök efter:
ItemID
Välj ItemID från When an agent calls the flow.

Leta upp fältet Reserved quantity. Öppna dynamiskt innehåll och sök efter:
NewReservedQuantity
Välj variabeln under Variables.

NewReservedQuantity visas nu i fältet Reserved quantity.

Uppdatera inga andra SharePoint-fält. Noden ska bara skriva det nya värdet till ReservedQuantity för det objekt som identifieras av ItemID.
Del 3: Skicka reservationsbekräftelsen
Lägg till ett steg efter Uppdatera reserverat antal.

Sök efter:
Skicka e-postmeddelande
Välj åtgärden från Office 365 Outlook.

Byt namn på noden till:
Skicka reservationsbekräftelse

Välj dig själv som mottagare i fältet Till. Skriv sedan följande ämne med platshållare:
Showroompåfyllning reserverad: [ShowroomName], [Quantity] st

Ta bort [ShowroomName] och sök efter:
ShowroomName
Välj värdet från When an agent calls the flow.

Ta bort [Quantity] och sök efter:
Quantity
Välj värdet från samma utlösare.

Det färdiga ämnet ska motsvara:
Showroompåfyllning reserverad: @{triggerOutputs()?['body/text']}, @{triggerOutputs()?['body/number_1']} st

Klistra in följande text i mejlets brödtext:
Hej,
Följande showroompåfyllning uppfyller villkoren för standardprocessen. Det önskade antalet har reserverats i Centrallager.
Showroom: [ShowroomName]
Showroomtyp: [ShowroomType]
Land: [Country]
Produkt: [Title]
SKU: [SKU]
Antal: [Quantity] st
Pris per styck: [CurrentUnitPrice] kr
Totalt produktpris: [TotalProductPrice] kr
Disponibelt saldo efter reservationen: [RemainingAvailableQuantity] st
Underlaget är klart för plockning och leveransplanering. Reservationen innebär inte att leveransen är bokad.
Vänliga hälsningar,
Lyserno Produktassistent
Ersätt sedan varje platshållare med dynamiskt innehåll. Börja med [ShowroomName]. Sök efter:
ShowroomName
Välj värdet från utlösaren.

Ersätt [ShowroomType]. Sök efter:
ShowroomType
Välj värdet från utlösaren.

Ersätt [Country]. Sök efter:
Country
Välj värdet från utlösaren.

Ersätt [Title]. Sök efter:
Title
Välj värdet från Hämta vald produktvariant.

Ersätt [SKU]. Sök efter:
SKU
Välj värdet från samma SharePoint-nod.

Ersätt [Quantity]. Sök efter:
Quantity
Välj värdet från utlösaren.

Ersätt [CurrentUnitPrice]. Sök efter:
CurrentUnitPrice
Välj värdet från Hämta vald produktvariant.

Ersätt [TotalProductPrice]. Sök efter:
TotalProductPrice
Välj variabeln under Variables.

Ersätt [RemainingAvailableQuantity]. Sök efter:
RemainingAvailableQuantity
Välj variabeln under Variables.

Kontrollera mottagare, ämne och mejltext. Produktuppgifterna ska komma från Hämta vald produktvariant, medan de beräknade värdena ska komma från Variables.

Del 4: Anslut standardvägen till svarsnoden
Dra en anslutning från Skicka reservationsbekräftelse till Respond to the agent.

Markera den gamla direkta anslutningen från villkorsnoden till svarsnoden och välj Ta bort. Standardvägen ska nu gå genom reservationen, SharePoint-uppdateringen och mejlet innan den når svarsnoden.

Del 5: Förbered manuell granskning
Välj plustecknet vid grenen Annars och klicka på Lägg till ett steg.

Välj åtgärden Variabel.

Byt namn på noden till:
Förbered manuell granskning

Välj Uppdatera variabel och välj ResultStatus.

Behåll åtgärden Set variable och ange värdet:
skickad_for_granskning

Välj Uppdatera variabel igen och välj ResultMessage.

Växla värdefältet till uttrycksläge.

Skriv meddelandet med platshållare:
Begäran om [Quantity] st av [Title] till [ShowroomName] har skickats för manuell granskning. Ingen reservation har skapats.
Ta bort [Quantity] och sök efter:
Quantity
Välj värdet från utlösaren.

Ta bort [Title] och sök efter:
Title
Välj värdet från Hämta vald produktvariant.

Ta bort [ShowroomName] och sök efter:
ShowroomName
Välj värdet från utlösaren.

Det färdiga värdet ska motsvara följande:
Begäran om @{triggerOutputs()?['body/number_1']} st av @{outputs('Hämta_vald_produktvariant')?['body/Title']} till @{triggerOutputs()?['body/text']} har skickats för manuell granskning. Ingen reservation har skapats.

Del 6: Skicka begäran för manuell granskning
Lägg till ett steg efter Förbered manuell granskning.

Sök efter:
Skicka e-postmeddelande
Välj åtgärden från Office 365 Outlook.

Byt namn på noden till:
Skicka begäran för manuell granskning

Välj dig själv som mottagare i fältet Till. Skriv följande ämne med platshållare:
Manuell granskning krävs: [ShowroomName], [Quantity] st

Ta bort [ShowroomName] och sök efter:
ShowroomName
Välj värdet från utlösaren.

Ta bort [Quantity] och sök efter:
Quantity
Välj värdet från utlösaren.

Det färdiga ämnet ska motsvara:
Manuell granskning krävs: @{triggerOutputs()?['body/text']}, @{triggerOutputs()?['body/number_1']} st

Klistra in följande text i mejlets brödtext:
Hej,
Följande begäran om showroompåfyllning behöver granskas manuellt eftersom villkoren för standardprocessen inte är uppfyllda.
Showroom: [ShowroomName]
Showroomtyp: [ShowroomType]
Land: [Country]
Produkt: [Title]
SKU: [SKU]
Önskat antal: [Quantity] st
Pris per styck: [CurrentUnitPrice] kr
Totalt produktpris: [TotalProductPrice] kr
Beräknat disponibelt saldo efter en eventuell reservation: [RemainingAvailableQuantity] st
Ingen reservation har skapats och lagersaldot har inte ändrats av denna begäran.
Bedöm begäran enligt policyn för intern produktförsörjning. Kontrollera aktuellt lager innan en eventuell reservation görs och återkoppla beslutet till berört showroom.
Vänliga hälsningar,
Lyserno Produktassistent
Ersätt [ShowroomName]. Sök efter:
ShowroomName
Välj värdet från utlösaren.

Ersätt [ShowroomType]. Sök efter:
ShowroomType
Välj värdet från utlösaren.

Ersätt [Country]. Sök efter:
Country
Välj värdet från utlösaren.

Ersätt [Title]. Sök efter:
Title
Välj värdet från Hämta vald produktvariant.

Ersätt [SKU]. Sök efter:
SKU
Välj värdet från samma SharePoint-nod.

Ersätt [Quantity]. Sök efter:
Quantity
Välj värdet från utlösaren.

Ersätt [CurrentUnitPrice]. Sök efter:
CurrentUnitPrice
Välj värdet från Hämta vald produktvariant.

Ersätt [TotalProductPrice]. Sök efter:
TotalProductPrice
Välj variabeln under Variables.

Ersätt [RemainingAvailableQuantity]. Sök efter:
RemainingAvailableQuantity
Välj variabeln under Variables.

Kontrollera att mejlet tydligt säger att ingen reservation har skapats.

Del 7: Returnera resultatet till agenten
Dra en anslutning från Skicka begäran för manuell granskning till den befintliga svarsnoden. Både standardvägen och den manuella vägen ska nu nå samma nod.

Byt namn på Respond to the agent till:
Returnera resultat

Öppna noden och välj Lägg till utdata.

Välj typen Text.

Ange namnet:
ResultStatus
Öppna dynamiskt innehåll och välj variabeln ResultStatus under Variables.

Välj Lägg till utdata igen och välj typen Text.

Ange namnet:
ResultMessage
Öppna dynamiskt innehåll och välj variabeln ResultMessage.

Kontrollera att svarsnoden innehåller båda värdena:
| Utdata | Värde |
|---|---|
ResultStatus |
ResultStatus |
ResultMessage |
ResultMessage |

Del 8: Kontrollera och publicera flödet
Kontrollera den färdiga flödesbilden. Standardgrenarna ska gå genom reservation, SharePoint-uppdatering och bekräftelsemejl. Grenen Annars ska gå genom manuell granskning utan att passera SharePoint-uppdateringen.

Välj Publicera uppe till höger.

Agentflödet är färdigt
Flödet kan nu reservera ett godkänt antal eller skicka begäran för manuell granskning. Båda vägarna returnerar ett resultat som agenten kan återge för användaren.