Sdílet prostřednictvím


Vytvoření nového poskytovatele

Pomocí následujících kroků vytvoříte nového poskytovatele. Pomocí těchto kroků můžete také přidat stávající poskytovatele.

Definice architektury poskytovatele

Než vytvoříte poskytovatele, je důležité pochopit, co chcete, aby poskytovatel dělal a k čemu ho chcete používat. Poskytovatelé mají více komponent a možná nebudete potřebovat všechny komponenty.

Pomocí následující tabulky určete, které součásti budete potřebovat.

Podmínka Potřebná komponenta
Služba, pro kterou chcete vytvořit poskytovatele, nemá konektor v Power Automate.
Další informace naleznete v části Seznam všech konektorů Power Automate.
Vytvořte zákaznický konektor nebo použijte obecný konektor.
Váš poskytovatel si bude vyměňovat data mezi externí službou a Microsoft Dataverse. Váš poskytovatel bude potřebovat transformaci poskytovatele. Přidejte komponentu transformace poskytovatele pro každou transformaci.
Váš poskytovatel provede logiku od návrháře orchestrace. Vytvořte samostatný tok Power Automate reprezentující každou z akcí.
Váš poskytovatel potřebuje zpracovat zprávy z externí služby. Vytvořte tok obslužné rutiny zpráv Power Automate.
Váš poskytovatel bude v pravidelných intervalech stahovat zprávy z externí služby. Vytvořte tok obslužné rutiny načítání zpráv Power Automate.
Váš poskytovatel vyvolá obchodní události, které nejsou aktuálně definovány v Intelligent Order Management. Vytvořte novou definici obchodní události a přidejte existující události.

Když dobře rozumíte řešením, můžete přistoupit k implementaci svého poskytovatele.

Vytvoření řešení poskytovatele

Chcete-li vytvořit řešení poskytovatele, musíte provést následující úkoly v této části.

  • Nastavte vlastního poskytovatele.

  • Přidejte definici poskytovatele.

  • Přidejte komponenty do svého řešení.

Nastavení vlastního poskytovatele

Vytvořte řešení v Power Apps, které bude obsahovat součásti vašeho poskytovatele. Chcete-li vytvořit nové řešení v Power Apps, postupujte podle kroků v části Vytvoření řešení v Power Apps.

Přidání definice poskytovatele

Definice poskytovatele obsahuje údaje o vašem poskytovateli. Definice určuje, jak se váš poskytovatel zobrazí v katalogu poskytovatelů.

  1. Ve vámi vytvořeném řešení poskytovatele vyberte Nový.

  2. Vyberte Definice poskytovateleIOM.

  3. Zadejte následující údaje:

    1. Zobrazovaný název: Název, který chcete dát svému poskytovateli, například "Poskytovatel testů".

    2. Logický název: Exportní klíč pro vašeho poskytovatele.

    3. Popis: Text, který popisuje, co váš poskytovatel dělá.

  4. Zvolte možnost Uložit

  5. Pokud chcete přidat logo, nahrajte obrázek.

  6. Ověřte, že se definice vašeho poskytovatele zobrazuje v řešení. Měl by se zobrazit záznam s typem komponenty Definice poskytovatele IOM. Pokud se nezobrazuje, vyberte Přidat existující a poté vyberte záznam, který jste právě vytvořili.

  7. Ověřte, že se váš poskytovatel zobrazuje v katalogu poskytovatelů. Pokud pole Je aktivní nastavíte na Ano, vaše definice poskytovatele se zobrazí v katalogu poskytovatelů. Otevřete Intelligent Order Management. Přejděte na Poskytovatelé > Katalog. Ověřte, že je zobrazena definice vašeho poskytovatele.

Přidání součástí do řešení

Po vytvoření definice poskytovatele přidejte komponenty poskytovatele do řešení.

  1. Přejděte na své řešení.

  2. Vyberte Přidat existující.

  3. Vyberte typ komponenty Intelligent Order Management a poté vyberte záznam, který jste právě vytvořili.

Vytvoření transformace poskytovatele

Pokud váš poskytovatel vyžaduje transformaci, musíte do svého řešení přidat komponentu transformace poskytovatele. Možná budete muset vytvořit více transformací.

  1. V řešení poskytovatele vyberte Nový.

  2. Vyberte Transformace definice poskytovatele IOM.

  3. Zadejte následující údaje:

    1. Zobrazovaný název: Název transformace poskytovatele, například "Transformovat prodejní objednávky".

    2. Logický název: Jedinečný identifikátor vašeho poskytovatele. Tato hodnota bude klíčem pro import a export dat. Měla by začínat předponou vydavatele. Microsoft například používá předponu vydavatele msdyn_. Příklady logického názvu jsou: msdyn_flexe_fulfillmentorderproduct_orderline a msdyn_flexe_fulfillmentorder_order.

    3. Typ zdroje: Toto pole označuje, jaký typ dat je přijímán. Existují dvě možnosti: JsonDocument nebo Entita Dataverse. Pokud jsou vaše data již v Dataverse, vyberte Entita Dataverse. Pokud ne, vyberte JsonDocument. Tyto informace budou použity v prvku Power Automate, který definujete, k vyhledání transformace.

    4. Název zdrojového objektu: Název dat, která transformujete. Pokud transformujete záznam Dataverse, ujistěte se, že Název zdrojového objektu je stejný jako v tabulce Dataverse.

    5. Název cílového objektu: Cíl záznamu, který chcete transformovat.

    6. Transformace: Online Power Query MQuery, který se použije k transformaci vstupních dat. Informace o Power Query a MQuery naleznete v části Co je Power Query? a Reference jazyka vzorců M Power Query. Následuje příklad MQuery, který transformuje prodejní objednávku z externí služby objednávek na prodejní objednávku v Intelligent Order Management.

shared TransformSourceData =

let

orderItems = Source\[OrderItems\],

orderheader =

Record.FromTable

(

Table.SelectRows

(

Record.ToTable

(

\[

ordernumber = Record.FieldOrDefault(Source, "SellerOrderId", Text.From(Source\[OrderServiceOrderId\])),

name = ordernumber,

msdyn\_ExternalOrderId = Text.From(Source\[OrderServiceOrderId\]),

\#"customerid\_account@odata.bind" = "/accounts(" & Text.From(Source\[accountid\]) & ")",

\#"pricelevelid@odata.bind" = "/pricelevels(" & Text.From(Source\[pricelevelid\]) & ")",

totalamount = if Record.HasFields(Source, "OrderTotal") then Decimal.From(Record.FieldOrDefault(Source\[OrderTotal\], "Amount")) else null,

shipto\_name = if Record.HasFields(Source, "ShippingAddress") then Record.FieldOrDefault(Source\[ShippingAddress\], "Name") else null,

shipto\_contactname = shipto\_name,

shipto\_line1 = if Record.HasFields(Source, "ShippingAddress") then Record.FieldOrDefault(Source\[ShippingAddress\], "AddressLine1") else null,

shipto\_line2 = if Record.HasFields(Source, "ShippingAddress") then Record.FieldOrDefault(Source\[ShippingAddress\], "AddressLine2") else null,

shipto\_line3 = if Record.HasFields(Source, "ShippingAddress") then Record.FieldOrDefault(Source\[ShippingAddress\], "AddressLine3") else null,

shipto\_city = if Record.HasFields(Source, "ShippingAddress") then Record.FieldOrDefault(Source\[ShippingAddress\], "City") else null,

shipto\_stateorprovince = if Record.HasFields(Source, "ShippingAddress") then Record.FieldOrDefault(Source\[ShippingAddress\], "StateOrRegion") else null,

shipto\_country = if Record.HasFields(Source, "ShippingAddress") then Record.FieldOrDefault(Source\[ShippingAddress\], "CountryCode") else null,

shipto\_postalcode = if Record.HasFields(Source, "ShippingAddress") then Record.FieldOrDefault(Source\[ShippingAddress\], "PostalCode") else null,

shipto\_telephone = if Record.HasFields(Source, "ShippingAddress") then Record.FieldOrDefault(Source\[ShippingAddress\], "Phone") else null,

overriddencreatedon = Record.FieldOrDefault(Source, "PurchaseDate")

\]

), each \[Value\] \<\> null

)

),

orderlines = List.Transform(orderItems, each

Record.FromTable

(

Table.SelectRows

(

Record.ToTable

(

\[

isproductoverridden = true,

ispriceoverridden = true,

productdescription = \[OrderItemId\] & "-" & Record.FieldOrDefault(\_, "SellerSKU") & "-" & Record.FieldOrDefault(\_, "Title"),

quantity = \[QuantityOrdered\],

quantityshipped = Record.FieldOrDefault(\_, "QuantityShipped"),

priceperunit = if Record.HasFields(\_, "ItemPrice") then Decimal.From(Record.FieldOrDefault(\[ItemPrice\], "Amount")) else null,

manualdiscountamount = if Record.HasFields(\_, "PromotionDiscount") then Decimal.From(Record.FieldOrDefault(\[PromotionDiscount\], "Amount")) else null,

tax = if Record.HasFields(\_, "ItemTax") then Decimal.From(Record.FieldOrDefault(\[ItemTax\], "Amount")) else null,

shipto\_name = Record.FieldOrDefault(orderheader, "shipto\_name"),

shipto\_contactname = Record.FieldOrDefault(orderheader, "shipto\_contactname"),

shipto\_line1 = Record.FieldOrDefault(orderheader, "shipto\_line1"),

shipto\_line2 = Record.FieldOrDefault(orderheader, "shipto\_line2"),

shipto\_line3 = Record.FieldOrDefault(orderheader, "shipto\_line3"),

shipto\_city = Record.FieldOrDefault(orderheader, "shipto\_city"),

shipto\_stateorprovince = Record.FieldOrDefault(orderheader, "shipto\_stateorprovince"),

shipto\_country = Record.FieldOrDefault(orderheader, "shipto\_country"),

shipto\_postalcode = Record.FieldOrDefault(orderheader, "shipto\_postalcode"),

shipto\_telephone = Record.FieldOrDefault(orderheader, "shipto\_telephone"),

overriddencreatedon = Record.FieldOrDefault(orderheader, "overriddencreatedon")

\]

), each \[Value\] \<\> null

)

)

),

salesorder = Record.AddField(orderheader, "order\_details", orderlines)

in Text.FromBinary(Json.FromValue(salesorder));
  1. Zvolte možnost Uložit

  2. Ověřte, zda se vaše transformační komponenta zobrazuje správně. Měl by se zobrazit typ komponenty Transformace poskytovatele IOM s názvem transformace. Pokud se nezobrazuje, vyberte Přidat existující a poté vyberte transformaci, kterou jste právě vytvořili.

Přidání definic obchodní události

Pokud váš poskytovatel vytvoří nebo použije nové obchodní události, musíte do svého řešení přidat komponenty Definice obchodní události definice poskytovatele IOM. Stačí přidat obchodní události, které ještě nejsou v Intelligent Order Management.

Pokud obchodní událost, kterou chcete vytvořit, ještě není v Intelligent Order Management, můžete si vytvořit vlastní.

  1. Zvolte Nové.

  2. Vyberte Definice obchodní události definice poskytovatele IOM.

  3. Zadejte následující údaje:

    1. Název: Název vaší obchodní události.

    2. Poskytovatel: Poskytovatel, pro kterého vytváříte tuto definici firmy.

    3. Přidružená entita: Entita Dataverse v aplikaci Intelligent Order Management, která je změněna nebo ovlivněna při vytvoření události.

    4. Hodnota přidruženého stavu: Pokud chcete, aby se při vyvolání obchodní události aktualizoval stav přidružené entity, uveďte do tohoto pole hodnotu stavu.

    5. Přidružená hodnota stavu: Pokud chcete, aby se při vyvolání obchodní události aktualizoval stav přidružené entity, uveďte do tohoto pole hodnotu stavu.

  4. Zvolte možnost Uložit.

  5. Zkontrolujte své řešení a ověřte, zda je zobrazen záznam Definice obchodní události poskytovatele IOM. Pokud se záznam v řešení neobjeví, vyberte Přidat existující a poté vyberte záznam, který jste právě vytvořili.

Přidat konektor

Pokud váš poskytovatel potřebuje konektor, který není dostupný v Power Automate, musíte si vytvořit vlastní konektor. Další informace viz Seznam všech konektorů Power Automate.

Chcete-li vytvořit svůj vlastní konektor Power Automate, postupujte podle kroků v části Přehled vlastních konektorů.

Po vytvoření vlastního konektoru ho přidejte do řešení poskytovatele jako komponentu.

  1. Přejděte na své řešení poskytovatele.

  2. Vyberte Přidat existující.

  3. Vyberte konektor, který jste vytvořili.

Typy toků Power Automate

Jakákoli akce, která je provedena v návrháři orchestrace, je reprezentována toky Power Automate. Pokud chcete, aby Power Automate načetlo konkrétní informace nebo provedlo konkrétní akce, budete muset pro tyto akce vytvořit toky. Další informace o Power Automate viz Úvod do Power Automate.

Přidejte své toky jako komponenty Definice logiky definice poskytovatele k vašemu poskytovateli.

Než začnete s procesem vytváření toku, zkontrolujte typy toků, které se používají v Intelligent Order Management.

Obslužná rutina zprávy poskytovatele

Tyto toky přijímají a zpracovávají zprávy z externí služby a vyvolávají příslušnou obchodní událost, aby informovaly orchestraci Intelligent Order Management. Tyto toky jsou spouštěny externí službou.

Následuje příklad struktury pro vytvoření toku Power Automate typu obslužné rutiny zpráv.

  1. Definujte trigger Power Automate. Obvykle se jedná o koncový bod HTTP, který je triggerem webhooku (doporučeno), triggerem konektoru nebo triggerem vložení Dataverse. Trigger se aktivuje, když má externí služba data k odeslání do Intelligent Order Management. Snímek obrazovky trigger při přijetí požadavku HTTP.

Schéma JSON, které se má použít ve vašem triggeru HTTP, je definováno níže.

{
    "type": "object",
    "properties": {
        "text": {
            "title": "ProviderActionExecutionEventId",
            "type": "string",
            "x-ms-dynamically-added": true,
            "description": "Please enter your input",
            "x-ms-content-hint": "TEXT"
        },
        "text_1": {
            "title": "EntityRecordId",
            "type": "string",
            "x-ms-dynamically-added": true,
            "description": "Please enter your input",
            "x-ms-content-hint": "TEXT"
        }
    },
    "required": [
        "text",
        "text_1"
    ]
}
  1. Inicializujte zpracování zprávy. Tento úkol zahrnuje dva kroky.

    1. Inicializujte výsledek provedení, který bude použit ke sledování zpracování zprávy.

    2. Potvrďte zprávu poskytovatele v Intelligent Order Management, abyste mohli sledovat, opakovat a zobrazit stav zpracování. Toto je akce Power Automate, kterou zavádí Intelligent Order Management. Tato akce se nazývá Potvrdit požadavek na zprávu poskytovatele v IOM. Tato akce má následující požadované parametry.

      1. PowerAutomateWorkflowId: WorkflowId v definici obslužné rutiny zprávy. Můžete ho získat pomocí funkce tvorby s workflow()['tags'].

      2. PowerAutomateRunId: Jedinečný identifikátor Power Automate spuštění, které přijalo zprávu a umožňuje kanálu opakovat zpracování a propojit protokoly spuštění. Můžete ho získat pomocí funkce tvorby s workflow()['run']?['name'].

      3. ProviderMessageExternalRequestId: Identifikátor odeslané zprávy. Pokud není přítomen žádný identifikátor, lze vygenerovat GUID. Tento identifikátor používá kanál, aby zabránil odesílateli v odesílání duplicitních zpráv. Identifikátor závisí na datové části zdroje. Například: concat(triggerOutputs()?['body']?['type']?['name'], '_', triggerOutputs()?['body']?['id']).

Snímek obrazovky s žádostí o potvrzení zprávy poskytovatele.

  1. Transformace poskytovatele, kterou jste definovali dříve, načte vstupní data a transformuje je. Intelligent Order Management poskytuje přednastavený podřízený tok nazvaný Transformátor poskytovatele IOM, který provede transformaci. Ke zpracování události nebo zprávy zadejte následující údaje:

    1. Název poskytovatele: Název zprostředkovatele propojeného s obslužnou rutinou zprávy. Tato hodnota musí mít stejný název jako vaše transformace poskytovatele.

    2. Název zdrojového objektu: Hodnota vyhledávacího klíče zdroje, která se má provést. Tato hodnota musí být stejná jako název zdrojového objektu definovaný v transformaci vašeho poskytovatele.

    3. Název cílového objektu: Hodnota cílového vyhledávacího klíče pro transformaci, která se má provést. Tato hodnota musí být stejná jako hodnota definovaná v transformaci poskytovatele.

    4. Datová část: Poskytuje se při transformaci datové části JSON. Power Automate vyžaduje, aby byly parametry předány jako serializovaný řetězec. Zadejte hodnotu Datová část, nebo ID záznamu, nikoli obě.

    5. ID záznamu: Slouží při transformaci záznamu Dataverse . Zadejte hodnotu Datová část, nebo ID záznamu, nikoli obě.
      Snímek obrazovky pro zprávu transformace s Power Query Online.

  2. Data můžete vložit do Dataverse pomocí požadavků HTTP nebo akce Vložit konektoru Dataverse. Pokud provádíte více než jedno vložení a chcete zlepšit výkon, zabalte vložky do sady změn tak, aby požadavky byly v dávce transakce.
    Snímek obrazovky toku vkládání zpráv.

  3. Pokud chcete, aby váš tok vyvolal obchodní událost, můžete použít podřízený tok Vyvolat obchodní událost. Zadejte následující údaje.

    1. BusinessEventName: Název události, kterou chcete vyvolat.

    2. EntityRecordId: ID záznamu, který byl právě vytvořen a přidružen k události.

  4. Aktualizujte stav zpracování zprávy pomocí akce Aktualizovat stav požadavku zprávy poskytovatele k uložení výsledku zpracování. Zadejte následující údaje.

    1. ProviderMessageRequestExecutionId: ID výstupu záznamu vytvořeného pro sledování průběhu zpracování zprávy.

    2. IsProviderMessageRequestExecutionSuccess: logický hodnotu, která označuje, zda bylo zpracování úspěšné.

Stahování zpráv poskytovatele

Stahovače zpráv poskytovatele jsou toky Power Automate, které v pravidelně definovaných intervalech stahují zprávy z externí služby.

Poznámka

Obslužný program zpráv je nezbytným předpokladem pro tok stahování zpráv.

Následuje příklad struktury pro vytvoření toku Power Automate typu stahovače zpráv.

  1. K naplánování spouštěče použijte pracovní postup opakování.

  2. Získejte kontrolní bod z Dataverse. Kontrolní body sledují, které zprávy byly úspěšně staženy od externího poskytovatele. Zadejte následující údaje.

    1. Název akce: Název kontrolního bodu.

    2. WorkflowId: Nastavte následující funkci pro psaní tak, aby načetla tyto informace: workflow()['tags']['xrmWorkflowId'].
      snímek obrazovky Získat kontrolní bod.

  3. Vytvořte požadavek HTTP na odeslání externímu poskytovateli, aby zprávy stáhl. Zadejte následující údaje.

    1. Metoda: Nastavte toto pole na POST.

    2. Adresa URL: Koncový bod externího poskytovatele.

    3. Text: Požadavek JSON by měl mít následující vzorec: if(empty(outputs('Get_Checkpoint')?[' body/Checkpoint']), 0, int(outputs('Get_Checkpoint')?[' body/Checkpoint'])).
      Snímek obrazovky pro stahované zprávy.

  4. Analyzujte zprávy stažené v kroku 3. Zadejte následující údaje.

    1. Obsah: Tělo získané z krok 3.

    2. Schéma: Struktura těla získaná v krok 3.
      Snímek obrazovky pro analyzované zprávy.

  5. Zpracujte zprávy tak, aby procházely každou zprávou z kroku 4.

  6. Analyzujte každou zprávu z předchozích kroků. Zadejte následující informace.

    1. Obsah: Aktuální položka z Zpracování zpráv.

    2. Schéma: Jedna zpráva ve formátu JSON.
      Snímek obrazovky pro zpracovávané zprávy 2.

  7. Zavolejte obslužnou rutinu zpráv poskytovatele, kterou jste nastavili v předpokladech. Zadejte následující informace.

    1. podřízený tok: Vyberte obslužnou rutinu zprávy zprostředkovatele.

    2. Zpráva: Zpráva analyzovaná z krok 6.
      Snímek obrazovky pro zpracovávané zprávy 3.

  8. Uložte kontrolní bod do Dataverse. Zadejte následující informace.

    1. Kontrolní bod: Může to být libovolná řetězcová hodnota (max. 100). V tomto příkladu se jedná o ID poslední zpracované zprávy.

    2. WorkFlowId: Toto ID můžete načíst přidáním funkce psaní nastavené do workflow()['tags']['xrmWorkflowId'].
      Snímek obrazovky pro zpracovávané zprávy 4.

Akce poskytovatele

Toky akcí poskytovatele jsou vyvolány z návrháře orchestrace. Tyto toky obvykle volají z Intelligent Order Management na externí služby.

Klíčový rozdíl mezi obslužnou rutinou zpráv poskytovatele a akcí poskytovatele je v tom, že zatímco obslužná rutina zpráv může upozornit návrháře orchestrace, nemůže být spuštěna dlaždicí akce v návrháři orchestrace, zatímco akce poskytovatele ano.

Následuje příklad struktury toku Power Automate akce poskytovatele.

  1. Začněte ručním triggerem HTTP. Následující informace budou předány za běhu orchestrační službou. Pro hlavní část se použije následující schéma JSON:
{
    "type": "object",
    "properties": {
        "text": {
            "title": "ProviderActionExecutionEventId",
            "type": "string",
            "x-ms-dynamically-added": true,
            "description": "Please enter your input",
            "x-ms-content-hint": "TEXT"
        },
        "text_1": {
            "title": "EntityRecordId",
            "type": "string",
            "x-ms-dynamically-added": true,
            "description": "Please enter your input",
            "x-ms-content-hint": "TEXT"
        }
    },
    "required": [
        "text",
        "text_1"
    ]
}
  1. Inicializujte zpracování akce.

    1. Inicializujte výsledek provedení a všechny další proměnné zpracování.

    2. Potvrďte zahájení provádění akce pomocí akce Dataverse Zahájit provádění akce poskytovatele. To umožní kanálu sledovat, opakovat a zobrazovat stav zpracování v rámci Intelligent Order Management. Zadejte následující informace.

      1. ProviderActionExecutionEventId: Tato hodnota byla předána do akce jako vstupní parametr v krok 1.

      2. PowerAutomateRunID: Jedinečný běh Power Automate akce. To umožňuje kanálu propojit protokoly provádění. Tyto informace získáte nastavením pole na výraz Power Automate worflow()['run']?['name'].

  2. Proveďte akci.

    1. V případě potřeby transformujte záznamy pomocí podřízeného toku Transformovat zprávu s Power Query Online.

      1. Název poskytovatele: Název poskytovatele, který má být propojen s akcí. Název musí být stejný název jako vaše definice poskytovatele.

      2. Název zdrojového objektu: Název zdroje transformace, která se má provést. Tento název musí být stejný zdrojový objekt definovaný ve vaší transformaci Power Automate.

      3. Název cílového objektu: Hodnota cílového vyhledávacího klíče pro transformaci, která se má provést. Tento název musí být stejný jako hodnota definovaná v transformaci poskytovatele.

      4. Datová část: Poskytuje se při transformaci příchozí datové části JSON. Power Automate vyžaduje, aby byly parametry předány jako serializovaný řetězec. Zadejte hodnotu Datová část, nebo ID záznamu, ale nikoli obě.

      5. ID záznamu: Zadává se při transformaci odchozího Dataverse záznamu. Zadejte hodnotu Datová část, nebo ID záznamu, ale nikoli obě.
        Snímek obrazovky pro zprávu transformace s Power Query Online.

    2. Proveďte libovolné vlastní akce, které jste definovali. Toto jsou akce, které jsou přítomny na konektoru Power Automate, který používáte.

    3. Vyvolejte obchodní akci specifickou pro akci. Použijte podřízený tok Vyvolat obchodní událost. Zadejte následující informace.

      1. BusinessEventName: Název události, kterou chcete vyvolat.

      2. EntityRecordId: ID záznamu přidruženého k události.

  3. Dokončete provedení akce a uložte výsledky. Výsledky zpracuje návrhář orchestrace. Zadejte následující informace.

    1. ExecutionResult: logický hodnotu, která označuje, jestli zpracování proběhlo úspěšně.

    2. ExecutionDetails: Volitelné podrobnosti protokolu pro účely testování a ladění.

    3. ProviderActionExecutionEventId: Tato hodnota byla předána do akce jako vstupní parametr, který byl definován v krok 1.
      Snímek obrazovky dokončení akce poskytovatele.

Podřízený tok

Podřízený tok je podtok, na který se odkazuje v jiných tocích Power Automate. Je užitečné definovat podřízený tok, pokud existují některé kroky, které opakujete ve více oblastech. Pro podřízené toky neexistuje žádná konkrétní šablona ani doporučený proces, protože jsou primárně určeny pro pohodlí při konsolidaci podobných kroků.

Podřízené toky poskytovatele nemohou volat jiné podřízené toky poskytovatele.

Vytváření cloudových toků

Když pochopíte typy toků, které chcete vytvořit, jste připraveni vytvářet cloudové toky. Chcete-li to provést, postupujte takto:

  1. Otevřete výchozí řešení ve svém prostředí Power Apps.

Důležité

Nepřidávejte tato řešení do svého poskytovatele řešení.

  1. Vyberte Nový a poté vyberte Cloudový tok.

  2. Sestavte tok Power Automate. Pro referenci použijte šablony v předchozí části.

  3. Informace o uložení toků naleznete v následující části.

Uložení definice Power Automate

Poté, co vytvoříte své toky, musíte je uložit jako komponenty Definice logiky definice poskytovatele. Tento typ komponenty poskytuje Intelligent Order Management akce, které se mají nasadit během aktivace poskytovatele.

Než můžete ukládat toky, je nutné nejprve mít následující předpoklady:

  • Chcete-li uložit definice logiky Power Automate, budete muset zadat požadavky OData. K tomu potřebujete účet u PostMan nebo podobné služby.

  • Abyste mohli zadávat požadavky GET a POST, budete si muset vygenerovat přístupový token do svého prostředí Dataverse.

    • Nastavte účet Azure s aktivním předplatným. Pokud nemáte aktivní účet, musíte si ho založit na webu Azure.

    • PowerShell musí být nainstalován. Další informace o tom naleznete v tématu Instalace PowerShell.

    • Chcete-li získat přístupový token, zadejte v PowerShell následující příkaz: az login --allow-no-subscriptions account get-access-token --resource=https://YourDataverseTenantURL.api.crm.dynamics.com/ --query=accessToken --output=tsv | Set-Clipboard.

Chcete-li uložit svou definici Power Automate, proveďte následující.

  1. Najděte ID pracovního postupu toku Power Automate, který chcete uložit. Proveďte některou z následujících akcí.

    1. Najděte ID pracovního postupu pomocí akce Power Automate.

      1. Vytvořte akci vytvoření s výrazem workflow() na konci toku Power Automate.
        Snímek obrazovky s akcí vytvoření.

      2. Spusťte Power Automate.

      3. Vlastnost xrmWorkflowId z výsledků provádění bude obsahovat ID pracovního postupu.
        Snímek obrazovky ID pracovního postupu.

      4. Odstraňte tuto akci z toku, aby se znovu nespustila.

    2. Volitelně můžete zadat požadavek Načíst OData.

      1. Přejděte na tok, pro který chcete uložit ID pracovního postupu. Vyhledejte jedinečný identifikátor pro URL. Toto je ID, které je uvedeno za ../flows/ v URL.
        Jak najít jedinečný identifikátor.

      2. Chcete-li načíst metadata pracovního postupu, zadejte požadavek OData. Následuje příklad požadavku GET.
        GET {url prostředí}/api/data/v9.1/workflows?$filter=workflowidunique eq '{jedinečné ID pracovního postupu z Power Automate U}'&$select=workflowid,workflowidunique

      3. Uložte vrácenou vlastnost workflowid.

  2. Najděte ID definice poskytovatele.

    1. Vyberte definici poskytovatele, do které chcete tok uložit.

    2. Zkopírujte ID definice poskytovatele z adresy URL. Toto je část adresy URL ../id={příklad čísla}/.
      Jak najít ID definice poskytovatele.

  3. Poznamenejte si hodnotu sady možností pro typ Power Automate, který ukládáte.

    1. podřízený tok: 192350002

    2. Akce poskytovatele: 192350001

    3. Obslužná rutina zprávy zprostředkovatele: 192350000

    4. stahování zpráv poskytovatele: 192350003

  4. Zadejte požadavek POST a uložte svou definici Power Automate. Následuje příklad požadavku.

    POST: {Env url}/api/data/v9.1/msdyn\_SaveProviderDefinitionLogicDefinition  
    Body:  
    {

"ProviderDefinitionId": "{ProviderId previously found}",

"WorkflowId": "{Power Automate WorkflowId previously found}",

"LogicalName": "{Export prefix \_ Power Automate Export Name}",

"LogicType": {Logic Type},

"MaxRetryAttempts": {Max number of attempts},

"TimeoutMinutes": {Timeout number ex: 5}

}
  1. Ověřte, že byla přidána vaše komponenta Definice logiky definice poskytovatele. Chcete-li to provést, postupujte takto:

    1. Přejděte na své řešení poskytovatele.

    2. Ověřte, že byla přidána definice logiky definice poskytovatele, kterou jste vytvořili. Pokud nebyla přidána, vyberte Přidat existující a poté přidejte komponentu, kterou jste vytvořili.

Uložení informací o připojení

Pokud váš poskytovatel používá zákaznické konektory Power Automate, musíte provést následující kroky k uložení informací o připojení do vašeho řešení Power Automate.

  1. Vydejte požadavek GET k načtení ID informací o připojení. Příklad:
GET {Env url}/api/data/v9.2/connectionreferences

Pokud je chcete dále filtrovat, můžete filtrovat podle názvu informací o připojení. Příklad:

    {Env url}/api/data/v9.2/connectionreferences?$[connectionreferences?$filter=connectionreferencedisplayname](https://orgdb90e3a2.api.crm10.dynamics.com/api/data/v9.2/connectionreferences?$filter=connectionreferencedisplayname) eq 'Provider Example'&$select=connectionreferencelogicalname,connectionreferencedisplayname,connectionreferenceid,connectorid

  1. Prohledáním klientských dat Power Automate ověřte, že bylo načteno správné referenční ID připojení.

    1. Přejděte na komponentu Definice logiky definice poskytovatele, kterou jste předtím uložili.

    2. Zkontrolujte data klienta a ověřte, že se zobrazuje connectionReferenceLogicalName.

  2. Vyhledejte ID definice poskytovatele. Toto je stejná hodnota, kterou jste použili v kroku 2 k uložení definic logiky Power Automate.

  3. Vydejte požadavek POST k uložení informací o připojení. Příklad:

POST {Env url}/api/data/v9.1/msdyn\_SaveProviderDefinitionConnectionReference  
    Body:  
    {

"ProviderDefinitionId": "{ProviderId previously found}",

"ConnectionReferenceId": "{Connection reference id previously found}"

}
  1. Ověřte, že byla přidána vaše komponenta Definice logiky definice poskytovatele.

    1. Přejděte na své řešení poskytovatele.

    2. Ověřte, že byla přidána komponenta reference definice logiky definice poskytovatele, kterou jste vytvořili. Pokud nebyla přidána, vyberte Přidat existující a přidejte komponentu, kterou jste právě vytvořili.

Sdílení poskytovatelů

Pokud chcete svou definici poskytovatele použít v jiném prostředí nebo sdílet své řešení, můžete své řešení poskytovatele exportovat. Další informace naleznete v tématu Export řešení.