Bu makale aşağıdaki ürün için geçerlidir:
- BizTalk Adapter Pack 2.0
- BizTalk Adapter Pack 2010
Belirtiler
Aşağıdaki senaryoyu ele alalım:
İstemci programı, bir SAP sistemindeki WCF hizmet modelinde bazı uzak işlev çağrılarını çağırmak için Microsoft Windows Communication Foundation (WCF) tabanlı SAP bağdaştırıcısını (mySAP Business Suite 3.0 için Microsoft BizTalk Bağdaştırıcısı olarak da bilinir) kullanır.
Not: Bu bağdaştırıcı Microsoft BizTalk Adapter Pack 2.0 veya Microsoft BizTalk Adapter Pack 2010'da bulunmaktadır.
Bir ağ sorunu oluşur ve WCF-SAP bağdaştırıcısı SAP sistemiyle bağlantısını kaybeder.
Bu senaryoda, SAP sistemi RFC_FAILURE hata kodunu döndürür ve uzak işlev çağrıları çalışmaz. Ayrıca, bir ThreadAbortException özel durumuyla karşılaşılır ve aşağıdaki hatayı alırsınız:
Not
System.Threading.ThreadAbortException: İş parçacığı durduruluyordu.
at RfcCallReceiveExU(UInt32 , Char* , RFC_PARAMETER* , RFC_PARAMETER* , RFC_PARAMETER* , RFC_TABLE* , Char** )
at Microsoft.Adapters.SAP.CNativeInvoker.Invoke(CNativeInvoker* , UInt32 connectionHandle, Char* m_szFunctionName)
Bir süre sonra birçok RFCException özel durumuyla karşılaşılır ve aşağıdakine benzer birçok hata alırsınız:
Not
Microsoft.Adapters.SAP.RFCException: Details: ErrorCode=RFC_FAILURE. AdapterErrorMessage=RFC'yi çağırırken RfcCallReceiveEx tarafından döndürülen hata: Z_GET_PO_BY_SAP.
Ayrıca, BizTalk sunucusunda aşağıdaki çağrı yığını izlemesi oluşturulur:
Not
at Microsoft.Adapters.SAP.RFCException.HelperThrow(Int32 retCode, String additionalErrorMessage)
at Microsoft.Adapters.SAP.RfcOutboundInvoker.Invoke()
Neden
WCF-SAP bağdaştırıcısı SAP sistemindeki SAP kanalını yanlış şekilde yeniden kullandığından bu sorun oluşur.
WCF-SAP bağdaştırıcısı RFC_FAILURE hata kodunu aldıktan sonra WCF-SAP bağdaştırıcısı bir hatayla karşılaşır. Bu nedenle, SAP sistemindeki SAP kanalı yanlış bir şekilde yeniden kullanılır.
Çözüm
Toplu güncelleştirme bilgileri
For BizTalk Adapter Pack 2010
Bu sorunu çözen düzeltme, BizTalk Adapter Pack 2010 için toplu güncelleştirme paketi 2'de bulunur. Bu toplu güncelleştirme paketini edinme hakkında daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:
2572999 BizTalk Adapter Pack 2010 için toplu güncelleştirme paketi 2
For BizTalk Adapter Pack 2.0
Bu sorunu çözen düzeltme, BizTalk Adapter Pack 2.0 için toplu güncelleştirme paketi 3'e dahil edilmiştir.
Toplu güncelleştirme paketini edinme hakkında daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:
2557150 BizTalk Adapter Pack 2.0 için toplu güncelleştirme paketi 3
Durum
Microsoft bunun, "Şunlar için geçerlidir" bölümünde listelenen Microsoft ürünlerinde sorun olduğunu doğrulamıştır.
Daha Fazla Bilgi
RFC'leri çağırmak için WCF hizmet modelini kullanma hakkında daha fazla bilgi için aşağıdaki MSDN web sitesini ziyaret edin:
RFC'leri çağırmak için WCF hizmet modelini kullanma BizTalk Server düzeltmeler hakkında daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:
2003907 BizTalk Server düzeltmeleri hakkında bilgi