Csatlakozás az SAP-hoz az Azure Logic Apps munkafolyamataiból
A következőkre vonatkozik: Azure Logic Apps (Használat + Standard)
Ez a többrészes útmutató bemutatja, hogyan érheti el az SAP-kiszolgálót az Azure Logic Apps egyik munkafolyamatából az SAP-összekötő használatával. Az SAP-összekötő műveleteivel olyan automatizált munkafolyamatokat hozhat létre, amelyek akkor futnak, amikor az SAP-kiszolgálón vagy más rendszerekben események aktiválódnak, és műveleteket futtathat az SAP-kiszolgálón lévő erőforrások kezeléséhez.
A Standard és a Consumption logikai alkalmazás munkafolyamatai is kínálják a több-bérlős Azure-ban üzemeltetett és futtatott SAP felügyelt összekötőt. A standard munkafolyamatok az egybérlős Azure Logic Appsben üzemeltetett és futtatott SAP beépített összekötőt is kínálják. Ha használatalapú munkafolyamatot hoz létre és üzemeltet egy integrációs szolgáltatási környezetben (ISE), használhatja az SAP-összekötő ISE-natív verzióját is. További információkért tekintse meg az összekötők műszaki referencia-adatait.
SAP-kompatibilitás
Az SAP-összekötő a következő típusú SAP-rendszerekkel kompatibilis:
Helyszíni és felhőalapú HANA-alapú SAP-rendszerek, például S/4 HANA.
Klasszikus helyszíni SAP-rendszerek, például R/3 és ECC.
Az SAP-nak támogatnia kell a csatlakoztatni kívánt SAP-rendszerverziót. Ellenkező esetben előfordulhat, hogy az esetlegesen felmerülő problémák nem oldhatók meg. Az SAP-rendszerverziókról és a karbantartási információkról az SAP-termék rendelkezésre állási mátrixában (PAM) talál további információt.
Az SAP-összekötő az alábbi üzenet- és adatintegrációs típusokat támogatja az SAP NetWeaver-alapú rendszerekből:
Köztes dokumentum (IDoc)
Üzleti alkalmazás programozási felülete (BAPI)
Távoli függvényhívás (RFC) és tranzakciós RFC (tRFC)
Az SAP-összekötő az SAP .NET-összekötő (NCo) kódtárat használja.
Az SAP-összekötő műveleteinek használatához először hitelesítenie kell a kapcsolatot, és a következő lehetőségekkel kell rendelkeznie:
Megadhatja a felhasználónevet és a jelszót.
Az SAP-összekötő támogatja az SAP Secure Network Communications (SNC) használatával történő hitelesítést.
Az SNC-t használhatja az SAP NetWeaver egyszeri bejelentkezéshez (SSO) vagy külső termékek biztonsági képességeihez. Ha az SNC használata mellett dönt, tekintse át az SNC előfeltételeit és az ISE-összekötő SNC-előfeltételeit.
Összekötők műszaki referenciája
Az SAP-összekötő különböző verziókkal rendelkezik a logikai alkalmazás típusa és a gazdagépkörnyezet alapján.
Logikai alkalmazás | Környezet | Összekötő verziója |
---|---|---|
Fogyasztás | Több-bérlős Azure Logic Apps | Felügyelt összekötő, amely a tervezőben az Enterprise felirat alatt jelenik meg. További információkért tekintse át a következő dokumentációt: - SAP által felügyelt összekötő referenciája - Felügyelt összekötők az Azure Logic Appsben |
Fogyasztás | Integrációs szolgáltatási környezet (ISE) | Felügyelt összekötő, amely a tervezőben az Enterprise címke alatt jelenik meg, és az ISE natív verziója, amely az ISE címkével jelenik meg a tervezőben, és más üzenetkorlátokkal rendelkezik, mint a felügyelt összekötő. Megjegyzés: Ne a felügyelt verziót, hanem az ISE natív verzióját használja. További információkért tekintse át a következő dokumentációt: - SAP által felügyelt összekötő referenciája - ISE-üzenetkorlátok - Felügyelt összekötők az Azure Logic Appsben |
Standard | Egybérlős Azure Logic Apps és App Service Environment v3 (csak Windows-csomagok esetén) | Felügyelt összekötő, amely az összekötő katalógusában a Megosztott futtatókörnyezet>alatt jelenik meg, valamint a beépített összekötő, amely az alkalmazáson belüli futtatókörnyezetben> található összekötőgyűjteményben jelenik meg, és szolgáltatóalapú. A beépített összekötő közvetlenül elérheti az Azure-beli virtuális hálózatokat egy kapcsolati sztring helyszíni adatátjáró nélkül. További információkért tekintse át a következő dokumentációt: - SAP által felügyelt összekötő referenciája - AZ SAP beépített összekötőinek referenciája - Felügyelt összekötők az Azure Logic Appsben - Beépített összekötők az Azure Logic Appsben |
Összekötők közötti különbségek
Az SAP beépített összekötője jelentősen eltér az SAP által felügyelt összekötőtől és az SAP ISE-verziójú összekötőtől a következő módokon:
A helyszíni kapcsolatokhoz nincs szükség a helyszíni adatátjáróra.
Ehelyett az SAP beépített összekötője közvetlenül kommunikál az SAP-kiszolgálóval az integrált virtuális hálózaton, így elkerülhetők a hálózati átjárók ugrási, késési és hibapontjai. Győződjön meg arról, hogy a logikai alkalmazás munkafolyamat-alkalmazásával feltölti vagy üzembe helyezi a nem terjeszthető SAP-ügyfélkódtárakat. További információkért tekintse meg az útmutató előfeltételeit .
A legfeljebb 100 MB-os hasznos adatméretek támogatottak, így nem kell blob URI-t használnia a nagy méretű kérelmekhez.
Konkrét műveletek érhetők el a BAPI hívásához, az RFC hívásához és az IDoc elküldéséhez. Ezek a dedikált műveletek jobb élményt nyújtanak az állapotalapú BAPI-khoz, az RFC-tranzakciókhoz és az IDoc-deduplikációhoz, és nem használják a régebbi SOAP Windows Communication Foundation (WCF) üzenetkezelési modellt.
A BAPI hívása művelet legfeljebb két választ tartalmaz a visszaadott JSON-val, a bapi nevű XML-válaszsal, valamint a BAPI véglegesítési vagy BAPI-visszaállítási válaszával, valamint ha automatikus véglegesítést használ. Ez a képesség az SAP által felügyelt összekötővel kapcsolatos problémát oldja meg, ahol az automatikus véglegesítés eredménye csendes, és csak naplókon keresztül figyelhető meg.
Hosszabb időtúllépés 5 perc alatt a felügyelt összekötőhöz és az ISE-verziójú összekötőhöz képest.
Az SAP beépített összekötője nem használja a megosztott vagy a globális összekötő infrastruktúráját, ami azt jelenti, hogy az időtúllépések 5 percnél hosszabbak az SAP által felügyelt összekötőhöz (két perc) és az SAP ISE-verziójú összekötőhöz képest (négy perc). A hosszan futó kérések anélkül működnek, hogy végre kellene hajtania a webhookalapú kérések műveleti mintáját.
Alapértelmezés szerint az SAP beépített összekötőműveletei állapot nélküliek. Ezekhez a műveletekhez azonban engedélyezheti az állapotalapú módot (affinitást).
Állapotalapú módban az SAP beépített összekötője támogatja a magas rendelkezésre állást és a horizontális horizontális felskálázási konfigurációkat. Ehhez képest az SAP által felügyelt összekötő korlátozásokkal rendelkezik a helyszíni adatátjáróra vonatkozóan, amelyek az eseményindítók egyetlen példányára, a fürtökre pedig csak feladatátvételi módban vannak korlátozva a műveletekhez. További információ: SAP managed connector – Ismert problémák és korlátozások.
A standard logikai alkalmazás-munkafolyamatok az SAP NCo 3.1 ügyfélkódtárat igénylik és használják, nem pedig az SAP NCo 3.0-s verzióját. További információkat az Előfeltételek között talál.
A szabványos logikai alkalmazás-munkafolyamatok alkalmazásbeállításokat biztosítanak, ahol megadhatja a személyes biztonsági környezetet (PSE) és a PSE-jelszót.
Ez a módosítás megakadályozza, hogy több PSE-fájlt töltsön fel, amelyek nem támogatottak, és SAP-kapcsolati hibákat eredményeznek. A Használat logikai alkalmazás munkafolyamataiban az SAP felügyelt összekötője lehetővé teszi, hogy kapcsolati paraméterekkel adja meg ezeket az értékeket, amelyek lehetővé tették több PSE-fájl feltöltését, és nem támogatottak, ami SAP-kapcsolati hibákat okoz.
Séma létrehozása művelet
Több művelettípus közül választhat, például a BAPI, az IDoc, az RFC és a tRFC közül, szemben az SAP által felügyelt összekötő ugyanazon műveletével, amely a SapActionUris paramétert és a fájlrendszerválasztó felületet használja.
A paraméternevet közvetlenül egyéni értékként is megadhatja. Megadhatja például az RFC-név paramétert a Hívás RFC műveletből. Ehhez képest az SAP által felügyelt összekötőben egy összetett action URI paraméternevet kellett megadnia.
A terv szerint ez a művelet nem támogatja az RFC-k, BAPI-k vagy IDocs-sémák több sémájának létrehozását egyetlen művelet végrehajtása során, amelyet az SAP által felügyelt összekötő támogat. Ez a képességváltozás megakadályozza, hogy nagy mennyiségű tartalmat küldjön egyetlen hívásban.
Összekötő paraméterei
Az egyszerű sztring- és számbemenetek mellett az SAP-összekötő a következő táblaparamétereket (Type=ITAB
bemeneteket) fogadja el:
- A régebbi SAP-kiadások táblairány-paraméterei, mind a bemenet, mind a kimenet.
- Paraméterváltozások, amelyek az újabb SAP-kiadások táblairány-paramétereit váltják fel.
- Hierarchikus táblaparaméterek.
Ismert problémák és korlátozások
SAP által felügyelt összekötő
Az SAP-összekötő jelenleg nem támogatja az SAP-útválasztó-sztringeket. A helyszíni adatátjárónak olyan virtuális hálózaton kell lennie, ahol az átjáró közvetlenül elérheti a csatlakoztatni kívánt SAP-rendszert.
Az SAP-eseményindító általában nem támogatja az adatátjáró-fürtöket. Egyes feladatátvételi esetekben az SAP-rendszerrel kommunikáló adatátjáró csomópont eltérhet az aktív csomóponttól, ami váratlan viselkedést eredményez.
Üzenetküldési forgatókönyvek esetén az adatátjáró-fürtök feladatátvételi módban támogatottak.
Az állapotalapú SAP-műveletek nem támogatják az adatátjáró-fürtöket terheléselosztási módban. Az állapotalapú kommunikációnak ugyanazon az adatátjáró-fürtcsomóponton kell maradnia. Használja az adatátjárót nem fürt módban, vagy olyan fürtben, amely csak feladatátvételre van beállítva. Ezek a műveletek például a következők:
- Minden olyan művelet, amely megadja a munkamenet-azonosító értékét
- [BAPI] Tranzakció véglegesítése
- [BAPI] Visszaállítási tranzakció
- [BAPI – RFC] Állapotalapú munkamenet bezárása
- [BAPI – RFC] Állapotalapú munkamenet létrehozása
Az SAP-ban a [BAPI] Hívás metódus nevű műveletben az automatikus véglegesítési funkció nem fogja véglegesíteni a BAPI-módosításokat, ha a művelet által visszaadott CallBapiResponse objektumban van legalább egy figyelmeztetés. A BAPI-módosítások figyelmeztetések ellenére történő véglegesítéséhez kövesse az alábbi lépéseket:
- Hozzon létre egy munkamenetet explicit módon a [BAPI - RFC] Nevű művelettel. Állapotalapú munkamenet létrehozása.
- A [BAPI] Hívási metódus az SAP-ban nevű műveletben tiltsa le az automatikus véglegesítési funkciót.
- Ehelyett hívja meg a [BAPI] Véglegesítési tranzakció nevű műveletet.
IP-alapú kapcsolatok az SAP Message Serverrel (terheléselosztásos konfiguráció)
Ha olyan IP-címet ad meg, amely egy SAP-üzenetkiszolgálóhoz( például terheléselosztóhoz) csatlakozik, a kapcsolat továbbra is meghiúsulhat az "ismeretlen gazdagépnév SAPDBSERVER01.example.com" hibaüzenettel. Az üzenetkiszolgáló utasítja az SAP-összekötőt, hogy használjon állomásnevet a háttérrendszerbeli SAP Application Serverhez vagy a terheléselosztó mögötti kiszolgálóhoz. Ha a DNS nem tudja feloldani a gazdagép nevét, a kapcsolat meghiúsul.
Ebben a problémában a következő áthidaló megoldások vagy megoldások léteznek:
Győződjön meg arról, hogy a kapcsolatot létesítő ügyfél , például az SAP-összekötő helyszíni adatátjárójával rendelkező számítógép vagy az ISE-alapú SAP-összekötő ISE-összekötő gazdagépe képes feloldani az üzenetkiszolgáló által visszaadott gazdagépneveket.
Az RZ11 nevű tranzakcióban módosítsa vagy adja hozzá az ms/lg_with_hostname=0 nevű SAP-beállítást.
Problémakörnyezet vagy háttér
Az SAP a .NET-összekötőt (NCo) a 3.1-es verzióra frissítette, ami megváltoztatta, hogy az összekötő hogyan kér kapcsolatokat a háttérkiszolgálókhoz üzenetkiszolgálókról. Az összekötő most egy új API-t használ az üzenetkiszolgáló által az alkalmazáskiszolgáló megoldásához, hacsak nem kényszeríti az összekötőt az előző API használatára az ms/lg_with_hostname=0" nevű beállításon keresztül. További információ: SAP KB cikk 3305039 – A bejelentkezési csoport bejelentkezése során nem figyelembe vett SMLG IP-cím beállítás.
Előfeltételek
Azure-fiók és -előfizetés. Ha még nem rendelkezik Azure-előfizetéssel, regisztráljon egy ingyenes Azure-fiókra.
Az AZURE Logic Appsből elérni kívánt SAP-alkalmazáskiszolgáló vagy SAP-üzenetkiszolgáló .
Állítsa be az SAP-kiszolgálót és a felhasználói fiókot az RFC használatának engedélyezéséhez.
További információkért, amelyek tartalmazzák a támogatott felhasználói fióktípusokat és az egyes művelettípusokhoz (RFC, BAPI, IDoc) szükséges minimális engedélyezést, tekintse át a következő SAP-megjegyzést: 460089 – Minimális engedélyezési profilok külső RFC-programokhoz.
Az SAP-felhasználói fióknak hozzá kell férnie a
RFC_METADATA
függvénycsoporthoz és a megfelelő függvénymodulokhoz a következő műveletekhez:Üzemeltetés Hozzáférés a függvénymodulokhoz RFC-műveletek RFC_GROUP_SEARCH
ésDD_LANGU_TO_ISOLA
BAPI-műveletek BAPI_TRANSACTION_COMMIT
,BAPI_TRANSACTION_ROLLBACK
,RPY_BOR_TREE_INIT
,SWO_QUERY_METHODS
ésSWO_QUERY_API_METHODS
IDoc-műveletek IDOCTYPES_LIST_WITH_MESSAGES
,IDOCTYPES_FOR_MESTYPE_READ
,INBOUND_IDOCS_FOR_TID
,OUTBOUND_IDOCS_FOR_TID
,GET_STATUS_FROM_IDOCNR
ésIDOC_RECORD_READ
SAP-táblaművelet olvasása Vagy vagy RFC BBP_RFC_READ_TABLE
RFC_READ_TABLE
Szigorú minimális hozzáférés biztosítása az SAP-kiszolgálóhoz az SAP-kapcsolathoz RFC_METADATA_GET
ésRFC_METADATA_GET_TIMESTAMP
A logikai alkalmazás munkafolyamata, ahonnan hozzá szeretne férni az SAP-kiszolgálóhoz.
A több-bérlős Azure Logic Apps használat munkafolyamatát a Több-bérlős előfeltételek című témakörben tekintheti meg.
Az egybérlős Azure Logic Apps standard munkafolyamataiért tekintse meg az egybérlős előfeltételeket.
A Prémium szintű integrációs szolgáltatási környezetben (ISE) használt munkafolyamatokról lásd az ISE előfeltételeit.
Feljegyzés
Prémium szintű ISE használata esetén az ISE natív SAP-összekötőt használja, nem az SAP által felügyelt összekötőt, amely nem natív módon fut az ISE-ben. További információkért tekintse át az ISE előfeltételeit.
Alapértelmezés szerint az SAP beépített összekötőműveletei állapot nélküliek. Ha állapotalapú módban szeretné futtatni ezeket a műveleteket, olvassa el az Állapotalapú mód engedélyezése állapot nélküli beépített összekötőkhöz című témakört.
Ha az SAP által felügyelt vagy a Beépített összekötő eseményindítót szeretné használni az üzenet fogadásakor, végezze el a következő feladatokat:
Állítsa be az SAP-átjáró biztonsági engedélyeit vagy a hozzáférés-vezérlési listát (ACL). Az Átjárófigyelő (T-Code SMGW) párbeszédpanelen, amely megjeleníti a secinfo és a reginfo fájlokat, nyissa meg a Goto menüt, és válassza az Expert Functions>külső biztonsági>karbantartása ACL-fájlok.
A következő engedélybeállítás szükséges:
P TP=LOGICAPP HOST=<on-premises-gateway-server-IP-address> ACCESS=*
A sor formátuma a következő:
P TP=<trading-partner-identifier-(program-name)-or-*-for-all-partners> HOST=<comma-separated-list-with-external-host-IP-or-network-names-that-can-register-the-program> ACCESS=<*-for-all-permissions-or-a-comma-separated-list-of-permissions>
Ha nem konfigurálja az SAP-átjáró biztonsági engedélyeit, a következő hibaüzenet jelenhet meg:
A tp Microsoft.PowerBI.EnterpriseGateway regisztrációja a gazdagép <nevéből> nem engedélyezett
További információ: SAP Megjegyzés 1850230 – GW: "A tp <programazonosító> regisztrálása nem engedélyezett".
Állítsa be az SAP-átjáró biztonsági naplózását a hozzáférés-vezérlési lista (ACL) problémáinak megkereséséhez. További információkért tekintse át az SAP súgótémakörét az átjárónaplózás beállításához.
Az RFC-kapcsolatok konfigurációja (T-Code SM59) párbeszédpanelen hozzon létre egy TCP/IP-típusú RFC-kapcsolatot. Győződjön meg arról, hogy az aktiválási típus a Regisztrált kiszolgáló programra van állítva. Állítsa be az RFC-kapcsolat kommunikációs típusát a célrendszer értékével Unicode értékre.
Ha ezt az SAP-eseményindítót a FlatFile értékre beállított IDOC Formátum paraméterrel és a Flat File Decode művelettel használja, akkor a
early_terminate_optional_fields
tulajdonságot a sima fájlsémában kell használnia az értéktrue
beállításával.Erre a követelményre azért van szükség, mert az SAP által a tRFC-híváson
IDOC_INBOUND_ASYNCHRONOUS
küldött egyszerű fájlbeli IDoc-adatrekord nincs kitöltve a teljes SDATA-mezőhosszra. Az Azure Logic Apps az SAP-tól kapott kitöltés nélkül biztosítja az egyszerű fájl IDoc-eredeti adatait. Ha ezt az SAP-eseményindítót a Flat File Decode művelettel kombinálja, a művelethez megadott sémának egyeznie kell.
Feljegyzés
A Használat és a Standard munkafolyamatokban az SAP Által felügyelt eseményindító neve Amikor egy üzenet érkezik , ugyanazt az URI-helyet használja a webhook-előfizetés megújításához és leiratkozásához. A megújítási művelet a HTTP
PATCH
metódust használja, a leiratkozási művelet pedig a HTTP-metódustDELETE
. Ez a viselkedés miatt előfordulhat, hogy a megújítási művelet leiratkozási műveletként jelenik meg az eseményindító előzményeiben, de a művelet továbbra is megújítás, mert az eseményindító HTTP-metódusként használjaPATCH
, nemDELETE
.A Standard munkafolyamatokban a When a message is received nevű SAP beépített eseményindító az Azure Functions-eseményindítót használja, és csak az SAP tényleges visszahívásait jeleníti meg.
- Az SAP Beépített összekötő eseményindítójának neve Amikor üzenet érkezik, engedélyeznie kell a virtuális hálózati integrációt és a privát portokat a Service Bus és az SAP beépített összekötőinek engedélyezéséről szóló cikk alapján a Standard állapotalapú Logic Appshez. A munkafolyamatot a Visual Studio Code-ban is futtathatja az eseményindító helyi indításához. A Visual Studio Code beállítási követelményeivel és további információval kapcsolatban lásd : Standard logikaialkalmazás-munkafolyamat létrehozása egybérlős Azure Logic Appsben a Visual Studio Code használatával. A következő környezeti változókat is be kell állítania azon a számítógépen, amelyen a Visual Studio Code-ot telepíti:
- WEBSITE_PRIVATE_IP: Állítsa ezt a környezeti változó értékét 127.0.0.1 értékre localhost-címként.
- WEBSITE_PRIVATE_PORTS: Állítsa be ezt a környezeti változó értékét két ingyenes és használható portra a helyi számítógépen, és az értékeket vesszővel (8080 8088) elválasztva.
Az SAP-kiszolgálónak küldendő üzenettartalom, például egy IDoc-mintafájl. Ennek a tartalomnak XML formátumban kell lennie, és tartalmaznia kell a használni kívánt SAP-művelet névterét. Az IDocs-fájlokat egyszerű fájlsémával is elküldheti , ha egy XML-borítékba csomagolja őket.
Hálózati kapcsolat előfeltételei
Az SAP-rendszer hálózati kapcsolatot igényel az SAP .NET Connector (NCo) könyvtár gazdagépétől:
A több-bérlős Azure Logic Apps használatalapú logikai alkalmazás-munkafolyamatai esetében a helyszíni adatátjáró üzemelteti az SAP .NET Connector (NCo) kódtárat. Helyszíni adatátjáró-fürt használata esetén a fürt összes csomópontja hálózati kapcsolatot igényel az SAP-rendszerhez.
Az egybérlős Azure Logic Apps standard logikaialkalmazás-munkafolyamatai esetében a logikai alkalmazás erőforrása az SAP .NET Connector (NCo) kódtárat üzemelteti. A logikai alkalmazás erőforrásának tehát engedélyeznie kell a virtuális hálózati integrációt, és a virtuális hálózatnak hálózati kapcsolattal kell rendelkeznie az SAP-rendszerhez.
Az ISE használatalapú logikai alkalmazás munkafolyamatai esetében az ISE virtuális hálózat üzemelteti az SAP .NET-összekötő (NCo) kódtárat.
Az SAP rendszer által igényelt hálózati kapcsolat a következő kiszolgálókat és szolgáltatásokat tartalmazza:
SAP Application Server, Dispatcher szolgáltatás (minden bejelentkezési típushoz)
Az SAP-rendszer több SAP-alkalmazáskiszolgálót is tartalmazhat. Az SAP .NET Connector (NCo) kódtár gazdagépének hozzáférésre van szüksége az egyes kiszolgálókhoz és szolgáltatásaikhoz.
SAP Message Server, Üzenetszolgáltatás (bejelentkezési típuscsoporthoz)
Az üzenetkiszolgáló és a szolgáltatás átirányít egy vagy több Alkalmazáskiszolgáló diszpécserszolgáltatására. Az SAP .NET Connector (NCo) kódtár gazdagépének hozzáférésre van szüksége az egyes kiszolgálókhoz és szolgáltatásaikhoz.
SAP Gateway Server, Átjáró szolgáltatás
SAP Gateway Server, Átjáró által védett szolgáltatás
Az SAP rendszer által igényelt hálózati kapcsolat magában foglalja ezt a kiszolgálót és szolgáltatást is, amely a Secure Network Communications (SNC) szolgáltatással használható.
A kérések átirányítása az Application Serverről, a Dispatcher szolgáltatásból az átjárókiszolgálóra, az átjárószolgáltatás automatikusan az SAP .NET-összekötő (NCo) könyvtárában történik. Ez az átirányítás akkor is megtörténik, ha csak az Application Server, a Dispatcher szolgáltatás információi találhatók a kapcsolati paraméterekben.
Ha terheléselosztót használ az SAP-rendszer előtt, az összes szolgáltatást át kell irányítania a megfelelő kiszolgálókra. Az SAP-szolgáltatásokkal és -portokkal kapcsolatos további információkért tekintse át az ÖSSZES SAP-termék TCP/IP-portját.
Feljegyzés
Győződjön meg arról, hogy engedélyezte a hálózati kapcsolatot az SAP .NET Connector (NCo) könyvtár gazdagépétől, és hogy a szükséges portok meg vannak nyitva tűzfalakon és hálózati biztonsági csoportokon. Ellenkező esetben olyan hibákat kap, mint például a partner nem érhető el az NI (hálózati adapter) összetevőből, és hibaüzenetet kap, például WSAECONNREFUSED: A kapcsolat elutasítva.
SAP NCo-ügyfélkódtár előfeltételei
Az SAP-összekötő használatához telepítenie kell az SAP Connector NCo ügyfélkódtárat a Microsoft .NET 3.1-hez. Az alábbi lista az SAP NCo ügyfélkódtár előfeltételeit ismerteti azon munkafolyamat alapján, amelyben az SAP-összekötőt használja:
Verzió:
A helyszíni adatátjárót használó Consumption logikai alkalmazás munkafolyamatai esetében győződjön meg arról, hogy a legújabb 64 bites verziót, az SAP Connectort telepíti a Windows 64bites (x64) Microsoft .NET 3.1.3.0-hoz. Az adatátjáró csak 64 bites rendszereken fut. A nem támogatott 32 bites verzió telepítése "hibás kép" hibát eredményez.
Standard logikaialkalmazás-munkafolyamatok esetén a Microsoft .NET 3.1.3.0-s verziójához készült SAP Connector (NCo 3.1) legújabb, 64 bites vagy 32 bites verzióját telepítheti a .NET-keretrendszer 4.6.2-es verziójával. Győződjön meg arról, hogy a Standard logikai alkalmazás erőforrás konfigurációjának megfelelő verziót telepíti. A logikai alkalmazás által használt verzió ellenőrzéséhez kövesse az alábbi lépéseket:
Nyissa meg a Standard logikai alkalmazás erőforrását az Azure Portalon.
A logikai alkalmazás erőforrásmenüjének Beállítások területén válassza a Konfiguráció lehetőséget.
A Konfiguráció lapon válassza az Általános beállítások lapot. A Platformbeállítások csoportban ellenőrizze, hogy a platform értéke 64 bites vagy 32 bites-e.
Mindenképpen telepítse a Microsoft .NET 3.1.3.0-s verziójához készült SAP Connector (NCo 3.1) verzióját a platformkonfigurációnak megfelelő .NET-keretrendszer 4.6.2-es verziójával.
Az ügyfélkódtár alapértelmezett telepítési mappájából másolja a szerelvényfájlokat (.dll) egy másik helyre az alábbi forgatókönyv alapján. Vagy ha csak az SAP által felügyelt összekötőt használja, az SAP NCo-ügyfélkódtár telepítésekor válassza a globális szerelvénygyorsítótár-regisztrációt. Az ISE zip-archívum és az SAP beépített összekötője jelenleg nem támogatja a GAC-regisztrációt.
A több-bérlős Azure Logic Appsben futó és a helyszíni adatátjárót használó használatalapú munkafolyamatok esetében másolja a következő szerelvényfájlokat (.dll) a helyszíni adatátjáró telepítési mappájába, például: C:\Program Files\Helyszíni adatátjáró. Az SAP NCo 3.0 ügyfélkódtár a következő szerelvényeket tartalmazza:
- libicudecnumber.dll
- rscp4n.dll
- sapnco.dll
- sapnco_utils.dll
Győződjön meg arról, hogy a szerelvényfájlokat az adatátjáró telepítési mappájába másolja. Ellenkező esetben előfordulhat, hogy az SAP-kapcsolat meghiúsul a hibaüzenettel. Ellenőrizze a fiók adatait és/vagy engedélyeit, és próbálkozzon újra. A .NET szerelvénykötési naplómegjelenítőjével elháríthatja a további problémákat. Ezzel az eszközzel ellenőrizheti, hogy a szerelvényfájlok a megfelelő helyen vannak-e.
Standard munkafolyamatok esetén másolja a következő szerelvényfájlokat (.dll) egy olyan helyre, ahonnan feltöltheti őket a logikai alkalmazás erőforrásához vagy projektjéhez, ahol a munkafolyamatot készíti, akár az Azure Portalon, akár helyileg a Visual Studio Code-ban. Az SAP NCo 3.1 ügyfélkódtár a következő szerelvényeket tartalmazza:
- rscp4n.dll
- sapnco.dll
- sapnco_utils.dll
Az ISE-ben használt munkafolyamatok esetében kövesse inkább az ISE előfeltételeit .
Az SAP NCo-ügyfélkódtár, a .NET-keretrendszer, a .NET-futtatókörnyezet és az adatátjáró között a következő kapcsolatok állnak fenn:
A Microsoft SAP Adapter és az átjáró-gazdagép szolgáltatás egyaránt a .NET-keretrendszer 4.7.2-t használja.
A .NET-keretrendszer 4.0-s SAP NCo a .NET-futtatókörnyezetet 4.0-4.8-ra használó folyamatokkal működik.
A .NET-keretrendszer 2.0-s SAP NCo a .NET-futtatókörnyezetet 2.0-3.5-ös verziót használó folyamatokkal működik, de már nem működik a legújabb átjáróval.
SNC-előfeltételek
A helyszíni adatátjárót használó több-bérlős Azure Logic Apps használati munkafolyamataihoz és opcionálisan az SNC-hez az alábbi beállításokat is konfigurálnia kell.
Győződjön meg arról, hogy az SNC-kódtár verziója és függőségei kompatibilisek az SAP-környezettel. A tár kompatibilitási problémáinak elhárításához használhatja a helyszíni adatátjárót és az adatátjáró naplóit.
Győződjön meg arról, hogy az SAP NCo 3.0 ügyféltárban található alábbi szerelvényfájlokat (.dll) átmásolta a helyszíni adatátjáró telepítési mappájába( például C:\Program Files\Helyszíni adatátjáró).
- libicudecnumber.dll
- rscp4n.dll
- sapnco.dll
- sapnco_utils.dll
Az SAPGENPSE segédprogramhoz kifejezetten sapgenpse.exe kell használnia.
Ha személyes biztonsági környezetet (PSE) ad meg a kapcsolathoz, akkor nem kell másolnia és beállítania a PSE-t és a SECUDIR-t a helyszíni adatátjáróhoz.
Ha külső biztonsági termék, például sapseculib, Kerberos vagy NTLM használatával engedélyezi az SNC-t, győződjön meg arról, hogy az SNC-kódtár ugyanazon a számítógépen található, mint az adatátjáró telepítése. Ebben a feladatban másolja az SNC-kódtár bináris fájljait ugyanabba a mappába, mint a helyi számítógépen az adatátjáró telepítése, például C:\Program Files\Helyszíni adatátjáró.
Feljegyzés
Az adatátjáró telepítésével és az SNC-kódtárral rendelkező számítógépen ne állítsa be az SNC_LIB és SNC_LIB_64 környezeti változóit. Ellenkező esetben ezek a változók elsőbbséget élveznek az összekötőn keresztül átadott SNC-kódtár értékével szemben.
Ha egyszeri bejelentkezéssel (SSO) szeretné használni az SNC-t, győződjön meg arról, hogy az adatátjáró szolgáltatás sap-felhasználóhoz leképezett felhasználóként fut. Az átjárószolgáltatás-fiók alapértelmezett fiókjának módosításához válassza a Fiók módosítása lehetőséget, és adja meg a felhasználói hitelesítő adatokat.
Az SNC engedélyezésével kapcsolatos további információkért tekintse át a Biztonságos hálózati kommunikáció engedélyezése (SNC) című témakört.
Az Azure Logic Apps-környezet előfeltételei
A több-bérlős Azure Logic Apps használat munkafolyamata esetén az SAP által felügyelt összekötő egy helyszíni adatátjárón keresztül integrálható az SAP-rendszerekkel. Például olyan esetekben, amikor a munkafolyamat üzenetet küld az SAP-rendszernek, az adatátjáró RFC-ügyfélként működik, és továbbítja a munkafolyamattól kapott kéréseket az SAP-nak. Hasonlóképpen, olyan esetekben, amikor a munkafolyamat üzenetet kap az SAP-tól, az adatátjáró RFC-kiszolgálóként működik, amely fogadja az SAP-tól érkező kéréseket, és továbbítja őket a munkafolyamatnak.
Olyan gazdagépen vagy virtuális gépen, amely ugyanabban a virtuális hálózaton található, mint az SAP-rendszer, amelyhez csatlakozik, töltse le és telepítse a helyszíni adatátjárót.
Az adatátjáró segítségével biztonságosan férhet hozzá a helyszíni adatokhoz és erőforrásokhoz. Győződjön meg arról, hogy az átjáró támogatott verzióját használja. Ha problémát tapasztal az átjáróval kapcsolatban, próbálkozzon a legújabb verzióra való frissítéssel, amely tartalmazhat frissítéseket a probléma megoldásához.
Az Azure Portalon hozzon létre egy Azure Gateway-erőforrást a helyszíni adatátjáró telepítéséhez.
A helyszíni adatátjáró telepítésével megegyező helyi számítógépen töltse le és telepítse a legújabb SAP NCo ügyfélkódtárat.
A helyszíni adatátjáró telepítésével rendelkező gazdaszámítógép esetében konfigurálja a hálózati gazdagépneveket és a szolgáltatásnevek felbontását.
Az Azure Logic Appsből származó kapcsolatok gazdagépneveinek vagy szolgáltatásneveinek használatához be kell állítania az egyes SAP-alkalmazások, üzenetek és átjárókiszolgálók névfeloldásának beállítását a szolgáltatásaikkal együtt:
A %windir%\System32\drivers\etc\hosts fájlban vagy a gazdaszámítógép számára a helyszíni adatátjáró telepítéséhez elérhető DNS-kiszolgálón állítsa be a hálózati gazdagép nevének felbontását.
A %windir%\System32\drivers\etc\services fájlban állítsa be a szolgáltatásnév felbontását.
Ha nem kíván hálózati gazdagépneveket vagy szolgáltatásneveket használni a kapcsolathoz, használhat gazdagép IP-címeket és szolgáltatásport-számokat.
Ha nem rendelkezik DNS-bejegyzéssel az SAP-rendszerhez, az alábbi példa egy mintabejegyzést mutat be a gazdagépfájlhoz:
10.0.1.9 sapserver # SAP single-instance system host IP by simple computer name 10.0.1.9 sapserver.contoso.com # SAP single-instance system host IP by fully qualified DNS name
Az alábbi listában a szolgáltatásfájlok bejegyzéseinek mintakészlete látható:
sapdp00 3200/tcp # SAP system instance 00 dialog (application) service port sapgw00 3300/tcp # SAP system instance 00 gateway service port sapmsDV6 3601/tcp # SAP system ID DV6 message service port
Biztonságos hálózati kommunikáció (SNC) engedélyezése
A több-bérlős Azure Logic Appsben futó használatalapú munkafolyamatok esetében engedélyezheti az SNC-t a hitelesítéshez, amely csak az adatátjáró használatakor érvényes. Mielőtt hozzákezd, győződjön meg arról, hogy megfelelt az összes szükséges előfeltételnek és SNC-előfeltételnek.
Az Azure Portalon nyissa meg a Consumption logikai alkalmazást és a munkafolyamatot a tervezőben.
SAP által felügyelt összekötő-művelet hozzáadása vagy szerkesztése.
Az SAP kapcsolatinformációs mezőjében adja meg a következő szükséges információkat. A kiválasztott hitelesítési típus módosítja az elérhető beállításokat.
Feljegyzés
Az SAP-felhasználónév és az SAP-jelszó mezők megadása nem kötelező. Ha nem ad meg felhasználónevet és jelszót, az összekötő egy későbbi lépésben megadott ügyféltanúsítványt használja a hitelesítéshez.
Az SNC engedélyezéséhez az SAP kapcsolatinformációs mezőjében adja meg ehelyett a következő szükséges információkat:
Paraméter Leírás Az SNC használata Jelölje be a jelölőnégyzetet. SNC-kódtár Adja meg az alábbi értékek egyikét:
- Az SNC-kódtár neve, például sapsnc.dll
- Az NCo telepítési helyének relatív elérési útja, például :security\sapsnc.dll
- Az NCo telepítési helyének abszolút elérési útja, például c:\security\sapsnc.dllSNC SSO Válassza ki az SNC-identitást használó bejelentkezést, vagy jelentkezzen be az RFC-szinten megadott felhasználónévvel/jelszóval.
Az SNC-identitás általában a hívó hitelesítésére szolgál. Dönthet úgy, hogy felhasználónévvel és jelszóval hitelesít, de ez a paraméterérték továbbra is titkosítva van.SNC Saját név A legtöbb esetben kihagyhatja ezt az értéket. A telepített SNC-megoldás általában ismeri a saját SNC-nevét. Abban az esetben, ha a megoldás több identitást támogat, előfordulhat, hogy meg kell adnia az adott célhoz vagy kiszolgálóhoz használandó identitást. SNC-partner neve Adja meg a háttérbeli SNC nevét, például p:CN=DV3, OU=LA, O=MS, C=US. Az SNC védelmi minősége Válassza ki az adott célhellyel vagy kiszolgálóval folytatott SNC-kommunikációhoz használni kívánt szolgáltatásminőséget. Az alapértelmezett értéket a háttérrendszer határozza meg. A maximális értéket az SNC-hez használt biztonsági termék határozza meg. SNC-tanúsítvány Adja meg a tanúsítvány alap64 kódolású nyilvános kulcsát, amellyel azonosíthatja az ügyfelet az SAP-nak.
Megjegyzés: – Ne tartalmazza a PEM élőfejet vagy élőlábat.
- Itt ne adja meg az ügyféltanúsítvány titkos kulcsát. A személyes biztonsági környezetnek (PSE) tartalmaznia kell a tanúsítványhoz tartozó titkos kulcsot, és más privát tanúsítványokat is tartalmazhat. További információkért tekintse át a következő paramétert.PSE Adja meg az SNC Personal Security Environment (PSE) paramétert base64 kódolású bináris fájlként.
- A PSE-nek tartalmaznia kell annak az ügyféltanúsítványnak a titkos kulcsát, amelyben az ujjlenyomat megegyezik az ügyféltanúsítvány nyilvános kulcsával az SNC-tanúsítvány paraméterében.
– Bár a PSE több ügyféltanúsítványt is tartalmazhat, a különböző ügyféltanúsítványok használatához hozzon létre külön munkafolyamatokat.
– Ha egynél több SNC-ügyféltanúsítványt használ a Standard logikai alkalmazás erőforrásához, minden kapcsolathoz ugyanazt a PSE-t kell megadnia. A PSE-nek tartalmaznia kell az ügyféltanúsítványhoz tartozó titkos kulcsot minden egyes kapcsolathoz. Az SNC-tanúsítvány paraméterét úgy kell beállítania, hogy megfeleljen az egyes kapcsolatokhoz tartozó adott magántanúsítványnak.A kapcsolat létrehozásának befejezéséhez válassza a Létrehozás lehetőséget.
Ha a paraméterek helyesek, létrejön a kapcsolat. Ha probléma van a paraméterekkel, a kapcsolatlétrehozási párbeszédpanel hibaüzenetet jelenít meg. A kapcsolatparaméterekkel kapcsolatos problémák elhárításához használhatja a helyszíni adatátjáró telepítését és az átjáró helyi naplóit.
Bináris PSE-fájl konvertálása base64 kódolású formátumba
PowerShell-szkript használata, például:
Param ([Parameter(Mandatory=$true)][string]$psePath, [string]$base64OutputPath) $base64String = [convert]::ToBase64String((Get-Content -path $psePath -Encoding byte)) if ($base64OutputPath -eq $null) { Write-Output $base64String } else { Set-Content -Path $base64OutputPath -Value $base64String Write-Output "Output written to $base64OutputPath" }
Mentse a szkriptet pseConvert.ps1 fájlként, majd hívja meg a szkriptet, például:
.\pseConvert.ps1 -psePath "C:\Temp\SECUDIR\request.pse" -base64OutputPath "connectionInput.txt" Output written to connectionInput.txt
Ha nem adja meg a kimeneti elérési út paraméterét, a szkript konzolra történő kimenete sortöréseket tartalmaz. Távolítsa el a vonaltöréseket a kapcsolat bemeneti paraméteréhez tartozó 64-es alapsztringben.
IDocs-küldés beállítása és tesztelése a munkafolyamatba az SAP-ból
Ezeket a lépéseket csak az SAP-konfiguráció logikai alkalmazás munkafolyamatával való teszteléséhez kövesse. Az éles környezetek további konfigurációt igényelnek.
Az IDocs SAP-ból a munkafolyamatba való küldéséhez a következő minimális konfigurációra van szükség:
- Hozzon létre egy RFC-célhelyet.
- ABAP-kapcsolat létrehozása.
- Hozzon létre egy fogadóportot.
- Hozzon létre egy feladóportot.
- Logikai rendszerpartner létrehozása.
- Partnerprofil létrehozása.
- Üzenetek küldésének tesztelése.
RFC-cél létrehozása
Ez a cél azonosítja a logikai alkalmazás munkafolyamatát fogadóportként.
Az SAP-ban nyissa meg az RFC-kapcsolatok konfigurációs beállításait. Az sm59 tranzakciókód (T-Code) a /n előtaggal használható.
Válassza a TCP/IP-kapcsolatok>létrehozása lehetőséget.
Hozzon létre egy új RFC-célhelyet a következő beállításokkal:
Az RFC-célhelyhez adjon meg egy nevet.
A Technikai beállítások lapon az Aktiválás típusa beállításnál válassza a Regisztrált kiszolgáló program lehetőséget.
A programazonosítóhoz adjon meg egy értéket. Az SAP-kiszolgálón a munkafolyamat eseményindítója ezzel az azonosítóval van regisztrálva.
Fontos
Az SAP-program azonosítója megkülönbözteti a kis- és nagybetűk azonosítóját. Győződjön meg arról, hogy a munkafolyamat és az SAP-kiszolgáló konfigurálásakor következetesen ugyanazt az esetformátumot használja a programazonosítóhoz . Ellenkező esetben a következő hibaüzenetek jelenhetnek meg a tRFC Monitorban (T-Code SM58), amikor IDoc-t próbál elküldeni az SAP-nak:
- A függvény IDOC_INBOUND_ASYNCHRONOUS nem található
- Nem ABAP RFC-ügyfél (partnertípus) nem támogatott
Az SAP további információiért tekintse át a következő megjegyzéseket (bejelentkezés szükséges):
A Unicode lapon a Célrendszerrel való kommunikációhoz válassza a Unicode lehetőséget.
Feljegyzés
Az SAP .NET-ügyfélkódtárak csak Unicode-karakterkódolást támogatnak. Ha a nem ABAP RFC-ügyfél (partnertípus) nem támogatott hibaüzenetet kapja, amikor IDoc-t küld az SAP-ból az Azure Logic Appsbe, ellenőrizze, hogy a célrendszer értékével rendelkező kommunikációs típus Unicode-ra van-e állítva.
Mentse a módosításokat.
Regisztrálja az új programazonosítót az Azure Logic Appsben egy olyan logikaialkalmazás-munkafolyamat létrehozásával, amely az SAP által felügyelt eseményindítóval kezdődik, amelynek neve When a message is received.
Így a munkafolyamat mentésekor az Azure Logic Apps regisztrálja a programazonosítót az SAP Gatewayen.
A munkafolyamat eseményindító-előzményeiben, a helyszíni adatátjáró SAP Adapter naplóiban, ha vannak ilyenek, és az SAP Gateway nyomkövetési naplóiban ellenőrizze a regisztrációs állapotot.
Az SAP Gateway monitorozási mezőjében (T-Code SMGW) a Bejelentkezett ügyfelek területen az új regisztráció regisztrált kiszolgálóként jelenik meg.
A kapcsolat teszteléséhez válassza az új RFC-célhelyen a Kapcsolatteszt lehetőséget.
ABAP-kapcsolat létrehozása
Ez a cél az SAP-rendszert azonosítja feladóportként.
Az SAP-ban nyissa meg az RFC-kapcsolatok konfigurációs beállításait. Az sm59 tranzakciókód (T-Code) a /n előtaggal használható.
Válassza az ABAP-kapcsolatok>létrehozása lehetőséget.
Az RFC-célhelyhez adja meg a teszt SAP-rendszer azonosítóját.
A Technikai beállítások területen hagyja üresen a cél gazdagépet az SAP-rendszerhez való helyi kapcsolat létrehozásához.
Mentse a módosításokat.
A kapcsolat teszteléséhez válassza a Kapcsolatteszt lehetőséget.
Fogadóport létrehozása
Az SAP-ban nyissa meg a portokat az IDOC feldolgozási beállításai között. A we21 tranzakciókód (T-Code) a /n előtaggal használható.
Válassza a Portok>tranzakciós RFC-létrehozása>lehetőséget.
A megnyíló beállítások mezőben válassza ki a saját port nevét. A tesztporthoz adjon meg egy nevet. Mentse a módosításokat.
Az új fogadóport RFC-célhelyének beállításai között adja meg a teszt RFC-célhely azonosítóját.
Mentse a módosításokat.
Feladói port létrehozása
Az SAP-ban nyissa meg a portokat az IDOC feldolgozási beállításai között. A we21 tranzakciókód (T-Code) a /n előtaggal használható.
Válassza a Portok>tranzakciós RFC-létrehozása>lehetőséget.
A megnyíló beállítások mezőben válassza ki a saját port nevét.
A tesztporthoz adjon meg egy SAP-val kezdődő nevet. Mentse a módosításokat.
Minden feladóport nevének sap betűvel kell kezdődnie, például SAPTEST.>
Az új feladói port beállításai között adja meg az ABAP-kapcsolat azonosítóját az RFC-célhelyhez.
Mentse a módosításokat.
Logikai rendszerpartner létrehozása
Az SAP-ban nyissa meg a Change View "Logikai rendszerek": Áttekintési beállításokat. Használhatja a bd54 tranzakciókódot (T-Code).
Fogadja el a következő megjelenő figyelmeztető üzenetet: Figyelem: A tábla ügyfélközi
A meglévő logikai rendszereket megjelenítő lista felett válassza az Új bejegyzések lehetőséget.
Az új logikai rendszerhez adjon meg egy Log.System-azonosítót és egy rövid névleírást . Mentse a módosításokat.
Amikor megjelenik a Workbench-kérés , hozzon létre egy új kérést egy leírás megadásával, vagy ha már létrehozott egy kérést, hagyja ki ezt a lépést.
A workbench-kérelem létrehozása után csatolja a kérést a táblafrissítési kérelemhez. A tábla frissítésének ellenőrzéséhez mentse a módosításokat.
Partnerprofilok létrehozása
Éles környezetekhez két partnerprofilt kell létrehoznia. Az első profil a feladó, amely a szervezet és az SAP rendszer. A második profil a fogadóhoz tartozik, amely a logikai alkalmazás erőforrása és munkafolyamata.
Az SAP-ban nyissa meg a partnerprofilok beállításait. A we20-tranzakciókód (T-Code) a /n előtaggal használható.
A Partnerprofilok csoportban válassza az LS>Create partnertípust.
Hozzon létre egy új partnerprofilt a következő beállításokkal:
Beállítás Leírás Partnerszám Adja meg a logikai rendszerpartner azonosítóját. Partn. Típus Írja be az LS értéket. Ügynök Adja meg annak az SAP-felhasználói fióknak az azonosítóját, amelyet az Azure Logic Apps vagy más nem SAP-rendszerek programazonosítóinak regisztrálásakor használ. Mentse a módosításokat.
Ha még nem hozta létre a logikairendszer-partnert, a hibaüzenet jelenik meg, adjon meg egy érvényes partnerszámot.
A partnerprofil beállításai között, a Kimenő parmtrs. területen válassza a Kimenő paraméter létrehozása lehetőséget.
Hozzon létre egy új kimenő paramétert a következő beállításokkal:
Adja meg az üzenettípust, például a CREMAS-t.
Adja meg a fogadóport azonosítóját.
Adja meg a csomaghoz tartozó IDoc-méretet . Méret. Vagy ha egyenként szeretne IDocsot küldeni az SAP-ból, válassza a Pass IDoc Immediately (Azonnali IDoc) lehetőséget.
Mentse a módosításokat.
Üzenetek küldésének tesztelése
Az SAP-ban nyissa meg az IDoc-feldolgozási beállítások tesztelési eszközét. A we19-tranzakciókód (T-Code) a /n előtaggal használható.
A Tesztelni kívánt sablon területen válassza a Via message type (Üzenet típusa) lehetőséget. Adja meg az üzenet típusát, például a CREMAS-t. Válassza a Létrehozás lehetőséget.
Erősítse meg a Melyik IDoc típust? üzenetet a Folytatás gombra kattintva.
Válassza ki az EDIDC csomópontot. Adja meg a fogadó és a feladó portjának megfelelő értékeket. Válassza a Folytatás lehetőséget.
Válassza a Standard Kimenő feldolgozás lehetőséget.
A kimenő IDoc-feldolgozás elindításához válassza a Folytatás lehetőséget.
Amikor az eszköz befejezi a feldolgozást, megjelenik az SAP rendszernek vagy külső programüzenetnek küldött IDoc.
A feldolgozási hibák ellenőrzéséhez használja az sm58 tranzakciókódot (T-Code) az /n előtaggal.
Munkafolyamatok létrehozása gyakori SAP-forgatókönyvekhez
Útmutató a gyakori SAP-integrációs számítási feladatok munkafolyamatainak létrehozásához:
- Üzenet fogadása az SAP-tól
- IDoc-csomagok fogadása az SAP-ból
- IDocs küldése az SAP-nak
- Sémák létrehozása összetevőkhöz az SAP-ban
Munkafolyamatok létrehozása speciális SAP-forgatókönyvekhez
- Nyelvi fejlécek módosítása az ADATOK SAP-ba való küldéséhez
- Erősítse meg a tranzakciót külön, és kerülje a duplikált IDocs-műveleteket
Kiterjesztett hibanaplók keresése (csak felügyelt összekötő esetén)
Ha az SAP által felügyelt összekötőt használja, az SAP Adapter kiterjesztett naplóinak ellenőrzésével teljes hibaüzeneteket találhat. Az SAP-összekötőhöz kiterjesztett naplófájlt is engedélyezhet.
A 2020. áprilisi és korábbi helyszíni adatátjáró-kiadások esetében a naplók alapértelmezés szerint le vannak tiltva.
A 2020. júniusi és újabb verziójú helyszíni adatátjárók esetében engedélyezheti az átjárónaplókat az alkalmazásbeállításokban.
Az alapértelmezett naplózási szint a Figyelmeztetés.
Ha engedélyezi a további naplózást a helyszíni adatátjáró alkalmazás Diagnosztikai beállításai között, a naplózási szint a Informational értékre nő.
Ha a naplózási szintet részletesre szeretné növelni, frissítse a konfigurációs fájl következő beállítását. A konfigurációs fájl általában a következő helyen
C:\Program Files\On-premises data gateway\Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config
található: .<setting name="SapTraceLevel" serializeAs="String"> <value>Verbose</value> </setting>
Kiterjesztett SAP-naplózás beállítása a helyszíni adatátjáróban (csak felügyelt összekötő)
Ha helyszíni adatátjárót használ az Azure Logic Appshez, konfigurálhat egy kiterjesztett naplófájlt az SAP-összekötőhöz. A helyszíni adatátjáróval átirányíthatja az Eseménykövetés windowsos (ETW) eseményeit az átjáró naplózási .zip fájljaiban található forgó naplófájlokba.
Az átjáró összes konfigurációs és szolgáltatásnaplóját exportálhatja egy .zip fájlba az átjáróalkalmazás beállításaiból.
Feljegyzés
A kiterjesztett naplózás hatással lehet a munkafolyamat teljesítményére, ha mindig engedélyezve van. Ajánlott eljárásként kapcsolja ki a kiterjesztett naplófájlokat, miután végzett a probléma elemzésével és hibaelhárításával.
ETW-események rögzítése
Opcionális speciális naplózási feladatként közvetlenül rögzítheti az ETW-eseményeket, majd felhasználhatja az adatokat az Azure Diagnosticsban az Event Hubsban , vagy összegyűjtheti az adatokat az Azure Monitor-naplókba. További információkért tekintse át az adatok gyűjtésének és tárolásának ajánlott eljárásait.
Az eredményül kapott ETL-fájlok használatához használhatja a PerfView-t, vagy írhat saját programot. Az alábbi útmutató a PerfView-t használja:
A PerfView menüben válassza a Collect Collect (Gyűjtés)> lehetőséget az események rögzítéséhez.
A További szolgáltató paraméterben adja
*Microsoft-LobAdapter
meg az SAP-szolgáltatót az SAP Adapter-események rögzítéséhez. Ha nem adja meg ezeket az adatokat, a nyomkövetés csak általános ETW-eseményeket tartalmaz.Tartsa meg a többi alapértelmezett beállítást. Ha szeretné, módosíthatja a fájl nevét vagy helyét az Adatfájl paraméterben.
A nyomkövetés elindításához válassza a Gyűjtemény indítása lehetőséget.
Miután reprodukálta a problémát, vagy elegendő elemzési adatot gyűjtött össze, válassza a Gyűjtemény leállítása lehetőséget.
Ha meg szeretné osztani az adatokat egy másik féllel, például Azure-támogatás mérnökeivel, tömörítse az ETL-fájlt.
A nyomkövetés tartalmának megtekintése:
A PerfView-ban válassza a Fájl>megnyitása lehetőséget, és válassza ki az imént létrehozott ETL-fájlt.
A PerfView oldalsáv Esemény szakasza az ETL-fájl alatt.
A Szűrés csoportban szűréssel
Microsoft-LobAdapter
csak a releváns eseményeket és átjárófolyamatokat tekintheti meg.
A munkafolyamat tesztelése
Attól függően, hogy használatalapú munkafolyamattal rendelkezik-e a több-bérlős Azure Logic Appsben vagy egy standard munkafolyamatban az egybérlős Azure Logic Appsben, kövesse a megfelelő lépéseket:
Ha a Használat logikai alkalmazás erőforrás még nincs engedélyezve, a logikai alkalmazás menüjében válassza az Áttekintés lehetőséget. Az eszköztáron válassza az Engedélyezés lehetőséget.
A tervező eszköztárán válassza az Eseményindító futtatása parancsot > a munkafolyamat manuális elindításához.
A munkafolyamat aktiválásához küldjön üzenetet az SAP-rendszerből.
Térjen vissza a logikai alkalmazás Áttekintés paneljére. A Futtatások előzményei csoportban keresse meg a munkafolyamathoz tartozó új futtatásokat.
Nyissa meg a legutóbbi futtatás, amely egy manuális futtatás. Keresse meg és tekintse át az eseményindító kimenetek szakaszát.
SAP-ügyfélkódtár (NCo) naplózásának és nyomkövetésének engedélyezése (csak beépített összekötő esetén)
Ha meg kell vizsgálnia az összetevővel kapcsolatos problémákat, egyéni szöveges fájlalapú NCo-nyomkövetést állíthat be, amelyet az SAP vagy a Microsoft ügyfélszolgálata kérhet Öntől. Alapértelmezés szerint ez a funkció le van tiltva, mert a nyomkövetés engedélyezése negatív hatással lehet a teljesítményre, és gyorsan felhasználhatja az alkalmazásgazda tárhelyét.
Ezt a nyomkövetési képességet az alkalmazás szintjén az alábbi beállítások hozzáadásával szabályozhatja:
Nyissa meg a Standard logikai alkalmazás erőforrását az Azure Portalon.
A logikai alkalmazás menü Beállítások területén válassza a Környezeti változók lehetőséget az alkalmazásbeállítások áttekintéséhez.
A Környezeti változók lap Alkalmazásbeállítások lapján adja hozzá az alábbi alkalmazásbeállításokat:
SAP_RFC_TRACE_DIRECTORY: Az NCo nyomkövetési fájljainak tárolására szolgáló könyvtár, például C:\home\LogFiles\NCo.
SAP_RFC_TRACE_LEVEL: Az NCo nyomkövetési szintje és a Level4 a tipikus részletes naplózás javasolt értéke. Előfordulhat, hogy az SAP vagy a Microsoft ügyfélszolgálata egy másik nyomkövetési szint beállítását kéri.
Feljegyzés
Az 1.69.0-s vagy újabb futtatókörnyezetet használó standard logikai alkalmazás-munkafolyamatok esetében engedélyezheti a naplózást több nyomkövetési szint esetében úgy, hogy az egyes nyomkövetési szinteket vesszővel (,) elválasztja.
A munkafolyamat futtatókörnyezeti verziójának megkereséséhez kövesse az alábbi lépéseket:
- Az Azure Portal munkafolyamat-menüjében válassza az Áttekintés lehetőséget.
- Az Essentials szakaszban keresse meg a Runtime Version tulajdonságot.
SAP_CPIC_TRACE_LEVEL: A common Programming Interface for Communication (CPI-C) nyomkövetési szintje a részletes naplózás javasolt értékeként. Előfordulhat, hogy az SAP vagy a Microsoft ügyfélszolgálata egy másik nyomkövetési szint beállítását kéri.
Az alkalmazásbeállítások hozzáadásáról további információt a Standard logikai alkalmazás munkafolyamatainak gazdagép- és alkalmazásbeállításainak szerkesztése című témakörben talál.
Mentse a módosításokat. Ez a lépés újraindítja az alkalmazást.
Elérhető nyomkövetési szintek
NCo nyomkövetési szintjei
Érték | Leírás |
---|---|
Level1 | A távoli függvényhívások nyomon követésének szintje. |
Level2 | A távoli függvényhívások és a nyilvános API-metódushívások nyomon követésének szintje. |
Level3 | A távoli függvényhívások, a nyilvános API-metódushívások és a belső API-metódushívások nyomon követésének szintje. |
Level4 | A távoli függvényhívások, a nyilvános API-metódushívások, a belső API-metódushívások, az RFC protokoll hexa memóriaképeinek és a hálózattal kapcsolatos információk nyomon követésének szintje. |
Zárolás | Adatokat ír a nyomkövetési fájlokba, amelyek azt mutatják, hogy a szálak mikor kérnek, szereznek be és oldanak fel zárolást az objektumokon. |
Metaadatok | Az egyes hívásokhoz tartozó távoli függvényhívások metaadatainak nyomon követése. |
Egyik sem | Az összes nyomkövetési kimenet letiltásának szintje. |
ParameterData | Nyomon követi az egyes távoli függvényhívások során küldött és fogadott tárolóadatokat. |
Teljesítmény | Adatokat ír a nyomkövetési fájlokba, amelyek segíthetnek a teljesítményproblémák elemzésében. |
PublicAPI | A nyilvános API legtöbb metódusát nyomon követi, kivéve a gettereket, a settereket vagy a kapcsolódó metódusokat. |
InternalAPI | A belső API legtöbb metódusát nyomon követi, kivéve a gettereket, a settereket vagy a kapcsolódó metódusokat. |
RemoteFunctionCall | Távoli függvényhívások nyomkövetése. |
RfcData | Nyomon követi az egyes távoli függvényhívások során küldött és fogadott bájtokat. |
SessionProvider | Az ISessionProvider jelenleg használt implementációjának összes metódusát nyomon követi. |
SetValue | Adatokat ír a nyomkövetési fájlokba a függvények paramétereihez, illetve a struktúrák vagy táblák mezőihez beállított értékekről. |
CPIC nyomkövetési szintek
Érték | Leírás |
---|---|
Kikapcsolva | Nincs naplózás |
Alap | Alapszintű naplózás |
Részletezés | Részletes naplózás |
VerboseWithData | Részletes naplózás az összes kiszolgáló válaszképével |
A nyomkövetés megtekintése
A Standard logikai alkalmazás erőforrás menüjében, a Fejlesztési eszközök csoportban válassza a Speciális eszközök>ugrása lehetőséget.
A Kudu eszköztáron válassza a Konzol>cmD hibakeresése lehetőséget.
Keresse meg a $SAP_RFC_TRACE_DIRECTORY nevű alkalmazásbeállítás mappájába.
Megjelenik egy NCo nevű új mappa, vagy a korábban beállított C:\home\LogFiles\NCo alkalmazásbeállítási érték.
Nyissa meg a $SAP_RFC_TRACE_DIRECTORY mappát, amely a következőket tartalmazza:
NCo-nyomkövetési naplók: Egy dev_nco_rfc.log nevű fájl, egy vagy több, nco_rfc_NNNN.log nevű fájl, valamint egy vagy több nco_rfc_NNNN.trc nevű fájl, ahol az NNN egy szálazonosító.
CPIC nyomkövetési naplók: Egy vagy több nco_cpic_NNNN.trc nevű fájl, ahol az NNNN szálazonosító.
Ha egy naplóban vagy nyomkövetési fájlban meg szeretné tekinteni a tartalmat, válassza a fájl melletti Szerkesztés gombot.
Feljegyzés
Ha letölt egy napló- vagy nyomkövetési fájlt, amelyet a logikai alkalmazás munkafolyamata megnyitott, és jelenleg használatban van, a letöltés üres fájlt eredményezhet.
SAP Common Crypto Library (CCL) nyomkövetésének engedélyezése (csak beépített összekötő esetén)
Ha az SNC-hitelesítés használata során meg kell vizsgálnia a titkosítási kódtárkal kapcsolatos problémákat, egyéni szöveges fájlalapú CCL-nyomkövetést állíthat be. Ezeket a CCL-naplókat használhatja az SNC-hitelesítési problémák elhárításához, vagy igény esetén megoszthatja őket a Microsoft vagy az SAP támogatási szolgálatával. Alapértelmezés szerint ez a funkció le van tiltva, mert a nyomkövetés engedélyezése negatív hatással lehet a teljesítményre, és gyorsan felhasználhatja az alkalmazásgazda tárhelyét.
Ezt a nyomkövetési képességet az alkalmazás szintjén az alábbi beállítások hozzáadásával szabályozhatja:
Nyissa meg a Standard logikai alkalmazás erőforrását az Azure Portalon.
A Standard logikai alkalmazás erőforrás menüjében, a Fejlesztési eszközök csoportban válassza a Speciális eszközök>ugrása lehetőséget.
A Kudu eszköztáron válassza a Konzol>cmD hibakeresése lehetőséget.
Keresse meg a C:\home\site\wwwroot területen található helyet, és hozzon létre egy szövegfájlt, például: CCLPROFILE.txt.
A naplózási paraméterekkel kapcsolatos további információkért tekintse meg az SAP NOTE 2338952 nyomon követését>. Az alábbi minta egy példa nyomkövetési konfigurációt tartalmaz:
ccl/trace/directory=C:\home\LogFiles\CCLLOGS ccl/trace/level=4 ccl/trace/rotatefilesize=10000000 ccl/trace/rotatefilenumber=10
A logikai alkalmazás menü Beállítások területén válassza a Környezeti változók lehetőséget az alkalmazásbeállítások áttekintéséhez.
A Környezeti változók lap Alkalmazásbeállítások lapján adja hozzá a következő alkalmazásbeállítást:
CCL_PROFILE: Az a könyvtár, amelyben CCLPROFILE.txt hozták létre, például C:\home\site\wwwroot\CCLPROFILE.txt.
Mentse a módosításokat. Ez a lépés újraindítja az alkalmazást.
A nyomkövetés megtekintése
A Standard logikai alkalmazás erőforrás menüjében, a Fejlesztési eszközök csoportban válassza a Speciális eszközök>ugrása lehetőséget.
A Kudu eszköztáron válassza a Konzol>cmD hibakeresése lehetőséget.
Keresse meg a $ccl/trace/directory paraméter mappát, amely a CCLPROFILE.txt fájlból származik.
A nyomkövetési fájlok neve általában sec-Microsoft.Azure.Work-$processId.trc és sec-sapgenpse.exe-$processId.trc.
A logikai alkalmazás munkafolyamata kétlépéses folyamatként hajtja végre az SNC-hitelesítést:
A logikai alkalmazás munkafolyamata meghívja a sapgenpse.exe , hogy cred_v2 fájlt hozzon létre a PSE-fájlból.
A lépéshez kapcsolódó nyomkövetéseket egy sec-sapgenpse.exe-$processId.trc nevű fájlban találja.
A logikai alkalmazás munkafolyamata hitelesíti az SAP-kiszolgálóhoz való hozzáférést a létrehozott cred_v2 fájl használatával, az SAP-ügyfélkódtár pedig a közös titkosítási kódtárat használja.
A lépéshez kapcsolódó nyomkövetéseket a sec-Microsoft.Azure.Work-$processId.trc nevű fájlban találja.
SAP-telemetria küldése helyszíni adatátjáróhoz a Azure-alkalmazás Insightsba
A helyszíni adatátjáró 2021. augusztusi frissítésével az SAP-összekötő műveletei telemetriai adatokat küldhetnek az SAP NCo ügyfélkódtárából, és nyomkövetéseket küldhetnek a Microsoft SAP-adapterről az Application Insightsba, amely az Azure Monitor egyik képessége. Ez a telemetria elsősorban a következő adatokat tartalmazza:
Metrikák és nyomkövetések SAP NCo-metrikák és monitorok alapján.
Nyomkövetések a Microsoft SAP-adapterről.
Metrikák és nyomkövetések az SAP NCo ügyfélkódtárából
Az SAP NCo-alapú metrikák olyan numerikus értékek, amelyek a helyszíni adatátjáró erőforrásainak használatától és rendelkezésre állásától függően változhatnak egy adott időszakban. Ezekkel a metrikákkal jobban megértheti a rendszer állapotát, és riasztásokat hozhat létre a következő tevékenységekről:
- Rendszerállapot-csökkenés.
- Szokatlan események.
- Nagy rendszerterhelés.
Ezek az információk a customMetrics nevű Application Insights-táblába kerülnek. Alapértelmezés szerint a metrikák 30 másodperces időközönként lesznek elküldve.
Az SAP NCo-alapú nyomkövetések a metrikákhoz használt szöveges információkat tartalmazzák. Ezeket az információkat a rendszer a nyomkövetések nevű Application Insights-táblába küldi. Alapértelmezés szerint a nyomkövetések 10 perces időközönként lesznek elküldve.
Az SAP NCo-metrikák és nyomkövetések SAP NCo-metrikákon alapulnak, különösen a következő NCo-osztályokon:
- RfcDestinationMonitor.
- RfcConnectionMonitor.
- RfcServerMonitor.
- RfcRepositoryMonitor.
Az egyes osztályok által biztosított metrikákkal kapcsolatos további információkért tekintse meg az SAP NCo dokumentációját (bejelentkezés szükséges).
SAP-telemetria beállítása az Application Insightshoz
Ahhoz, hogy sap-telemetriát küldjön az átjáró telepítéséhez az Application Insightsba, létre kell hoznia és be kell állítania az Application Insights-erőforrást. További információkért tekintse át a következő dokumentációt:
Ha engedélyezni szeretné az SAP-telemetria Application Insightsba való küldését, kövesse az alábbi lépéseket:
Töltse le a NuGet-csomagot Microsoft.ApplicationInsights.EventSourceListener.dll innen: https://www.nuget.org/packages/Microsoft.ApplicationInsights.EventSourceListener/2.14.0.
Adja hozzá a letöltött fájlt a helyszíni adatátjáró telepítési könyvtárához, például: C:\Program Files\Helyszíni adatátjáró.
A helyszíni adatátjáró telepítési könyvtárában ellenőrizze, hogy a Microsoft.ApplicationInsights.dll fájl verziószáma megegyezik-e a hozzáadott Microsoft.ApplicationInsights.EventSourceListener.dll fájl számával. Az átjáró jelenleg a 2.14.0-s verziót használja.
Az ApplicationInsights.config fájlban adja hozzá az Application Insights-eszközkulcsot a sor elemhez való felbontásával
<InstrumentationKey></InstrumentationKey>
. Cserélje le a helyőrzőt, a your-Application-Insights-instrumentation-key-t a kulcsra, például:<?xml version="1.0" encoding="utf-8"?> <ApplicationInsights schemaVersion="2014-05-30" xmlns="http://schemas.microsoft.com/ApplicationInsights/2013/Settings"> <!-- Uncomment this element and insert your Application Insights key to receive ETW telemetry about your gateway <InstrumentationKey>*your-instrumentation-key-placeholder*</InstrumentationKey> --> <TelemetryModules> <Add Type="Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing.DiagnosticsTelemetryModule, Microsoft.ApplicationInsights"> <IsHeartbeatEnabled>false</IsHeartbeatEnabled> </Add> <Add Type="Microsoft.ApplicationInsights.EventSourceListener.EventSourceTelemetryModule, Microsoft.ApplicationInsights.EventSourceListener"> <Sources> <Add Name="Microsoft-LobAdapter" Level="Verbose" /> </Sources> </Add> </TelemetryModules> </ApplicationInsights>
Az ApplicationInsights.config fájlban a követelményeknek megfelelően módosíthatja az SAP-összekötő műveleteihez szükséges nyomkövetési
Level
értékeket, például:<Add Type="Microsoft.ApplicationInsights.EventSourceListener.EventSourceTelemetryModule, Microsoft.ApplicationInsights.EventSourceListener"> <Sources> <Add Name="Microsoft-LobAdapter" Level="Verbose" /> </Sources> </Add>
További információkért tekintse át a következő dokumentációt:
Level
értékek: EventLevel Enum
A módosítások alkalmazása után indítsa újra a helyszíni adatátjáró szolgáltatást.
Metrikák áttekintése az Application Insightsban
Miután az SAP-műveletek a logikai alkalmazás munkafolyamatában futnak, áttekintheti az Application Insightsnak küldött telemetriát.
Nyissa meg az erőforrást az Azure-portálon Application Insights .
Az erőforrás menü Figyelés területén válassza a Naplók lehetőséget.
Az alábbi képernyőképen az Azure Portal és az Application Insights látható, amely meg van nyitva a Naplók panelen:
A Naplók panelen létrehozhat egy lekérdezést az adott követelményeknek megfelelő Kusto lekérdezésnyelv (KQL) használatával.
A következő példa lekérdezéshez hasonló lekérdezési mintát használhat:
customMetrics | extend DestinationName = tostring(customDimensions["DestinationName"]) | extend MetricType = tostring(customDimensions["MetricType"]) | where customDimensions contains "RfcDestinationMonitor" | where name contains "MaxUsedCount"
A lekérdezés futtatása után tekintse át az eredményeket.
Az alábbi képernyőkép a példa lekérdezés metrikák eredménytábláját mutatja be:
A MaxUsedCount a "Figyelt célhely által egyidejűleg használt ügyfélkapcsolatok maximális száma". Az SAP NCo dokumentációjában leírtak szerint (bejelentkezés szükséges). Ezzel az értékkel megértheti az egyidejűleg megnyitott kapcsolatok számát.
Az valueCount oszlop minden olvasáshoz 2 értéket jelenít meg, mivel a metrikák 30 másodperces időközönként jönnek létre. Az Application Insights percről percre összesíti ezeket a metrikákat.
A DestinationName oszlop egy belső Microsoft SAP Adapter-nevet tartalmazó karaktersztringet tartalmaz.
A távoli függvényhívás (RFC) célhelyének jobb megértéséhez használja ezt az értéket például a következőkkel
traces
:customMetrics | extend DestinationName = tostring(customDimensions["DestinationName"]) | join kind=inner (traces | extend DestinationName = tostring(customDimensions["DestinationName"]), AppServerHost = tostring(customDimensions["AppServerHost"]), SncMode = tostring(customDimensions["SncMode"]), SapClient = tostring(customDimensions["Client"]) | where customDimensions contains "RfcDestinationMonitor" ) on DestinationName , $left.DestinationName == $right.DestinationName | where customDimensions contains "RfcDestinationMonitor" | where name contains "MaxUsedCount" | project AppServerHost, SncMode, SapClient, name, valueCount, valueSum, valueMin, valueMax
Metrikadiagramokat vagy riasztásokat is létrehozhat az Application Insights ezen képességeivel, például:
Nyomkövetések a Microsoft SAP Adapterből
A Microsoft SAP Adaptertől küldött nyomkövetéseket használhatja a probléma utáni elemzéshez, és megkeresheti azokat a meglévő belső rendszerhibákat, amelyek esetleg az SAP-összekötő műveleteiből merülhetnek fel. Ezek a nyomkövetések azért vannak message
beállítva "n\a"
, mert egy korábbi, az Application Insightst megelőző eseményforrás-keretrendszerből származnak, például:
traces
| where message == "n/a"
| where severityLevel > 0
| extend ActivityId = tostring(customDimensions["ActivityId"])
| extend fullMessage = tostring(customDimensions["fullMessage"])
| extend shortMessage = tostring(customDimensions["shortMessage"])
| where ActivityId contains "8ad5952b-371e-4d80-b355-34e28df9b5d1"
Az alábbi képernyőképen a példa lekérdezés nyomkövetési eredménytáblája látható: