FIX: È disponibile un aggiornamento che aggiunge la proprietà di associazione ClearRfcContext dell'adattatore SAP basate su WCF da BizTalk Adapter Pack 2.0 o BizTalk Adapter Pack 2010

Le informazioni in questo articolo si applicano a

Questo articolo si applica a:

  • Microsoft BizTalk Adapter Pack 2.0

  • Microsoft BizTalk Adapter Pack 2010

Introduzione

In questo articolo viene descritto un aggiornamento è incluso in un aggiornamento cumulativo per aggiungere la proprietà di associazione ClearRfcContext dell'adattatore SAP basate su Microsoft Windows Communication Foundation WCF da Microsoft BizTalk Adapter Pack.

Sintomi

Si consideri lo scenario descritto di seguito:

  • Si dispone di un computer che esegue Microsoft BizTalk Server 2006 R2, Microsoft BizTalk Server 2009 o Microsoft BizTalk Server 2010.

  • Utilizzare l'adattatore SAP basate su WCF per connettersi al server SAP R/3.Nota L'adattatore SAP basate su WCF è incluso in Microsoft BizTalk Adapter Pack 2.0 o Microsoft BizTalk Adapter Pack 2010.

  • Creare un'applicazione di BizTalk che utilizza l'adattatore SAP per chiamare le chiamate di funzione remota (RFC) che utilizzano le variabili globali di SAP sul server SAP R/3.

  • La proprietà di associazione EnableConnectionPooling è impostata su True.

In questo scenario, si noterà che i dati restituiti dalle RFC sono non è quello previsto. I dati restituiti, inoltre, potrebbe essere interessato da una precedente chiamata effettuata alla stessa proprietà di associazione RFCs.The ClearRfcContext possibile evitare problemi simili a quelli che si verificano in questo scenario.

Causa

Questo problema si verifica perché, quando il pool di connessioni è attivato, la connessione a SAP corrispondente viene restituita al pool di connessione dopo l'esecuzione di una chiamata RFC sul server SAP R/3. Quando arriva la successiva chiamata RFC, la stessa connessione SAP viene recuperata dal pool di connessione e viene utilizzata per eseguire la chiamata. RFC utilizza alcune variabili globali e non vengono eliminati in modo appropriato, la chiamata successiva a RFC utilizza i valori memorizzati nelle variabili globali dalla chiamata precedente. Questa situazione potrebbe provocare risultati imprevisti.Nota Questo problema si verifica solo se RFC utilizza le variabili globali e le variabili globali non vengono eliminate in modo appropriato la richiesta di cambiamento.

Risoluzione

Per risolvere questo problema, applicare questo aggiornamento. Quindi, impostare la proprietà di associazione di ClearRfcContext su True.

Informazioni sull'aggiornamento cumulativo

BizTalk Adapter Pack 2010

L'hotfix per risolvere questo problema è incluso nell'aggiornamento cumulativo 1 per BizTalk Adapter Pack 2010.  Per ulteriori informazioni su come ottenere il pacchetto di aggiornamento cumulativo, fare clic sul numero riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base: 2539794pacchetto di aggiornamento cumulativo 1 per BizTalk Adapter Pack 2010

BizTalk Adapter Pack 2.0

Questa correzione primo rilascio nel pacchetto di aggiornamento cumulativo 2 per BizTalk Adapter Pack 2.0. Per ulteriori informazioni su come ottenere il pacchetto di aggiornamento cumulativo, fare clic sul numero riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base riportato di seguito:

2531605 Pacchetto di aggiornamento cumulativo 2 per BizTalk Adapter Pack 2.0

Ulteriori informazioni

Note sull'aggiornamento

  • La proprietà di associazione ClearRfcContext è applicabile solo quando la proprietà di associazione EnableConnectionPooling è impostata su True.

  • Senza questo aggiornamento, l'adattatore SAP basate su WCF non cancella il contesto di R/3 SAP. Di conseguenza, il comportamento è identico a quello che si verifica quando la proprietà di associazione ClearRfcContext è impostata su False. Il valore predefinito è False.

  • Quando il pool di connessioni è attivato e la proprietà di associazione ClearRfcContext è impostata su True, l'adattatore Svuota la sessione SAP R/3 e Cancella tutte le variabili globali sul lato server SAP. Pertanto, la chiamata successiva sulla stessa connessione SAP non è interessata da qualsiasi stato ottenuto mediante la chiamata corrente.

  • Quando il pool di connessioni è attivato e la proprietà di associazione ClearRfcContext è impostata su False, l'adattatore non cancella la sessione SAP R/3. In questo caso, se RFC utilizza alcune variabili globali e le variabili non vengono eliminate in modo appropriato, la chiamata successiva a RFC potrebbe utilizzare i valori memorizzati nelle variabili globali dalla chiamata corrente. Questa situazione può produrre risultati imprevisti.

  • Poiché la proprietà binding ClearRfcContext richiede un percorso andata al server SAP R/3, è possibile visualizzare un lieve calo nelle prestazioni quando si imposta la proprietà di associazione ClearRfcContext su True. Si consiglia di impostare la proprietà di associazione ClearRfcContext su True solo quando RFC utilizza le variabili globali e la RFC è non pulizia le variabili globali in modo appropriato.

  • Quando si utilizza la scheda in uno scenario di proxy quali dal codice .NET, è possibile cancellare la sessione SAP R/3 tra le chiamate RFC sulla stessa istanza di canale/proxy. In questo aggiornamento, una nuova operazione denominata RfcClearContext è disponibile nel nodo RFC della procedura guidata Aggiungi riferimento al servizio scheda quando è selezionata l'opzione SapBinding . L'operazione RfcClearContext tenta di pulire il contesto SAP R/3 e restituisce uno dei seguenti:

    • True – la pulizia del contesto R/3 SAP è stata completata. È possibile effettuare chiamate aggiuntive sul canale/proxy.

    • False - la connessione è chiusa o ha sviluppato un errore durante il tentativo di pulire il contesto SAP R/3 con l'operazione. È necessario ignorare il proxy/canale corrente, perché qualsiasi ulteriore chiamata potrebbe provocare un errore di comunicazione.

Riferimenti

Per ulteriori informazioni su come stabilire una connessione al sistema SAP, visitare il seguente sito Web Microsoft Developer Network (MSDN):

Stabilire una connessione al sistema SAPPer ulteriori informazioni sugli aggiornamenti rapidi di BizTalk Server, fare clic sul numero riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base riportato di seguito:

2003907 Informazioni sugli aggiornamenti rapidi di BizTalk Server

Serve aiuto?

Amplia le tue competenze
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa a Microsoft Insider

Queste informazioni sono risultate utili?

Grazie per il feedback!

×