DÜZELTME: WCF tabanlı SAP bağdaştırıcısı BizTalk Adapter Pack'te RFC_FAILURE hata kodunu aldıktan sonra uzak işlev çağrıları çalışmıyor

Uygulandığı Öğe
BizTalk Adapters

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