Share via


B2B-üzenetek cseréje partnerek között munkafolyamatok használatával az Azure Logic Appsben

A következőkre vonatkozik: Azure Logic Apps (Használat + Standard)

Ha rendelkezik egy kereskedelmi partnereket és megállapodásokat meghatározó integrációs fiókkal, létrehozhat egy automatizált üzleti (B2B) munkafolyamatot, amely üzeneteket cserél a kereskedelmi partnerek között az Azure Logic Apps használatával. A munkafolyamat olyan összekötőket használhat, amelyek támogatják az iparági szabványoknak megfelelő protokollokat, például AS2, X12, EDIFACT és RosettaNet. Az Azure Logic Appsben más összekötők által biztosított műveleteket is tartalmazhat, például Office 365 Outlookot, SQL Server és Salesforce-t.

Ez a cikk bemutatja, hogyan hozhat létre példa logikaialkalmazás-munkafolyamatot, amely képes HTTP-kéréseket fogadni egy Kérés eseményindító használatával, hogyan dekódolhatja az üzenet tartalmát az AS2 Decode és Decode X12 műveletekkel, és hogyan adhat vissza választ a Válasz művelet használatával. A példa a munkafolyamat-tervezőt használja a Azure Portal, de hasonló lépéseket is végrehajthat a Visual Studióban a munkafolyamat-tervezőhöz.

Ha még nem ismerkedik a logikai alkalmazásokkal, tekintse át a Mi az az Azure Logic Apps? című cikket. A B2B vállalati integrációval kapcsolatos további információkért tekintse át a B2B vállalati integrációs munkafolyamatokat az Azure Logic Appsszel.

Előfeltételek

  • Azure-fiók és -előfizetés. Ha még nem rendelkezik előfizetéssel, regisztráljon egy ingyenes Azure-fiókra.

  • Egy integrációsfiók-erőforrás, amelyben a vállalati integrációs és B2B-munkafolyamatokban használható összetevőket , például kereskedelmi partnereket, megállapodásokat, tanúsítványokat stb. definiálhat és tárolhat. Ennek az erőforrásnak meg kell felelnie a következő követelményeknek:

    • Ugyanazzal az Azure-előfizetéssel van társítva, mint a logikai alkalmazás erőforrása.

    • A logikai alkalmazás erőforrásával megegyező helyen vagy Azure-régióban található.

    • Ha a logikai alkalmazás (használat) erőforrástípust használja, az integrációs fióknak szüksége van egy hivatkozásra a logikai alkalmazás erőforrásához , mielőtt összetevőket használhat a munkafolyamatban.

    • Ha a Logikai alkalmazás (Standard) erőforrástípust használja, az integrációs fióknak nincs szüksége a logikai alkalmazás erőforrására mutató hivatkozásra, de továbbra is szükség van más összetevők, például partnerek, szerződések és tanúsítványok tárolására, valamint az AS2, X12 vagy EDIFACT műveletek használatára. Az integrációs fióknak továbbra is meg kell felelnie más követelményeknek, például ugyanazt az Azure-előfizetést kell használnia, és ugyanazon a helyen kell lennie, mint a logikaialkalmazás-erőforrásnak.

    Megjegyzés

    Jelenleg csak a logikai alkalmazás (használat) erőforrástípus támogatja a RosettaNet-műveleteket . A Logikai alkalmazás (Standard) erőforrástípus nem tartalmazza a RosettaNet-műveleteket .

  • Legalább két kereskedelmi partner az integrációs fiókjában. Mindkét partner definícióinak ugyanazt az üzleti identitás-minősítőt kell használniuk , amely AS2, X12, EDIFACT vagy RosettaNet.

  • AS2-szerződés és X12-szerződés azoknak a partnereknek, amelyeket ebben a munkafolyamatban használ. Minden szerződéshez szükség van egy gazdagéppartnerre és egy vendégpartnerre.

  • Egy logikaialkalmazás-erőforrás üres munkafolyamattal, ahol hozzáadhatja a Kérelem eseményindítót, majd a következő műveleteket:

A Kérelem eseményindító hozzáadása

A munkafolyamat ebben a példában való elindításához adja hozzá a Kérelem eseményindítót.

  1. A Azure Portal nyissa meg a logikai alkalmazás erőforrását és az üres munkafolyamatot a munkafolyamat-tervezőben.

  2. A tervező keresőmezőjében válassza az Összes lehetőséget, ha nincs bejelölve. A keresőmezőbe írja be a when a http request kifejezést. Válassza a Http-kérés fogadásakor nevű Kérés eseményindítót.

    Képernyőkép Azure Portal és több-bérlős tervezőről a keresőmezőben a

  3. Az eseményindítóban hagyja üresen a Kérelem törzsének JSON-sémája mezőt.

    Ennek az az oka, hogy az eseményindító egy X12-üzenetet kap egy sima fájlformátumban.

    Képernyőkép a több-bérlős tervezőről és a Kérelem eseményindító tulajdonságairól.

  4. Ha elkészült, a tervező eszköztárán válassza a Mentés lehetőséget.

    Ez a lépés létrehozza a HTTP POST URL-címet , amelyet később a logikai alkalmazás munkafolyamatát aktiváló kérés küldéséhez használ.

    Képernyőkép a több-bérlős tervezőről és a Kérelem eseményindítóhoz létrehozott URL-címről.

  5. Másolja ki és mentse az URL-címet későbbi használatra.

Az AS2-dekódolás művelet hozzáadása

Most adja hozzá a példához tartozó B2B-műveleteket, amelyek az AS2 és az X12 műveleteket használják.

  1. Az eseményindító alatt válassza az Új lépés lehetőséget.

    Tipp

    A Kérelem eseményindító részleteinek elrejtéséhez válassza ki az eseményindító címsorát.

    Képernyőkép a több-bérlős tervezőről és az eseményindítóról, amelyen az

  2. A Művelet kiválasztása keresőmezőben válassza az Összes lehetőséget, ha nincs bejelölve. A keresőmezőbe írja be as2a kifejezést, és válassza az AS2 Dekódolás lehetőséget.

    Képernyőkép a több-bérlős tervezőről, amelyen az

  3. A művelet Message to decode (Üzenet dekódolása) tulajdonságában adja meg azt a bemenetet, amelyet az AS2 művelet dekódolni szeretne. Ez a body Kérés eseményindító kimenete. Ezt a tartalmat többféleképpen is megadhatja a művelet bemeneteként, akár a dinamikus tartalomlistából, akár kifejezésként:

    • Ha az elérhető eseményindító-kimeneteket megjelenítő listából szeretne választani, kattintson a Dekódolandó üzenet mezőbe. A dinamikus tartalomlista megjelenése után a HTTP-kérés fogadásakor területen válassza a Body tulajdonság értékét, például:

      Képernyőkép a több-bérlős tervezőről, amelyen a dinamikus tartalomlista és a

      Tipp

      Ha nem jelennek meg eseményindító-kimenetek, a dinamikus tulajdonságlistában, a HTTP-kérés fogadásakor területen válassza a Továbbiak elemet.

    • Ha olyan kifejezést szeretne megadni, amely az eseményindító kimenetére body hivatkozik, kattintson az Üzenet dekódolni mezőbe. A dinamikus tartalomlista megjelenése után válassza a Kifejezés lehetőséget. A kifejezésszerkesztőben írja be a következő kifejezést, és válassza az OK gombot:

      triggerOutputs()['body']

      Vagy írja be közvetlenül a következő kifejezést a Dekódolandó üzenet mezőbe:

      @triggerBody()

      A kifejezés a Törzs jogkivonatra lesz feloldva.

      Képernyőkép a több-bérlős tervezőről a

  4. A művelet Üzenetfejlécek tulajdonságában adja meg az AS2 művelethez szükséges fejléceket, amelyek a headers Kérelem eseményindító kimenetében találhatók.

    1. Ha olyan kifejezést szeretne megadni, amely az eseményindító kimenetére headers hivatkozik, válassza az Üzenetfejlécek váltása szöveges módba lehetőséget.

      Képernyőkép a több-bérlős tervezőről az

    2. Kattintson az Üzenetfejlécek mezőbe. A dinamikus tartalomlista megjelenése után válassza a Kifejezés lehetőséget. A kifejezésszerkesztőben írja be a következő kifejezést, és válassza az OK gombot:

      triggerOutputs()['Headers']

      Az AS2 Dekódolás műveletben a kifejezés most tokenként jelenik meg:

      Képernyőkép a több-bérlős tervezőről és az

    3. Ha le szeretné állítani a feloldandó kifejezési jogkivonatot a Fejlécek jogkivonatba, váltson a tervező és a kódnézet között. A lépés után az AS2 Dekódolás művelet a következő példához hasonlóan néz ki:

      Képernyőkép a több-bérlős tervezőről és az eseményindító fejléceinek kimenetéről.

Válaszművelet hozzáadása üzenet visszaigazolásaként

Ha értesíteni szeretné a kereskedelmi partnert az üzenet beérkezéséről, a Feltétel és a Válasz műveletekkel olyan választ adhat vissza, amely egy AS2 üzeneteloszlási értesítést (MDN) tartalmaz. Ha ezeket a műveleteket közvetlenül az AS2 művelet után adja hozzá, a logikai alkalmazás munkafolyamata folytathatja a feldolgozást, ha az AS2 művelet sikeres. Ellenkező esetben, ha az AS2 művelet sikertelen, a logikai alkalmazás munkafolyamata leállítja a feldolgozást.

  1. Az AS2 Dekódolás művelet alatt válassza az Új lépés lehetőséget.

  2. A Művelet kiválasztása keresőmezőben válassza a Beépített lehetőséget, ha még nincs kijelölve. A keresőmezőbe írja be a condition kifejezést. Válassza a Feltétel műveletet.

    Képernyőkép a több-bérlős tervezőről és a

    Ekkor megjelenik a feltételalakzat, beleértve azokat az elérési utakat is, amelyek meghatározzák, hogy a feltétel teljesül-e.

    Képernyőkép a több-bérlős tervezőről és a feltételalakzatról üres elérési utakkal.

  3. Most adja meg a kiértékelendő feltételt. Az Érték kiválasztása mezőbe írja be a következő kifejezést:

    @body('AS2_Decode')?['AS2Message']?['MdnExpected']

    A középső mezőben győződjön meg arról, hogy az összehasonlítási művelet értéke is equal to. A jobb oldali mezőbe írja be a értéket Expected.

  4. Mentse a logikai alkalmazás munkafolyamatát. A feloldandó kifejezés tokenként való lekéréséhez váltson a tervező és a kódnézet között.

    Képernyőkép a több-bérlős tervezőről és a feltételalakzatról egy művelettel.

  5. Most adja meg a visszaadandó válaszokat attól függően, hogy az AS2 Dekódolás művelet sikeres-e vagy sem.

    1. Abban az esetben, ha az AS2 Dekódolás művelet sikeres, az Igaz alakzatban válassza a Művelet hozzáadása lehetőséget. A Művelet kiválasztása keresőmezőbe írja be responsea kifejezést, majd válassza a Válasz lehetőséget.

      Képernyőkép a több-bérlős tervezőről és a

    2. Ha az AS2 MDN-t az AS2 Decode művelet kimenetéből szeretné elérni, adja meg a következő kifejezéseket:

      • A Válasz művelet Fejlécek tulajdonságában adja meg a következő kifejezést:

        @body('AS2_Decode')?['OutgoingMdn']?['OutboundHeaders']

      • A Válasz művelet Body (Törzs ) tulajdonságában adja meg a következő kifejezést:

        @body('AS2_Decode')?['OutgoingMdn']?['Content']

    3. A feloldandó kifejezések jogkivonatként való lekéréséhez váltson a tervező és a kódnézet között:

      Képernyőkép a több-bérlős tervezőről és az AS2 MDN eléréséhez szükséges feloldott kifejezésről.

    4. Ha az AS2 Dekódolás művelet sikertelen, a Hamis alakzatban válassza a Művelet hozzáadása lehetőséget. A Művelet kiválasztása keresőmezőbe írja be responsea kifejezést, majd válassza a Válasz lehetőséget. Állítsa be a Válasz műveletet a kívánt állapot és hiba visszaadásához.

  6. Mentse a logikai alkalmazás munkafolyamatát.

Az X12-üzenet dekódolása művelet hozzáadása

Most adja hozzá az X12-üzenet dekódolása műveletet.

  1. A Válasz művelet alatt válassza a Művelet hozzáadása lehetőséget.

  2. A Művelet kiválasztása területen írja be x12 decodea kifejezést a keresőmezőbe, és válassza az X12-üzenet dekódolása lehetőséget.

    Képernyőkép a több-bérlős tervezőről és a kiválasztott

  3. Ha az X12 művelet kapcsolati adatokat kér, adja meg a kapcsolat nevét, válassza ki a használni kívánt integrációs fiókot, majd válassza a Létrehozás lehetőséget.

    Képernyőkép a több-bérlős tervezőről és az integrációs fiókhoz való csatlakozásról.

  4. Most adja meg az X12 művelet bemenetét. Ez a példa az AS2 művelet kimenetét használja, amely az üzenet tartalma, de vegye figyelembe, hogy ez a tartalom JSON-objektumformátumban van, és base64 kódolású. Ezért sztringgé kell konvertálnia ezt a tartalmat.

    Az X12 Egybesimított fájlkódoló mezőbe írja be a következő kifejezést az AS2-kimenet konvertálásához:

    @base64ToString(body('AS2_Decode')?['AS2Message']?['Content'])

  5. Mentse a logikai alkalmazás munkafolyamatát. A feloldandó kifejezés jogkivonatként való lekéréséhez váltson a tervező és a kódnézet között.

    Képernyőkép a több-bérlős tervezőről és a base64 kódolású tartalomról egy sztringre való konvertálásról.

  6. Mentse a logikai alkalmazás munkafolyamatát.

    Ha további lépésekre van szüksége ehhez a logikai alkalmazás munkafolyamatához, például az üzenet tartalmának dekódolásához és a tartalom JSON-objektumformátumban való kimenetéhez, folytassa a szükséges műveletek hozzáadását a logikai alkalmazás munkafolyamatához.

Ezzel befejezte a B2B logikai alkalmazás munkafolyamatának beállítását. Egy valós alkalmazásban érdemes lehet a dekódolt X12-adatokat egy üzletági (LOB) alkalmazásban vagy adattárban tárolni. Tekintse át például a következő dokumentációt:

Ha saját LOB-alkalmazásokat szeretne csatlakoztatni, és használni szeretné ezeket az API-kat a logikai alkalmazásban, további műveleteket adhat hozzá, vagy egyéni API-kat írhat.

Következő lépések