الاتصال ب SAP من مهام سير العمل في Azure Logic Apps
ينطبق على: Azure Logic Apps (الاستهلاك + قياسي)
يوضح هذا الدليل الإرشادي متعدد الأحزاب كيفية الوصول إلى خادم SAP الخاص بك من سير عمل في Azure Logic Apps باستخدام موصل SAP. يمكنك استخدام عمليات موصل SAP لإنشاء مهام سير عمل تلقائية يتم تشغيلها عند تشغيلها بواسطة الأحداث في خادم SAP أو في أنظمة أخرى وتشغيل الإجراءات لإدارة الموارد على خادم SAP الخاص بك.
توفر مهام سير عمل تطبيق منطق الاستهلاك والقياسي موصل SAP المدار الذي تتم استضافته وتشغيله في Azure متعدد المستأجرين. توفر مهام سير العمل القياسية أيضا موصل SAP المضمن الذي تتم استضافته وتشغيله في Azure Logic Apps أحادي المستأجر. لمزيد من المعلومات، راجع المرجع التقني للموصل.
توافق SAP
موصل SAP متوافق مع الأنواع التالية من أنظمة SAP:
أنظمة SAP المحلية والقائمة على السحابة، مثل S/4 HANA.
أنظمة SAP المحلية الكلاسيكية، مثل R/3 وECC.
يجب أن يدعم SAP إصدار نظام SAP الذي تريد توصيله. وإلا، فقد لا تكون أي مشكلات قد تواجهها قابلة للحل. لمزيد من المعلومات حول إصدارات نظام SAP ومعلومات الصيانة، راجع مصفوفة توفر منتجات SAP (PAM).
يدعم موصل SAP أنواع تكامل الرسائل والبيانات التالية من الأنظمة المستندة إلى SAP NetWeaver:
مستند متوسط (IDoc)
واجهة Business Application Programming Interface (BAPI)
استدعاء الدالة البعيدة (RFC) وRFC للمعاملات (tRFC)
يستخدم موصل SAP مكتبة SAP .NET Connector (NCo).
لاستخدام عمليات موصل SAP، يجب عليك أولا مصادقة الاتصال لديك ولديك الخيارات التالية:
يمكنك توفير اسم مستخدم وكلمة مرور.
يدعم موصل SAP المصادقة باستخدام SAP Secure Network Communications (SNC).
يمكنك استخدام SNC لتسجيل الدخول الأحادي (SSO) ل SAP NetWeaver أو لإمكانيات الأمان من المنتجات الخارجية. إذا اخترت استخدام SNC، فراجع المتطلبات الأساسية ل SNC.
مرجع تقني للموصل
يحتوي موصل SAP على إصدارات مختلفة، استنادا إلى نوع التطبيق المنطقي وبيئة المضيف.
تطبيق المنطق | البيئة | إصدار الموصل |
---|---|---|
استهلاك | تطبيقات Azure Logic Apps متعددة المستأجرين | الموصل المدار، الذي يظهر في معرض الموصلات ضمن وقت>التشغيل المشترك. لمزيد من المعلومات، راجع الوثائق التالية: - مرجع موصل SAP المدار - الموصلات المُدارة Azure Logic Apps |
قياسي | تطبيقات Azure Logic للمستأجر الفردي وبيئة خدمة التطبيقات الإصدار 3 (خطط Windows فقط) | الموصل المدار، الذي يظهر في معرض الموصلات ضمن Runtime>Shared، والموصل المضمن، الذي يظهر في معرض الموصل ضمن Runtime>In-App وهو مستند إلى موفر الخدمة. يمكن للموصل المضمن الوصول مباشرة إلى شبكات Azure الظاهرية باستخدام سلسلة الاتصال بدون بوابة بيانات محلية. لمزيد من المعلومات، راجع الوثائق التالية: - مرجع موصل SAP المدار - مرجع موصل SAP المضمن - الموصلات المُدارة Azure Logic Apps - الموصلات المُضمّنة في Azure Logic Apps |
اختلافات الموصل
يختلف موصل SAP المضمن بشكل كبير عن موصل SAP المدار بالطرق التالية:
لا تتطلب الاتصالات المحلية بوابة البيانات المحلية.
بدلا من ذلك، يتصل موصل SAP المضمن مباشرة بخادم SAP الخاص بك في الشبكة الظاهرية المتكاملة، ما يتجنب القفزات وزمن الانتقال ونقاط الفشل لبوابة الشبكة. تأكد من تحميل مكتبات عميل SAP غير القابلة لإعادة التوزيع أو توزيعها باستخدام تطبيق سير عمل التطبيق المنطقي. لمزيد من المعلومات، راجع المتطلبات الأساسية في هذا الدليل.
يتم دعم أحجام البيانات الأساسية التي تصل إلى 100 ميغابايت، لذلك لا يتعين عليك استخدام blob URI للطلبات الكبيرة.
تتوفر إجراءات محددة ل Call BAPI و Call RFC و Send IDoc. توفر هذه الإجراءات المخصصة تجربة أفضل لواجهات برمجة التطبيقات ذات الحالة، ومعاملات RFC، وإلغاء تكرار IDoc، ولا تستخدم نموذج المراسلة القديم ل SOAP Windows Communication Foundation (WCF).
يتضمن إجراء Call BAPI استجابتين بحد أقصى مع JSON الذي تم إرجاعه، واستجابة XML من BAPI المسماة، واستجابة BAPI commit أو BAPI العودة إلى الحالة السابقة أيضا، وإذا كنت تستخدم التثبيت التلقائي. تعالج هذه الإمكانية المشكلة مع موصل SAP المدار حيث تكون النتيجة من التثبيت التلقائي صامتة ويمكن ملاحظتها فقط من خلال السجلات.
مهلة أطول في 5 دقائق مقارنة بالموصل المدار.
لا يستخدم موصل SAP المضمن البنية الأساسية للموصل المشترك أو العمومي، مما يعني أن المهلات أطول في 5 دقائق مقارنة بموصل SAP المدار (دقيقتان). تعمل الطلبات طويلة الأمد دون الحاجة إلى تنفيذ نمط إجراء الطلب المستند إلى خطاف الويب طويل الأمد.
بشكل افتراضي، تكون عمليات موصل SAP المضمنة عديمة الحالة. ومع ذلك، يمكنك تمكين الوضع المناسب (الترابط) لهذه العمليات.
في الوضع المناسب، يدعم موصل SAP المضمن قابلية وصول عالية وتكوينات توسيع أفقية. بالمقارنة، يحتوي موصل SAP المدار على قيود تتعلق ببوابة البيانات المحلية تقتصر على مثيل واحد للمشغلات والمجموعات فقط في وضع تجاوز الفشل للإجراءات. لمزيد من المعلومات، راجع موصل SAP المدار - المشكلات والقيود المعروفة.
تتطلب مهام سير عمل تطبيق المنطق القياسي مكتبة عميل SAP NCo 3.1 وتستخدمها، وليس إصدار SAP NCo 3.0. لمزيد من المعلومات، راجع المتطلبات الأساسية.
توفر مهام سير عمل تطبيق المنطق القياسي إعدادات التطبيق حيث يمكنك تحديد بيئة الأمان الشخصي (PSE) وكلمة مرور PSE.
يمنعك هذا التغيير من تحميل ملفات PSE متعددة، وهو غير مدعوم ويؤدي إلى فشل اتصال SAP. في مهام سير عمل تطبيق منطق الاستهلاك، يتيح لك موصل SAP المدار تحديد هذه القيم من خلال معلمات الاتصال، والتي سمحت لك بتحميل ملفات PSE متعددة وغير مدعومة، مما تسبب في فشل اتصال SAP.
إنشاء إجراء مخطط
يمكنك التحديد من أنواع عمليات متعددة، مثل BAPI وIdoc وRFC وtRFC، مقابل نفس الإجراء في موصل SAP المدار، والذي يستخدم المعلمة SapActionUris وتجربة أداة انتقاء نظام الملفات.
يمكنك توفير اسم معلمة مباشرة كقيمة مخصصة. على سبيل المثال، يمكنك تحديد المعلمة RFC Name من إجراء Call RFC . بالمقارنة، في موصل SAP المدار، كان عليك توفير اسم معلمة URI للإجراء المعقد.
حسب التصميم، لا يدعم هذا الإجراء إنشاء مخططات متعددة ل RFCs أو BAPIs أو IDocs في تنفيذ إجراء واحد، والذي يدعمه موصل SAP المدار. يمنع تغيير هذه الإمكانية الآن محاولات إرسال كميات كبيرة من المحتوى في مكالمة واحدة.
معلمات الموصل
إلى جانب إدخالات السلسلة والأرقام البسيطة، يقبل موصل SAP معلمات الجدول التالية (مدخلات Type=ITAB
):
- معلمات اتجاه الجدول، سواء الإدخال أو الإخراج، لإصدارات SAP القديمة.
- تغييرات المعلمة، التي تحل محل معلمات اتجاه الجدول لإصدارات SAP الأحدث.
- معلمات الجدول الهرمي.
المشكلات المعروفة والقيود
موصل SAP المدار
لا يدعم موصل SAP حاليًا سلاسل موجه SAP. يجب أن تكون بوابة البيانات المحلية موجودة على شبكة ظاهرية حيث يمكن للبوابة الوصول مباشرة إلى نظام SAP الذي تريد توصيله.
بشكل عام، لا يدعم مشغل SAP مجموعات بوابة البيانات. في بعض حالات تجاوز الفشل، قد تختلف عقدة بوابة البيانات التي تتصل بنظام SAP عن العقدة النشطة، ما يؤدي إلى سلوك غير متوقع.
بالنسبة لسيناريوهات إرسال الرسائل، يتم دعم مجموعات بوابة البيانات في وضع تجاوز الفشل.
لا تدعم إجراءات SAP ذات الحالة مجموعات بوابة البيانات في وضع موازنة التحميل. يجب أن تظل الاتصالات ذات الحالة على نفس عقدة مجموعة بوابة البيانات. إما استخدام بوابة البيانات في وضع غير نظام المجموعة أو في نظام مجموعة تم إعداده لتجاوز الفشل فقط. على سبيل المثال، تتضمن هذه الإجراءات ما يلي:
- كافة الإجراءات التي تحدد قيمة معرف جلسة العمل
- [BAPI] Commit transaction
- [BAPI] Rollback transaction
- [BAPI - RFC] إغلاق جلسة عمل ذات حالة
- [BAPI - RFC] إنشاء جلسة عمل ذات حالة
في الإجراء المسمى أسلوب الاستدعاء [BAPI] في SAP، لن تلتزم ميزة التثبيت التلقائي بتغييرات BAPI إذا كان هناك تحذير واحد على الأقل في الكائن CallBapiResponse الذي تم إرجاعه بواسطة الإجراء. لتنفيذ تغييرات BAPI على الرغم من أي تحذيرات، اتبع الخطوات التالية:
- إنشاء جلسة عمل بشكل صريح باستخدام الإجراء المسمى [BAPI - RFC] إنشاء جلسة عمل ذات حالة.
- في الإجراء المسمى أسلوب الاستدعاء [BAPI] في SAP، قم بتعطيل ميزة التثبيت التلقائي.
- قم باستدعاء الإجراء المسمى [BAPI] Commit transaction بدلا من ذلك.
الاتصالات المستندة إلى IP إلى خادم رسائل SAP (تكوين متوازن التحميل)
إذا حددت عنوان IP للاتصال بخادم رسائل SAP، على سبيل المثال، موازن تحميل، فقد يستمر فشل الاتصال مع ظهور رسالة خطأ مشابهة ل "اسم المضيف SAPDBSERVER01.example.com غير معروف". يوجه خادم الرسائل موصل SAP لاستخدام اسم مضيف للاتصال بخادم تطبيق SAP الخلفي، أو الخادم خلف موازن التحميل. إذا تعذر على DNS حل اسم المضيف، يفشل الاتصال.
لهذه المشكلة، توجد الحلول أو الحلول التالية:
تأكد من أن العميل الذي يجري الاتصال، مثل الكمبيوتر الذي يحتوي على بوابة البيانات المحلية لموصل SAP، يمكنه حل أسماء المضيفين التي تم إرجاعها بواسطة خادم الرسائل.
في المعاملة المسماة RZ11، قم بتغيير أو إضافة إعداد SAP المسمى ms/lg_with_hostname=0.
سياق المشكلة أو الخلفية
قامت SAP بترقية موصل .NET (NCo) إلى الإصدار 3.1، والذي غير الطريقة التي يطلب بها الموصل الاتصالات بخوادم الواجهة الخلفية من خوادم الرسائل. يستخدم الموصل الآن واجهة برمجة تطبيقات جديدة لتحليل خادم التطبيق بواسطة خادم الرسائل ما لم تفرض على الموصل استخدام واجهة برمجة التطبيقات السابقة من خلال الإعداد المسمى ms/lg_with_hostname=0'. لمزيد من المعلومات، راجع مقالة SAP KB 3305039 - إعداد عنوان IP SMLG غير مدروس أثناء تسجيل الدخول إلى مجموعة تسجيل الدخول.
المتطلبات الأساسية
حساب واشتراك Azure. إذا لم يكن لديك اشتراك Azure حتى الآن، فسجِّل للحصول على حساب Azure مجاني.
خادم تطبيق SAP أو خادم رسائل SAP الذي تريد الوصول إليه من Azure Logic Apps.
قم بإعداد خادم SAP وحساب المستخدم للسماح باستخدام RFC.
لمزيد من المعلومات، والتي تتضمن أنواع حسابات المستخدم المدعومة والحد الأدنى من التخويل المطلوب لكل نوع إجراء (RFC، BAPI، IDoc)، راجع ملاحظة SAP التالية: 460089 - الحد الأدنى من ملفات تعريف التخويل لبرامج RFC الخارجية.
يحتاج حساب مستخدم SAP الخاص بك إلى الوصول إلى
RFC_METADATA
مجموعة الوظائف والوحدات النمطية للدالة المعنية للعمليات التالية:العمليات الوصول إلى الوحدات النمطية للوظيفة إجراءات RFC RFC_GROUP_SEARCH
وDD_LANGU_TO_ISOLA
إجراءات BAPI BAPI_TRANSACTION_COMMIT
وBAPI_TRANSACTION_ROLLBACK
RPY_BOR_TREE_INIT
وSWO_QUERY_METHODS
و وSWO_QUERY_API_METHODS
إجراءات IDoc IDOCTYPES_LIST_WITH_MESSAGES
وIDOCTYPES_FOR_MESTYPE_READ
وINBOUND_IDOCS_FOR_TID
OUTBOUND_IDOCS_FOR_TID
GET_STATUS_FROM_IDOCNR
IDOC_RECORD_READ
قراءة إجراء جدول SAP إما RFC BBP_RFC_READ_TABLE
أوRFC_READ_TABLE
امنح الحد الأدنى من الوصول الملائكي إلى خادم نظام تشغيل الشبكة (ته) لاتصال .. RFC_METADATA_GET
وRFC_METADATA_GET_TIMESTAMP
سير عمل التطبيق المنطقي من حيث تريد الوصول إلى خادم SAP الخاص بك.
للحصول على سير عمل Consumption في Azure Logic Apps متعددة المستأجرين، راجع المتطلبات الأساسية متعددة المستأجرين.
للحصول على سير عمل قياسي في Azure Logic Apps أحادية المستأجر، راجع المتطلبات الأساسية للمستأجر الفردي.
بشكل افتراضي، تكون عمليات موصل SAP المضمنة عديمة الحالة. لتشغيل هذه العمليات في الوضع المناسب، راجع تمكين الوضع ذي الحالة للموصلات المضمنة عديمة الحالة.
لاستخدام إما مشغل موصل SAP المدار أو المضمن المسمى عند تلقي رسالة، أكمل المهام التالية:
إعداد أذونات أمان بوابة SAP أو قائمة التحكم بالوصول (ACL). في مربع الحوار مراقبة البوابة (T-Code SMGW)، الذي يعرض ملفات secinfo و reginfo، افتح قائمة Goto، وحدد Expert Functions>External Security>Maintenance of ACL Files.
إعداد الإذن التالي مطلوب:
P TP=LOGICAPP HOST=<on-premises-gateway-server-IP-address> ACCESS=*
سطر URL هذا بالتنسيق التالي:
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>
إذا لم تقم بتكوين أذونات أمان بوابة SAP، فقد تتلقى الخطأ التالي:
تسجيل tp Microsoft.PowerBI.EnterpriseGateway من <اسم> المضيف غير مسموح به
لمزيد من المعلومات، راجع SAP Note 1850230 - GW: "تسجيل معرف< برنامج tp >غير مسموح به".
قم بإعداد تسجيل أمان بوابة SAP للمساعدة في العثور على مشكلات قائمة التحكم بالوصول (ACL). لمزيد من المعلومات، راجع موضوع تعليمات SAP لإعداد تسجيل البوابة.
في مربع الحوار تكوين اتصالات RFC (T-Code SM59)، أنشئ اتصال RFC بنوع TCP/IP. تأكد من تعيين نوع التنشيط إلى برنامج الخادم المسجل. تعيين نوع الاتصال لاتصال RFC بقيمة النظام الهدف إلى Unicode.
إذا كنت تستخدم مشغل SAP هذا مع تعيين المعلمة IDOC Format إلى FlatFile مع إجراء Flat File Decode، فإنه يجب عليك استخدام الخاصية
early_terminate_optional_fields
في مخطط الملف الثابت عن طريق تعيين القيمة إلىtrue
.هذا المطلب ضروري؛ لأن سجل بيانات IDoc للملف الثابت الذي يتم إرساله بواسطة SAP على استدعاء
IDOC_INBOUND_ASYNCHRONOUS
tRFC غير مضاف إلى طول حقل SDATA الكامل. توفر Azure Logic Apps بيانات IDoc الأصلية للملف الثابت دون ترك مساحة كما هو مستلم من SAP. أيضا، عند دمج مشغل SAP هذا مع إجراء Flat File Decode ، يجب أن يتطابق المخطط المقدم إلى الإجراء.في مهام سير العمل Consumption وStandard، يستخدم مشغل SAP المدار المسمى When a message is received نفس موقع URI للتجديد وإلغاء الاشتراك من اشتراك webhook. تستخدم عملية التجديد أسلوب HTTP
PATCH
، بينما تستخدم عملية إلغاء الاشتراك أسلوب HTTPDELETE
. قد يجعل هذا السلوك عملية تجديد تظهر كعملية إلغاء اشتراك في محفوظات المشغل، ولكن ستعتبر العملية متجددة لأن المشغل يستخدمPATCH
كأسلوب HTTP، وليسDELETE
.في مهام سير العمل القياسية، يستخدم مشغل SAP المضمن المسمى عند تلقي رسالة مشغل Azure Functions بدلا من ذلك، ويعرض عمليات رد الاتصال الفعلية فقط من SAP.
بالنسبة إلى مشغل موصل SAP المضمن المسمى عند تلقي رسالة، يجب عليك تمكين تكامل الشبكة الظاهرية والمنافذ الخاصة باتباع المقالة في تمكين ناقل الخدمة وموصلات SAP المضمنة لتطبيقات المنطق ذات الحالة في Standard. يمكنك أيضا تشغيل سير العمل في Visual Studio Code لإطلاق المشغل محليا. للحصول على متطلبات إعداد Visual Studio Code والمزيد من المعلومات، راجع إنشاء سير عمل تطبيق منطقي قياسي في Azure Logic Apps أحادي المستأجر باستخدام Visual Studio Code. يجب عليك أيضا إعداد متغيرات البيئة التالية على الكمبيوتر حيث تقوم بتثبيت Visual Studio Code:
- WEBSITE_PRIVATE_IP: تعيين قيمة متغير البيئة هذه إلى 127.0.0.1 كعنوان المضيف المحلي.
- WEBSITE_PRIVATE_PORTS: قم بتعيين قيمة متغير البيئة هذه إلى منفذين مجانيين وقابلين للاستخدام على الكمبيوتر المحلي، مع فصل القيم بفاصلة (،)، على سبيل المثال، 8080،8088.
محتوى الرسالة لإرسالها إلى خادم SAP الخاص بك، مثل نموذج ملف IDoc. يجب أن يكون هذا المحتوى بتنسيق XML وأن يتضمن مساحة اسم إجراء SAP الذي تريد استخدامه. يمكنك إرسال ملفات IDocs مع مخطط ملف ثابت عن طريق تضمينها في مغلف XML.
بالنسبة للسيناريوهات التي تريد إرسال IDocs فيها من سير عمل تطبيق المنطق إلى SAP، قم بتغيير وضع معالجة SAP من الإعداد الافتراضي Trigger على الفور إلى Trigger by background program بحيث لا يتم انتهاء مهلة سير العمل الخاص بك.
إذا كان نظام SAP الخاص بك قيد التحميل، على سبيل المثال، عندما يرسل سير العمل دفعة من IDocs في وقت واحد إلى SAP، فإن مهلة استدعاء IDoc في قائمة الانتظار. يؤدي وضع المعالجة الافتراضي إلى حظر نظام SAP لاستدعاء الوارد لإرسال IDoc حتى تنتهي IDoc من المعالجة. في Azure Logic Apps، تكون إجراءات سير العمل مهلة مدتها دقيقتي، بشكل افتراضي.
لتغيير وضع معالجة نظام SAP، اتبع الخطوات التالية:
في SAP، ابحث عن ملف تعريف شريك SAP، وافتح إعدادات ملفات تعريف الشريك. يمكنك استخدام رمز المعاملة we20 (T-Code) مع بادئة /n .
في علامة التبويب Inbound options ، ضمن Processing by Function Module، قم بتغيير الإعداد إلى Trigger by background program من Trigger على الفور.
يتيح إعداد البرنامج المشغل بواسطة الخلفية استدعاء
IDOC_INBOUND_ASYNCHRONOUS
TRFC لنقل IDoc الأساسي لإكماله على الفور، بدلا من حظر الاتصال حتى تنتهي IDoc من المعالجة. ومع ذلك، يعمل هذا الإعداد فقط إذا لم يتضمن IDoc مقطع الكتابة فوق سلوك Express، لكل ملاحظة دعم SAP 1777090 - تتم معالجة IDocs على الفور على الرغم من تحديد خيار "المشغل بواسطة برنامج الخلفية" في WE20 - SAP for Me.
لمزيد من المعلومات، راجع الموارد التالية:
المتطلبات الأساسية لاتصال الشبكة
يتطلب نظام SAP اتصال الشبكة من مضيف مكتبة SAP .NET Connector (NCo):
بالنسبة إلى مهام سير عمل تطبيق Consumption logic في Azure Logic Apps متعددة المستأجرين، تستضيف بوابة البيانات المحلية مكتبة SAP .NET Connector (NCo). إذا كنت تستخدم مجموعة بوابة بيانات محلية، فإن جميع عقد نظام المجموعة تتطلب اتصال الشبكة بنظام SAP.
بالنسبة إلى مهام سير عمل تطبيق المنطق القياسي في Azure Logic Apps أحادية المستأجر، يستضيف مورد تطبيق المنطق مكتبة SAP .NET Connector (NCo). لذلك، يجب أن يقوم مورد تطبيق المنطق نفسه بتمكين تكامل الشبكة الظاهرية، ويجب أن يكون لدى هذه الشبكة الظاهرية اتصال شبكة بنظام SAP.
يتضمن اتصال الشبكة المطلوب من نظام SAP الخوادم والخدمات التالية:
SAP Application Server، خدمة المرسل (لجميع أنواع تسجيل الدخول)
يمكن أن يتضمن نظام SAP الخاص بك عدة خوادم لتطبيقات SAP. يتطلب مضيف مكتبة SAP .NET Connector (NCo) الوصول إلى كل خادم وخدماته.
SAP Message Server، خدمة الرسائل (لمجموعة نوع تسجيل الدخول)
سيعاد توجيه خادم الرسائل والخدمة إلى خدمة واحدة أو أكثر من خدمات Dispatcher من Application Server. يتطلب مضيف مكتبة SAP .NET Connector (NCo) الوصول إلى كل خادم وخدماته.
SAP Gateway Server، خدمة البوابة
SAP Gateway Server، خدمة البوابة الآمنة
يتضمن اتصال الشبكة المطلوب من قبل نظام SAP أيضا هذا الخادم والخدمة لاستخدامها مع اتصالات الشبكة الآمنة (SNC).
إعادة توجيه الطلبات من Application Server، خدمة Dispatcher إلى Gateway Server، تحدث خدمة البوابة تلقائيا داخل مكتبة SAP .NET Connector (NCo). تحدث عملية إعادة التوجيه هذه حتى إذا تم توفير معلومات خدمة Dispatcher من خادم Application Server فقط في معلمات الاتصال.
إذا كنت تستخدم موازن تحميل أمام نظام SAP الخاص بك، يجب إعادة توجيه جميع الخدمات إلى الخوادم الخاصة بها. لمزيد من المعلومات حول خدمات ومنافذ SAP، راجع منافذ TCP/IP لجميع منتجات SAP.
إشعار
تأكد من تمكين اتصال الشبكة من مضيف مكتبة SAP .NET Connector (NCo) وأن المنافذ المطلوبة مفتوحة على جدران الحماية ومجموعات أمان الشبكة. وإلا، فستحصل على أخطاء مثل عدم الوصول إلى الشريك من مكون NI (واجهة الشبكة) ونص الخطأ مثل WSAECONNREFUSED: تم رفض الاتصال.
متطلبات مكتبة عميل SAP NCo
لاستخدام موصل SAP، يجب تثبيت مكتبة عميل SAP Connector NCo ل Microsoft .NET 3.1. توضح القائمة التالية المتطلبات الأساسية لمكتبة عميل SAP NCo، استنادا إلى سير العمل حيث تستخدم موصل SAP:
الإصدار:
بالنسبة إلى مهام سير عمل تطبيق Consumption logic التي تستخدم بوابة البيانات المحلية، تأكد من تثبيت أحدث إصدار 64 بت، SAP Connector ل Microsoft .NET 3.1.3.0 ل Windows 64bit (x64). تعمل بوابة البيانات فقط على أنظمة 64 بت. يؤدي تثبيت إصدار 32 بت غير المدعوم إلى ظهور خطأ "صورة سيئة".
بالنسبة إلى مهام سير عمل تطبيق المنطق القياسي، يمكنك تثبيت أحدث إصدار 64 بت أو 32 بت لموصل SAP (NCo 3.1) ل Microsoft .NET 3.1.3.0 المحول برمجيا باستخدام .NET Framework 4.6.2. ومع ذلك، تأكد من تثبيت الإصدار الذي يطابق التكوين في مورد تطبيق المنطق القياسي. للتحقق من الإصدار المستخدم من قبل تطبيق المنطق الخاص بك، اتبع الخطوات التالية:
في مدخل Microsoft Azure، افتح مورد تطبيق المنطق القياسي.
في قائمة logic app resource، ضمن Settings، حدد Configuration.
في صفحة التكوين ، حدد علامة التبويب الإعدادات العامة. ضمن إعدادات النظام الأساسي، تحقق مما إذا كانت قيمة النظام الأساسي معينة إلى 64 بت أو 32 بت.
تأكد من تثبيت إصدار SAP Connector (NCo 3.1) ل Microsoft .NET 3.1.3.0 المحول برمجيا مع .NET Framework 4.6.2 الذي يتطابق مع تكوين النظام الأساسي الخاص بك.
من مجلد التثبيت الافتراضي لمكتبة العميل، انسخ ملفات التجميع (.dll) إلى موقع آخر، استنادا إلى السيناريو الخاص بك كما يلي. أو، اختياريا، إذا كنت تستخدم فقط موصل SAP المدار، عند تثبيت مكتبة عميل SAP NCo، حدد تسجيل ذاكرة التخزين المؤقت التجميع العمومي. لا يدعم موصل SAP المضمن حاليا تسجيل GAC.
بالنسبة لسير عمل Consumption الذي يتم تشغيله في Azure Logic Apps متعددة المستأجرين ويستخدم بوابة البيانات المحلية، انسخ ملفات التجميع التالية (.dll) إلى مجلد تثبيت بوابة البيانات المحلية، على سبيل المثال، C:\Program Files\On-Premises Data Gateway. تحتوي مكتبة عميل SAP NCo 3.0 على التجميعات التالية:
- libicudecnumber.dll
- rscp4n.dll
- sapnco.dll
- sapnco_utils.dll
تأكد من نسخ ملفات التجميع إلى مجلد تثبيت بوابة البيانات. وإلا، فقد يفشل اتصال SAP مع ظهور رسالة الخطأ، الرجاء التحقق من معلومات حسابك و/أو أذوناته والمحاولة مرة أخرى. يمكنك استكشاف المزيد من المشكلات وإصلاحها باستخدام عارض سجل ربط تجميع .NET. تتيح لك هذه الأداة التحقق من وجود ملفات التجميع في الموقع الصحيح.
بالنسبة إلى مهام سير العمل القياسية، انسخ ملفات التجميع (.dll) التالية إلى موقع حيث يمكنك تحميلها إلى مورد تطبيق المنطق أو المشروع حيث تقوم بإنشاء سير العمل الخاص بك، إما في مدخل Microsoft Azure أو محليا في Visual Studio Code، على التوالي. تتضمن مكتبة عميل SAP NCo 3.1 التجميعات التالية:
- rscp4n.dll
- sapnco.dll
- sapnco_utils.dll
توجد العلاقات التالية بين مكتبة عميل SAP NCo و.NET Framework ووقت تشغيل .NET وبوابة البيانات:
يستخدم كل من Microsoft SAP Adapter وخدمة مضيف البوابة .NET Framework 4.7.2.
يعمل SAP NCo لـ .NET Framework 4.0 مع العمليات التي تستخدم وقت تشغيل .NET من 4.0 إلى 4.8.
يعمل SAP NCo لـ .NET Framework 2.0 مع العمليات التي تستخدم وقت تشغيل .NET من 2.0 إلى 3.5، ولكنها لم تعد تعمل مع أحدث بوابة.
المتطلبات الأساسية لـ SNC
بالنسبة إلى مهام سير عمل الاستهلاك في Azure Logic Apps متعددة المستأجرين التي تستخدم بوابة البيانات المحلية، واختياريا SNC، يجب عليك أيضا تكوين الإعدادات التالية.
تأكد من توافق إصدار مكتبة SNC وتبعياته مع بيئة SAP الخاصة بك. لاستكشاف أي مشكلات في توافق المكتبة وإصلاحها، يمكنك استخدام بوابة البيانات المحلية وسجلات بوابة البيانات.
تأكد من نسخ ملفات التجميع (.dll) التالية في مكتبة عميل SAP NCo 3.0 إلى مجلد تثبيت بوابة البيانات المحلية، على سبيل المثال، C:\Program Files\On-Premises Data Gateway.
- libicudecnumber.dll
- rscp4n.dll
- sapnco.dll
- sapnco_utils.dll
بالنسبة إلى الأداة المساعدة SAPGENPSE، يجب استخدام sapgenpse.exe على وجه التحديد.
إذا قمت بتوفير بيئة أمان شخصي (PSE) مع اتصالك، فلن تحتاج إلى نسخ وإعداد PSE و SECUDIR لبوابة البيانات المحلية.
إذا قمت بتمكين SNC من خلال منتج أمان خارجي، مثل sapseculib أو Kerberos أو NTLM، فتأكد من وجود مكتبة SNC على نفس الكمبيوتر مثل تثبيت بوابة البيانات. لهذه المهمة، انسخ الملفات الثنائية لمكتبة SNC إلى نفس المجلد مثل تثبيت بوابة البيانات على الكمبيوتر المحلي، على سبيل المثال، C:\Program Files\On-Premises Data Gateway.
إشعار
على الكمبيوتر الذي يحتوي على تثبيت بوابة البيانات ومكتبة SNC، لا تقم بتعيين متغيرات البيئة SNC_LIB SNC_LIB_64. وإلا، فإن هذه المتغيرات لها الأسبقية على قيمة مكتبة SNC التي تمر عبر الموصل.
لاستخدام SNC مع تسجيل الدخول الأحادي (SSO)، تأكد من تشغيل خدمة بوابة البيانات كمستخدم تم تعيينه إلى مستخدم SAP. لتغيير الحساب الافتراضي لحساب خدمة البوابة، حدد تغيير الحساب، وأدخل بيانات اعتماد المستخدم.
لمزيد من المعلومات حول تمكين SNC، راجع تمكين اتصالات الشبكة الآمنة (SNC).
المتطلبات الأساسية لبيئة Azure Logic Apps
بالنسبة لسير عمل Consumption في Azure Logic Apps متعددة المستأجرين، يتكامل موصل SAP المدار مع أنظمة SAP من خلال بوابة بيانات محلية. على سبيل المثال، في السيناريوهات التي يرسل فيها سير العمل رسالة إلى نظام SAP، تعمل بوابة البيانات ك عميل RFC وتعيد توجيه الطلبات المستلمة من سير العمل إلى SAP. وبالمثل، في السيناريوهات التي يتلقى فيها سير العمل رسالة من SAP، تعمل بوابة البيانات كخادم RFC يتلقى الطلبات من SAP ويرسلها إلى سير العمل الخاص بك.
على كمبيوتر مضيف أو جهاز ظاهري موجود في نفس الشبكة الظاهرية مثل نظام SAP الذي تتصل به، قم بتنزيل وتثبيت بوابة البيانات المحلية.
تساعدك بوابة البيانات على الوصول بأمان إلى البيانات والموارد المحلية. تأكد من استخدام إصدار مدعوم من البوابة. إذا واجهت مشكلة في البوابة، فحاول الترقية إلى أحدث إصدار، والذي قد يتضمن تحديثات لحل مشكلتك.
في مدخل Microsoft Azure، أنشئ مورد بوابة Azure لتثبيت بوابة البيانات المحلية.
على الكمبيوتر المحلي نفسه مثل تثبيت بوابة البيانات المحلية، قم بتنزيل وتثبيت أحدث مكتبة عميل SAP NCo.
بالنسبة للكمبيوتر المضيف مع تثبيت بوابة البيانات المحلية، قم بتكوين أسماء مضيفي الشبكة وتحليل أسماء الخدمات.
لاستخدام أسماء المضيفين أو أسماء الخدمات للاتصالات من Azure Logic Apps، يجب عليك إعداد تحليل الاسم لكل خادم SAP Application و Message و Gateway مع خدماتهم:
في ملف ٪windir٪\System32\drivers\etc\hosts أو في خادم DNS المتوفر للكمبيوتر المضيف لتثبيت بوابة البيانات المحلية، قم بإعداد تحليل اسم مضيف الشبكة.
في ملف ٪windir٪\System32\drivers\etc\services ، قم بإعداد تحليل اسم الخدمة.
إذا كنت لا تنوي استخدام أسماء مضيف الشبكة أو أسماء الخدمة للاتصال، يمكنك استخدام عناوين IP المضيف وأرقام منفذ الخدمة بدلاً من ذلك.
إذا لم يكن لديك إدخال DNS لنظام SAP الخاص بك، يعرض المثال التالي إدخال عينة لملف المضيفين:
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
تعرض القائمة التالية عينة مجموعة من الإدخالات لملفات الخدمات:
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
تمكين اتصالات الشبكة الآمنة (SNC)
بالنسبة لسير عمل Consumption الذي يتم تشغيله في Azure Logic Apps متعددة المستأجرين، يمكنك تمكين SNC للمصادقة، والذي ينطبق فقط عند استخدام بوابة البيانات. قبل البدء، تأكد من استيفاء جميع المتطلبات الأساسية الضرورية والمتطلبات الأساسية ل SNC.
في مدخل Microsoft Azure، افتح تطبيق منطق الاستهلاك وسير العمل في المصمم.
إضافة عملية موصل مدارة من SAP أو تحريرها.
في مربع معلومات اتصال SAP، قم بتوفير المعلومات المطلوبة التالية. يغير نوع المصادقة الذي تحدده الخيارات المتوفرة.
إشعار
تعد حقول SAP Username وSAP Password اختيارية. إذا لم توفر اسم مستخدم وكلمة مرور، فإن الموصل يستخدم شهادة العميل المتوفرة في خطوة لاحقة للمصادقة.
لتمكين SNC، في مربع معلومات اتصال SAP، قم بتوفير المعلومات المطلوبة التالية بدلا من ذلك:
المعلمة الوصف استخدام SNC حدد خانة الاختيار. مكتبة SNC أدخل إحدى القيم التالية:
- اسم مكتبة SNC، على سبيل المثال، sapsnc.dll
- المسار النسبي لموقع تثبيت NCo، على سبيل المثال، .\security\sapsnc.dll
- المسار المطلق إلى موقع تثبيت NCo، على سبيل المثال، c:\security\sapsnc.dllSNC SSO حدد إما تسجيل الدخول باستخدام هوية SNC أو تسجيل الدخول باستخدام اسم المستخدم/كلمة المرور المتوفرة على مستوى RFC.
عادة ما يتم استخدام هوية SNC لمصادقة المتصل. يمكنك اختيار المصادقة باستخدام اسم مستخدم وكلمة مرور بدلا من ذلك، ولكن لا تزال قيمة المعلمة هذه مشفرة.SNC My Name في معظم الحالات، يمكنك حذف هذه القيمة. عادة ما يعرف حل SNC المثبت اسم SNC الخاص به. في حالة دعم الحل الخاص بك لهويات متعددة، قد تضطر إلى تحديد الهوية لاستخدامها لهذه الوجهة أو الخادم المحدد. SNC Partner Name أدخل اسم SNC الخلفية، على سبيل المثال، p:CN=DV3، OU=LA، O=MS، C=US. SNC Quality of Protection حدد جودة الخدمة لاستخدامها في اتصال SNC مع هذه الوجهة أو الخادم المحدد. يتم تعريف القيمة الافتراضية بواسطة نظام الواجهة الخلفية. يتم تعريف القيمة القصوى بواسطة منتج الأمان المستخدم ل SNC. شهادة SNC أدخل المفتاح العام المشفرة base64 للشهادة لاستخدامها لتحديد عميلك إلى SAP.
ملاحظة: - لا تقم بتضمين رأس أو تذييل PEM.
- لا تدخل المفتاح الخاص لشهادة العميل هنا. يجب أن تحتوي بيئة الأمان الشخصي (PSE) على المفتاح الخاص المطابق لهذه الشهادة وقد تحتوي على شهادات خاصة أخرى. لمزيد من المعلومات، راجع المعلمة التالية.PSE أدخل بيئة الأمان الشخصي SNC (PSE) كثنائي مرمز ب base64.
- يجب أن يحتوي PSE على المفتاح الخاص لشهادة العميل حيث تتطابق بصمة الإبهام مع المفتاح العام لشهادة العميل في معلمة شهادة SNC.
- على الرغم من أن PSE قد يحتوي على شهادات عميل متعددة، لاستخدام شهادات عميل مختلفة، قم بإنشاء مهام سير عمل منفصلة بدلا من ذلك.
- إذا كنت تستخدم أكثر من شهادة عميل SNC لمورد تطبيق المنطق القياسي الخاص بك، يجب توفير نفس PSE لجميع الاتصالات. يجب أن يحتوي PSE الخاص بك على مفتاح خاص مطابق لشهادة العميل لكل وجميع الاتصالات. يجب تعيين معلمة شهادة SNC لمطابقة الشهادة الخاصة المحددة لكل اتصال.لإنهاء إنشاء الاتصال، حدد إنشاء.
إذا كانت المعلمات صحيحة، يتم إنشاء الاتصال. إذا كانت هناك مشكلة في المعلمات، يعرض مربع حوار إنشاء الاتصال رسالة خطأ. لاستكشاف مشكلات معلمة الاتصال وإصلاحها، يمكنك استخدام تثبيت بوابة البيانات المحلية والسجلات المحلية للبوابة.
تحويل ملف PSE ثنائي إلى تنسيق بترميز base64
استخدم برنامج PowerShell النصي، على سبيل المثال:
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" }
احفظ البرنامج النصي كملف pseConvert.ps1 ، ثم استدع البرنامج النصي، على سبيل المثال:
.\pseConvert.ps1 -psePath "C:\Temp\SECUDIR\request.pse" -base64OutputPath "connectionInput.txt" Output written to connectionInput.txt
إذا لم توفر معلمة مسار الإخراج، فإن إخراج البرنامج النصي إلى وحدة التحكم يحتوي على فواصل أسطر. قم بإزالة فواصل الأسطر في السلسلة المشفرة الأساسية 64 لمعلمة إدخال الاتصال.
إعداد واختبار إرسال IDocs من SAP إلى سير العمل
لإرسال IDocs من SAP إلى سير عمل التطبيق المنطقي، اتبع هذه الخطوات لإعداد تكوين SAP واختباره باستخدام سير عمل تطبيق المنطق الخاص بك. تنطبق هذه الخطوات فقط على الاختبار حيث تتطلب بيئات الإنتاج تكوينا إضافيا.
لإرسال IDocs من SAP إلى سير العمل الخاص بك، تحتاج إلى الحد الأدنى من التكوين التالي:
- إنشاء وجهة RFC.
- إنشاء اتصال ABAP.
- إنشاء منفذ جهاز استقبال.
- إنشاء منفذ مرسل.
- إنشاء شريك نظام منطقي.
- إنشاء ملف تعريف شريك.
- اختبار إرسال الرسائل.
إنشاء وجهة RFC
تحدد هذه الوجهة سير عمل تطبيق المنطق كمنفذ المتلقي.
في SAP، افتح تكوين إعدادات اتصالات RFC. يمكنك استخدام رمز المعاملة sm59 (T-Code) مع بادئة /n .
حدد TCP/IP Connections>Create.
إنشاء وجهة RFC جديدة مع الإعدادات التالية:
بالنسبة إلى وجهة RFC، أدخل اسما.
في علامة التبويب Technical Settings، في Activation Type، حدد Registered Server Program.
بالنسبة إلى معرف البرنامج، أدخل قيمة. في خادم SAP الخاص بك، يتم تسجيل مشغل سير العمل الخاص بك باستخدام هذا المعرف.
هام
معرف برنامج SAP حساس لحالة الأحرف. تأكد من استخدام تنسيق الحالة نفسه باستمرار لمعرف البرنامج عند تكوين سير العمل وخادم SAP. وإلا، فقد تتلقى الأخطاء التالية في tRFC Monitor (T-Code SM58) عند محاولة إرسال IDoc إلى SAP:
- لم يتم العثور على الدالة IDOC_INBOUND_ASYNCHRONOUS
- عميل RFC غير ABAP (نوع الشريك) غير مدعوم
لمزيد من المعلومات من SAP، راجع الملاحظات التالية (تسجيل الدخول مطلوب):
في علامة التبويب Unicode، في Communication Type with Target System، حدد Unicode.
إشعار
تدعم مكتبات عميل SAP .NET ترميز أحرف Unicode فقط. إذا تلقيت الخطأ عميل Non-ABAP RFC (نوع الشريك) غير مدعوم عند إرسال IDoc من SAP إلى Azure Logic Apps، فتحقق من تعيين قيمة Communication Type with Target System إلى Unicode.
احفظ تغييراتك.
سجل معرف البرنامج الجديد باستخدام Azure Logic Apps عن طريق إنشاء سير عمل تطبيق منطقي يبدأ بمشغل SAP المدار المسمى عند تلقي رسالة.
بهذه الطريقة، عند حفظ سير العمل الخاص بك، يسجل Azure Logic Apps معرف البرنامج على بوابة SAP.
في محفوظات مشغل سير العمل، وسجلات SAP Adapter لبوابة البيانات المحلية، إن أمكن، وسجلات تتبع بوابة SAP، تحقق من حالة التسجيل.
في مربع مراقبة بوابة SAP (T-Code SMGW)، ضمن عملاء تسجيل الدخول، يظهر التسجيل الجديد كخادم مسجل.
لاختبار اتصالك، ضمن وجهة RFC الجديدة، حدد اختبار الاتصال.
إنشاء اتصال ABAP
تعرف هذه الوجهة نظام SAP الخاص بك كمنفذ المرسل.
في SAP، افتح تكوين إعدادات اتصالات RFC. يمكنك استخدام رمز المعاملة sm59 (T-Code) مع بادئة /n .
حدّد ABAP Connections>Create.
بالنسبة إلى RFC Destination، أدخل معرف نظام SAP التجريبي.
في الإعدادات التقنية، اترك المضيف الهدف فارغا لإنشاء اتصال محلي بنظام SAP.
احفظ تغييراتك.
لاختبار الاتصال، حدد Connection Test.
إنشاء منفذ المرسل
في SAP، افتح إعدادات معالجة المنافذ في IDOC. يمكنك استخدام رمز المعاملة we21 (T-Code) مع البادئة /n .
حدد Ports>Transactional RFC>Create.
في مربع الإعدادات الذي يفتح، حدد اسم المنفذ الخاص.
بالنسبة لمنفذ الاختبار، أدخل اسمًا يبدأ بـ SAP. احفظ تغييراتك.
يجب أن تبدأ كافة أسماء منفذ المرسل بالأحرف SAP، على سبيل المثال، SAPTEST.
في إعدادات منفذ المرسل الجديد، لوجهة RFC، أدخل معرف اتصال ABAP.
احفظ تغييراتك.
إنشاء منفذ جهاز استقبال
في SAP، افتح إعدادات معالجة المنافذ في IDOC. يمكنك استخدام رمز المعاملة we21 (T-Code) مع البادئة /n .
حدد Ports>Transactional RFC>Create.
في مربع الإعدادات الذي يفتح، حدد اسم المنفذ الخاص. بالنسبة لمنفذ الاختبار، أدخل اسمًا. احفظ تغييراتك.
في إعدادات منفذ الاستقبال الجديد، لوجهة RFC، أدخل المعرف لوجهة RFC الاختبارية.
احفظ تغييراتك.
إنشاء شريك نظام منطقي
في SAP، افتح تغيير طريقة العرض "الأنظمة المنطقية": إعدادات النظرة العامة . يمكنك استخدام رمز المعاملة bd54 (T-Code).
اقبل رسالة التحذير التالية التي تظهر: تنبيه: الجدول عبر العميل
أعلى القائمة التي تعرض الأنظمة المنطقية الموجودة، حدد New Entries.
بالنسبة إلى النظام المنطقي الجديد، أدخل معرف Log.System ووصفًا قصيرًا في Name. احفظ تغييراتك.
عند ظهور Prompt for Workbench، قم بإنشاء طلب جديد عن طريق توفير وصف، أو إذا قمت بالفعل بإنشاء طلب، فتخط هذه الخطوة.
بعد إنشاء طلب workbench، قم بربط هذا الطلب بطلب تحديث الجدول. للتأكد من تحديث الجدول، احفظ التغييرات.
إنشاء ملفات تعريف الشركاء
بالنسبة لبيئات الإنتاج، يجب إنشاء ملفي تعريف الشريك التاليين:
- ملف تعريف واحد للمرسل، وهو مؤسستك ونظام SAP.
- ملف تعريف واحد للمستلم، وهو مورد تطبيق المنطق وسير العمل.
في SAP، افتح إعدادات ملفات تعريف الشريك. يمكنك استخدام رمز المعاملة we20 (T-Code) مع بادئة /n .
ضمن Partner Profiles، حدد Partner Type LS>Create.
إنشاء ملف تعريف شريك جديد مع الإعدادات التالية:
الإعدادات الوصف رقم الشريك أدخل معرف شريك النظام المنطقي. (بارتن) نوع أدخل LS. المندوب أدخل معرف حساب مستخدم SAP لاستخدامه عند تسجيل معرفات البرنامج ل Azure Logic Apps أو أنظمة أخرى غير SAP. احفظ تغييراتك.
إذا لم تقم بإنشاء شريك النظام المنطقي، فستحصل على الخطأ، أدخل رقم شريك صالح.
في إعدادات ملف تعريف شريكك، ضمن Outbound parmtrs.، حدد Create outbound parameter.
إنشاء معلمة صادرة جديدة مع الإعدادات التالية:
أدخل Message Type، على سبيل المثال، CREMAS.
أدخل معرف منفذ المتلقي.
أدخل حجم IDoc في Pack. Size. أو لإرسال ملفات IDocs واحدًا تلو الآخر من SAP، حدد Pass IDoc Immediately.
احفظ تغييراتك.
اختبار إرسال الرسائل
في SAP، افتح أداة الاختبار لإعدادات معالجة IDoc. يمكنك استخدام رمز المعاملة we19 (T-Code) مع البادئة /n .
ضمن Template for test، حدد Via message type. أدخل نوع الرسالة، على سبيل المثال، CREMAS. حدد إنشاء.
تأكيد الرسالة Which IDoc type? عن طريق تحديد متابعة.
حدد عقدة EDIDC. أدخل القيم المناسبة لمنافذ المستلم والمرسل. حدد متابعة.
حدد Standard Outbound Processing.
لبدء معالجة IDoc الصادرة، حدد متابعة.
عند انتهاء معالجة الأداة، تظهر رسالة IDoc المرسلة إلى نظام SAP أو البرنامج الخارجي.
للتحقق من أخطاء المعالجة، استخدم رمز المعاملة sm58 (T-Code) مع البادئة /n.
إنشاء مهام سير العمل لسيناريوهات SAP الشائعة
للحصول على دليل إرشادي لإنشاء مهام سير العمل لأحمال عمل تكامل SAP الشائعة، راجع الخطوات التالية:
إنشاء مهام سير العمل لسيناريوهات SAP المتقدمة
البحث عن سجلات الأخطاء الموسعة (موصل مدار فقط)
إذا كنت تستخدم موصل SAP المدار، يمكنك العثور على رسائل الخطأ الكاملة عن طريق التحقق من سجلات محول SAP الموسعة. يمكنك أيضًا تمكين ملف سجل موسع لموصل SAP.
بالنسبة لإصدارات بوابة البيانات المحلية من أبريل 2020 والإصدارات السابقة، يتم تعطيل السجلات بشكل افتراضي.
بالنسبة لإصدارات بوابة البيانات المحلية من يونيو 2020 والإصدارات الأحدث، يمكنك تمكين سجلات البوابة في إعدادات التطبيق.
مستوى التسجيل الافتراضي هو Warning.
إذا قمت بتمكين Additional logging في إعدادات Diagnostics لتطبيق بوابة البيانات المحلي، يتم زيادة مستوى التسجيل إلى Informational.
لزيادة مستوى التسجيل إلى Verbose، قم بتحديث الإعداد التالي في ملف التكوين الخاص بك. عادة ما يكون ملف التكوين موجودًا في
C:\Program Files\On-premises data gateway\Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config
.<setting name="SapTraceLevel" serializeAs="String"> <value>Verbose</value> </setting>
إعداد تسجيل SAP الموسع في بوابة البيانات المحلية (موصل مدار فقط)
إذا كنت تستخدم بوابة بيانات محلية لتطبيقات Azure Logic Apps، فإنه يمكنك تكوين ملف سجل موسع لموصل SAP. يمكنك استخدام بوابة البيانات المحلية لإعادة توجيه أحداث تتبع الأحداث لـ Windows (ETW) إلى ملفات السجل الدورية المضمنة في ملفات .zip لتسجيل البوابة.
يمكنك تصدير جميع سجلات التكوين والخدمة الخاصة بالبوابة إلى ملف .zip من إعدادات تطبيق البوابة.
إشعار
قد يؤثر التسجيل الموسع على أداء سير العمل عند تمكينه دائما. كأفضل ممارسة، أوقف تشغيل ملفات السجل الموسعة بعد الانتهاء من تحليل مشكلة واستكشاف الأخطاء وإصلاحها.
التقاط أحداث ETW
كمهمة تسجيل متقدمة اختيارية، يمكنك التقاط أحداث ETW مباشرة، ثم استهلاك البيانات في تشخيصات Azure في مراكز الأحداث أو جمع بياناتك إلى سجلات Azure Monitor. لمزيد من المعلومات، راجع أفضل الممارسات لجمع البيانات وتخزينها.
للعمل مع ملفات ETL الناتجة، يمكنك استخدام PerfView، أو يمكنك كتابة برنامجك الخاص. تستخدم المعاينة التالية PerfView:
في قائمة PerfView، حدد Collect>Collect لتسجيل الأحداث.
في المعلمة Additional Provider ، أدخل
*Microsoft-LobAdapter
لتحديد موفر SAP لالتقاط أحداث محول SAP. إذا لم تحدد هذه المعلومات، فإن تتبعك يتضمن فقط أحداث ETW العامة.احتفظ بالإعدادات الافتراضية الأخرى. يمكنك تغيير اسم الملف أو الموقع في معلمة ملف البيانات، إذا أردت ذلك.
حدد Start Collection لبدء التتبع.
بعد إعادة إنتاج المشكلة أو جمع بيانات تحليل كافية، حدد Stop Collection.
لمشاركة بياناتك مع جهة أخرى، مثل مهندسي دعم Azure، قم بضغط ملف ETL.
لعرض محتوى التتبع:
في PerfView، حدد File>Open وحدد ملف ETL الذي أنشأته للتو.
في الشريط الجانبي PerfView، قسم Events ضمن ملف ETL الخاص بك.
ضمن Filter، قم بالتصفية حسب
Microsoft-LobAdapter
لعرض الأحداث ذات الصلة وعمليات البوابة فقط.
اختبار سير العمل
استنادا إلى ما إذا كان لديك سير عمل Consumption في تطبيقات Azure Logic Apps متعددة المستأجرين أو سير عمل قياسي في Azure Logic Apps أحادي المستأجر، اتبع الخطوات المقابلة:
إذا لم يتم تمكين مورد تطبيق منطق الاستهلاك بالفعل، في قائمة تطبيق المنطق، حدد نظرة عامة. من شريط الأدوات، اختر Enable.
في شريط أدوات المصمم، حدد تشغيل تشغيل المشغل> لبدء سير العمل يدويا.
لتشغيل سير العمل، أرسل رسالة من نظام SAP الخاص بك.
ارجع إلى جزء نظرة عامة على تطبيق المنطق الخاص بك. ضمن محفوظات التشغيل، ابحث عن أي عمليات تشغيل جديدة لسير العمل الخاص بك.
افتح أحدث تشغيل، والذي يظهر تشغيلا يدويا. ابحث عن قسم مخرجات المشغل وراجعه.
تمكين تسجيل مكتبة عميل SAP (NCo) وتتبعها (موصل مضمن فقط)
عندما تضطر إلى التحقق من أي مشاكل في هذا المكون، يمكنك إعداد تتبع NCo المستند إلى ملف نصي مخصص، والذي قد يطلبه دعم SAP أو Microsoft منك. بشكل افتراضي، يتم تعطيل هذه الإمكانية لأن تمكين هذا التتبع قد يؤثر سلبا على الأداء ويستهلك بسرعة مساحة تخزين مضيف التطبيق.
يمكنك التحكم في إمكانية التتبع هذه على مستوى التطبيق عن طريق إضافة الإعدادات التالية:
في مدخل Microsoft Azure، افتح مورد تطبيق المنطق القياسي.
في قائمة logic app، ضمن Settings، حدد Environment variables لمراجعة إعدادات التطبيق.
في صفحة Environment variables ، في علامة التبويب App settings ، أضف إعدادات التطبيق التالية:
SAP_RFC_TRACE_DIRECTORY: الدليل الذي يجب تخزين ملفات تتبع NCo فيه، على سبيل المثال، C:\home\LogFiles\NCo.
SAP_RFC_TRACE_LEVEL: مستوى تتبع NCo مع المستوى 4 كقيمة مقترحة للتسجيل المطول النموذجي. قد يطلب دعم SAP أو Microsoft تعيين مستوى تتبع مختلف.
إشعار
بالنسبة إلى مهام سير عمل تطبيق المنطق القياسي التي تستخدم الإصدار 1.69.0 من وقت التشغيل أو أحدث، يمكنك تمكين التسجيل لمستويات تتبع متعددة عن طريق فصل كل مستوى تتبع بفاصلة (،).
للعثور على إصدار وقت تشغيل سير العمل، اتبع الخطوات التالية:
- في مدخل Microsoft Azure، في قائمة سير العمل، حدد Overview.
- في قسم Essentials ، ابحث عن الخاصية Runtime Version .
SAP_CPIC_TRACE_LEVEL: مستوى تتبع واجهة البرمجة العامة للاتصال (CPI-C) مع مطول كقيمة مقترحة للتسجيل المطول النموذجي. قد يطلب دعم SAP أو Microsoft تعيين مستوى تتبع مختلف.
لمزيد من المعلومات حول إضافة إعدادات التطبيق، راجع تحرير إعدادات المضيف والتطبيق لسير عمل التطبيق المنطقي القياسي.
احفظ تغييراتك. تعيد هذه الخطوة تشغيل التطبيق.
مستويات التتبع المتوفرة
مستويات تتبع NCo
قيمة | الوصف |
---|---|
المستوى 1 | مستوى تتبع استدعاءات الدالة البعيدة. |
المستوى 2 | مستوى تتبع استدعاءات الدالة البعيدة واستدعاءات أسلوب واجهة برمجة التطبيقات العامة. |
المستوى الثالث | مستوى تتبع استدعاءات الدالة البعيدة واستدعاءات أسلوب واجهة برمجة التطبيقات العامة واستدعاءات أسلوب واجهة برمجة التطبيقات الداخلية. |
المستوى 4 | مستوى تتبع استدعاءات الدالة عن بعد، واستدعاءات أسلوب واجهة برمجة التطبيقات العامة، واستدعاءات أسلوب واجهة برمجة التطبيقات الداخلية، وتفريغ سداسي عشري لبروتوكول RFC، والمعلومات المتعلقة بالشبكة. |
تأمين | يكتب البيانات إلى ملفات التتبع التي تظهر عند طلب مؤشرات الترابط تأمين الكائنات والحصول عليها وإصدارها. |
بيانات التعريف | تتبع بيانات التعريف المتضمنة في استدعاء دالة عن بعد لكل استدعاء. |
بلا | مستوى منع جميع مخرجات التتبع. |
بيانات المعلمة | تتبع بيانات الحاوية المرسلة والمستلمة أثناء كل استدعاء وظيفة عن بعد. |
الأداء | يكتب البيانات إلى ملفات التتبع التي يمكن أن تساعد في تحليل مشكلات الأداء. |
PublicAPI | تتبع معظم أساليب واجهة برمجة التطبيقات العامة، باستثناء getters أو setters أو الأساليب ذات الصلة. |
InternalAPI | تتبع معظم أساليب واجهة برمجة التطبيقات الداخلية، باستثناء getters أو setters أو الأساليب ذات الصلة. |
RemoteFunctionCall | تتبع استدعاءات الدالة البعيدة. |
RfcData | تتبع وحدات البايت المرسلة والمستلمة أثناء كل استدعاء وظيفة عن بعد. |
موفر الجلسة | تتبع جميع أساليب التنفيذ المستخدم حاليا ل ISessionProvider. |
SetValue | كتابة معلومات إلى ملفات التتبع المتعلقة بالقيم التي تم تعيينها لمعلمات الدالات أو حقول الهياكل أو الجداول. |
مستويات تتبع CPIC
قيمة | الوصف |
---|---|
إيقاف تشغيل | لا يوجد تسجيل |
أساسي | التسجيل الأساسي |
مطول | تسجيل مطول |
بيانات مطولة | تسجيل مطول مع كافة تفريغ استجابة الخادم |
عرض التتبع
في القائمة Standard logic app resource، ضمن Development Tools، حدد Advanced Tools>Go.
في شريط أدوات Kudu، حدد Debug Console>CMD.
استعرض وصولا إلى المجلد الخاص بإعداد التطبيق المسمى $SAP_RFC_TRACE_DIRECTORY.
يظهر مجلد جديد باسم NCo، أو أي اسم مجلد استخدمته، لقيمة إعداد التطبيق، C:\home\LogFiles\NCo، التي قمت بتعيينها مسبقا.
افتح المجلد $SAP_RFC_TRACE_DIRECTORY ، الذي يحتوي على الملفات التالية:
سجلات تتبع NCo: ملف يسمى dev_nco_rfc.log، وملف واحد أو عدة ملفات تسمى nco_rfc_NNNN.log، وملفات واحدة أو عدة ملفات تسمى nco_rfc_NNNN.trc حيث NNNN هو معرف مؤشر ترابط.
سجلات تتبع CPIC: ملف واحد أو عدة ملفات تسمى nco_cpic_NNNN.trc حيث NNNN هو معرف مؤشر الترابط.
لعرض المحتوى في ملف سجل أو تتبع، حدد الزر تحرير بجوار ملف.
إشعار
إذا قمت بتنزيل ملف سجل أو تتبع فتحه سير عمل تطبيق المنطق الخاص بك وهو قيد الاستخدام حاليا، فقد يؤدي التنزيل إلى ملف فارغ.
تمكين تتبع SAP Common Cryptoy (CCL) (موصل مضمن فقط)
إذا كان عليك التحقق من أي مشاكل في مكتبة التشفير أثناء استخدام مصادقة SNC، يمكنك إعداد تتبع CCL المستند إلى ملف نصي مخصص. يمكنك استخدام سجلات CCL هذه لاستكشاف مشكلات مصادقة SNC وإصلاحها، أو مشاركتها مع دعم Microsoft أو SAP، إذا طلب منك ذلك. بشكل افتراضي، يتم تعطيل هذه الإمكانية لأن تمكين هذا التتبع قد يؤثر سلبا على الأداء ويستهلك بسرعة مساحة تخزين مضيف التطبيق.
يمكنك التحكم في إمكانية التتبع هذه على مستوى التطبيق عن طريق إضافة الإعدادات التالية:
في مدخل Microsoft Azure، افتح مورد تطبيق المنطق القياسي.
في القائمة Standard logic app resource، ضمن Development Tools، حدد Advanced Tools>Go.
في شريط أدوات Kudu، حدد Debug Console>CMD.
استعرض وصولا إلى موقع ضمن C:\home\site\wwwroot، وأنشئ ملفا نصيا، على سبيل المثال: CCLPROFILE.txt.
لمزيد من المعلومات حول معلمات التسجيل، راجع تتبع> SAP NOTE 2338952. يوفر النموذج التالي مثالا على تكوين التتبع:
ccl/trace/directory=C:\home\LogFiles\CCLLOGS ccl/trace/level=4 ccl/trace/rotatefilesize=10000000 ccl/trace/rotatefilenumber=10
في قائمة logic app، ضمن Settings، حدد Environment variables لمراجعة إعدادات التطبيق.
في صفحة Environment variables ، في علامة التبويب App settings ، أضف إعداد التطبيق التالي:
CCL_PROFILE: الدليل الذي تم إنشاء CCLPROFILE.txt فيه، على سبيل المثال، C:\home\site\wwwroot\CCLPROFILE.txt.
احفظ تغييراتك. تعيد هذه الخطوة تشغيل التطبيق.
عرض التتبع
في القائمة Standard logic app resource، ضمن Development Tools، حدد Advanced Tools>Go.
في شريط أدوات Kudu، حدد Debug Console>CMD.
استعرض للوصول إلى المجلد للحصول على معلمة $ccl/trace/directory ، التي هي من ملف CCLPROFILE.txt .
عادة ما تسمى ملفات التتبع sec-Microsoft.Azure.Work-$processId.trc و sec-sapgenpse.exe-$processId.trc.
ينفذ سير عمل تطبيق المنطق مصادقة SNC كعملية من خطوتين:
يستدعي سير عمل تطبيق المنطق sapgenpse.exe لإنشاء ملف cred_v2 من ملف PSE.
يمكنك العثور على التتبعات المتعلقة بهذه الخطوة في ملف يسمى sec-sapgenpse.exe-$processId.trc.
يصادق سير عمل تطبيق المنطق الخاص بك على الوصول إلى خادم SAP الخاص بك عن طريق استهلاك ملف cred_v2 الذي تم إنشاؤه، مع استدعاء مكتبة عميل SAP لمكتبة التشفير الشائعة.
يمكنك العثور على التتبعات المتعلقة بهذه الخطوة في ملف يسمى sec-Microsoft.Azure.Work-$processId.trc.
إرسال بيانات تتبع استخدام SAP لبوابة البيانات المحلية إلى Azure Application Insights
مع تحديث أغسطس 2021 لبوابة البيانات المحلية، يمكن لعمليات موصل SAP إرسال بيانات تتبع الاستخدام من مكتبة عميل SAP NCo وتتبعات من Microsoft SAP Adapter إلى Application Insights، وهي إمكانية في Azure Monitor. يتضمن بيانات تتبع الاستخدام هذه في المقام الأول البيانات التالية:
المقاييس والتتبعات استنادًا إلى مقاييس وشاشات SAP NCo.
تتبعات من Microsoft SAP Adapter.
المقاييس والتتبعات من مكتبة عميل SAP NCo
المقاييس المستندة إلى SAP NCo هي قيم رقمية قد تختلف أو قد لا تختلف على مدى فترة زمنية، استنادا إلى استخدام الموارد وتوافرها على بوابة البيانات المحلية. يمكنك استخدام هذه المقاييس لفهم صحة النظام بشكل أفضل وإنشاء تنبيهات حول الأنشطة التالية:
- انخفاض صحة النظام.
- أحداث غير عادية.
- تحميل ثقيل للنظام.
يتم إرسال هذه المعلومات إلى جدول Application Insights المسمى customMetrics. بشكل افتراضي، يتم إرسال المقاييس في فواصل زمنية مدتها 30 ثانية.
تتضمن التتبعات المستندة إلى SAP NCo معلومات نصية تستخدم مع المقاييس. يتم إرسال هذه المعلومات إلى جدول Application Insights المسمى traces. بشكل افتراضي، يتم إرسال التتبعات في فواصل زمنية مدتها 10 دقائق.
تستند مقاييس وتتبعات SAP NCo إلى مقاييس SAP NCo، وتحديدًا فئات NCo التالية:
- RfcDestinationMonitor.
- RfcConnectionMonitor.
- RfcServerMonitor.
- RfcRepositoryMonitor.
لمزيد من المعلومات حول المقاييس التي توفرها كل فئة، راجع وثائق SAP NCo (تسجيل الدخول مطلوب).
بيانات تتبع الاستخدام المخصصة لـ Application Insights
قبل أن تتمكن من إرسال بيانات تتبع الاستخدام SAP لتثبيت البوابة الخاصة بك إلى Application Insights، تحتاج إلى إنشاء مورد Application Insights وإعداده. لمعرفة مزيد من المعلومات، راجع الوثائق التالية:
لتمكين إرسال بيانات تتبع الاستخدام SAP إلى Application Insights، اتبع الخطوات التالية:
قم بتنزيل حزمة NuGet Microsoft.ApplicationInsights.EventSourceListener.dll من هذا الموقع: https://www.nuget.org/packages/Microsoft.ApplicationInsights.EventSourceListener/2.14.0.
أضف الملف الذي تم تنزيله إلى دليل تثبيت بوابة البيانات المحلية، على سبيل المثال، C:\Program Files\On-Premises Data Gateway.
في دليل تثبيت بوابة البيانات المحلية، تحقق من أن ملف Microsoft.ApplicationInsights.dll يحتوي على نفس رقم الإصدار مثل ملف Microsoft.ApplicationInsights.EventSourceListener.dll الذي أضفته. تستخدم البوابة حاليًا الإصدار 2.14.0.
في ملف ApplicationInsights.config، أضف مفتاح تقرير عن حالة النظام في Application Insights عن طريق إلغاء تعليق السطر الذي يتضمن العنصر
<InstrumentationKey></InstrumentationKey>
. استبدل العنصر النائب، your-Application-Insights-instrumentation-key، بمفتاحك، على سبيل المثال:<?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>
في ملف ApplicationInsights.config، يمكنك تغيير قيمة التتبعات
Level
المطلوبة لعمليات موصل SAP، وفقًا لمتطلباتك، على سبيل المثال:<Add Type="Microsoft.ApplicationInsights.EventSourceListener.EventSourceTelemetryModule, Microsoft.ApplicationInsights.EventSourceListener"> <Sources> <Add Name="Microsoft-LobAdapter" Level="Verbose" /> </Sources> </Add>
لمعرفة مزيد من المعلومات، راجع الوثائق التالية:
Level
القيم: EventLevel Enum
بعد تطبيق التغييرات، أعد تشغيل خدمة بوابة البيانات المحلية.
مراجعة المقاييس في Application Insights
بعد تشغيل عمليات SAP في سير عمل تطبيق المنطق الخاص بك، يمكنك مراجعة بيانات تتبع الاستخدام التي تم إرسالها إلى Application Insights.
في بوابة Azure، افتح Application Insights المورد.
في قائمة الموارد، ضمن Monitoring، حدد Logs.
تظهر لقطة الشاشة التالية مدخل Microsoft Azure مع Application Insights، المفتوح على جزء Logs:
في جزء Logs، يمكنك إنشاء استعلام باستخدام Kusto Query Language (KQL) التي تستند إلى متطلباتك المحددة.
يمكنك استخدام نمط استعلام مشابه لاستعلام المثال التالي:
customMetrics | extend DestinationName = tostring(customDimensions["DestinationName"]) | extend MetricType = tostring(customDimensions["MetricType"]) | where customDimensions contains "RfcDestinationMonitor" | where name contains "MaxUsedCount"
بعد تشغيل الاستعلام، راجع النتائج.
تظهر لقطة الشاشة التالية مثال جدول نتائج مقاييس الاستعلام:
MaxUsedCount هو "العدد الأقصى لاتصالات العميل التي تم استخدامها في وقت واحد من قبل الوجهة المراقبة." كما هو موضح في وثائق SAP NCo (تسجيل الدخول المطلوب). يمكنك استخدام هذه القيمة لفهم عدد الاتصالات المفتوحة في وقت واحد.
يعرض عمود valueCount 2 لكل قراءة لأنه يتم إنشاء المقاييس على فترات 30 ثانية. يجمع Application Insights هذه المقاييس في الدقيقة.
يحتوي العمود DestinationName على سلسلة أحرف هي اسم داخلي لمحول Microsoft SAP.
لفهم وجهة Remote Function Call (RFC) هذه بشكل أفضل، استخدم هذه القيمة مع
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
يمكنك أيضًا إنشاء مخططات أو تنبيهات قياسية باستخدام هذه الإمكانات في Application Insights، على سبيل المثال:
تتبعات من Microsoft SAP Adapter
يمكنك استخدام التتبعات المرسلة من Microsoft SAP Adapter للتحليل اللاحق للمشكلة والعثور على أي أخطاء موجودة في النظام الداخلي قد تظهر أو لا تظهر من عمليات موصل SAP. عيّنت هذه التتبعات message
إلى "n\a"
لأنها تأتي من إطار عمل مصدر حدث سابق يسبق Application Insights، على سبيل المثال:
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"
تظهر لقطة الشاشة التالية مثال جدول نتائج تتبعات الاستعلام: