Käytetään kohteeseen
BizTalk Adapters

Koskee seuraavia:

Tämä artikkeli koskee seuraavia:

  • Microsoft BizTalk Adapter Pack 2.0

  • Microsoft BizTalk Adapter Pack 2010

Johdanto

Tässä artikkelissa kerrotaan päivityksestä, joka sisältyy kumulatiiviseen päivitykseen, jonka avulla Lisätään ClearRfcContext-sidonta-ominaisuus Microsoft Windows Communication Foundation (WCF)-pohjaiseen SAP-sovittimeen Microsoft BizTalk Adapter Packista.

Ongelman oireet

Oletetaan seuraava tilanne:

  • Sinulla on tietokone, jossa on käytössä Microsoft BizTalk Server 2006 R2, Microsoft BizTalk Server 2009 tai Microsoft BizTalk Server 2010.

  • Voit muodostaa yhteyden SAP R/3 -palvelimeen WCF-pohjaisen SAP-sovittimen avulla.Huomautus: WCF-pohjainen SAP-sovitin sisältyy Microsoft BizTalk Adapter Pack 2.0- tai Microsoft BizTalk Adapter Pack 2010 -pakettiin.

  • Luot BizTalk-sovelluksen, joka käyttää SAP-sovitinta etäfunktiokutsujen kutsumiseen, joka käyttää SAP:n yleisiä muuttujia SAP R/3 -palvelimessa.

  • EnableConnectionPooling-sidontaominaisuuden arvoksi määritetään Tosi.

Tässä skenaariossa huomaat, että tarjouspyyntöjen palauttama tieto ei vastaa odotettua. Lisäksi tietoihin, jotka palautetaan, vaikuttaa siltä, että samalle tarjouspyynnölle aiemmin sälytettiin puhelu.ClearRfcContext-sidonta-ominaisuus voi estää samankaltaisia ongelmia kuin tässä skenaariossa.

Syy

Tämä ongelma johtuu siitä, että kun yhteys varastettiin, vastaava SAP-yhteys palautetaan yhteysklusteriin, kun SAP R/3 -palvelimen RFC-puhelu on suoritettu. Kun seuraava RFC-puhelu saapuu, sama SAP-yhteys noudetaan yhteys altaasta ja sitä käytetään puhelun suorittamiseen.Jos RFC käyttää joitakin yleisiä muuttujia ja jos niitä ei siivota asianmukaisesti, RFC:n seuraava kutsu käyttää arvoja, jotka on tallennettu edellisen puhelun yleisiin muuttujiin. Tämä tilanne voi johtaa odottamattomiin tuloksiin.Huomautus: Tämä ongelma ilmenee vain, jos RFC käyttää yleisiä muuttujia ja jos RFC ei puhdista yleisiä muuttujia asianmukaisesti.

Ratkaisu

Voit ratkaista tämän ongelman päivityksellä. Määritä sitten ClearRfcContext-sidonta-ominaisuuden arvoksi Tosi.

Kumulatiiviset päivitystiedot

BizTalk-sovitinpaketti 2010

Tämän ongelman korjaava hotfix-korjaus sisältyy BizTalk Adapter Pack 2010:n kumulatiiviseen päivitykseen 1.  Saat lisätietoja kumulatiivisen päivityspaketin hankkimisesta napsauttamalla seuraavaa artikkelin numeroa, jolloin saat artikkelin Microsoft Knowledge Base -tietokannassa: 2539794BizTalk Adapter Pack 2010:n kumulatiivinen päivityspaketti 1    

BizTalk-sovitinpaketti 2.0

Tämä korjaus julkaistiin ensimmäisen kerran BizTalk Adapter Pack 2.0:n kumulatiivisen päivityksen paketissa 2. Saat lisätietoja tämän kumulatiivisen päivityspaketin hankkimisesta napsauttamalla seuraavaa artikkelin numeroa, jolloin artikkeli tulee luettavaksi Microsoft Knowledge Base -tietokannassa:

2531605 BizTalk-sovittimen pack 2.0:n kumulatiivinen päivityspaketti 2

Lisätietoja

Tietoja tästä päivityksestä

  • ClearRfcContext-sidonta-ominaisuus on käytettävissä vain, kun EnableConnectionPooling-sidontaominaisuuden asetuksena on Tosi.

  • Ilman tätä päivitystä WCF-pohjainen SAP-sovitin ei poista SAP R/3 -kontekstia. Tämän vuoksi toiminta on sama kuin se, mitä tapahtuu, kun ClearRfcContext-sidontaominaisuuden arvoksi on määritetty Epätosi. Oletusarvo on Epätosi.

  • Kun yhteys varannon asetus on käytössä ja ClearRfcContext-sidontaominaisuuden arvoksi on määritetty Tosi,sovitin tyhjentää SAP R/3 -istunnon ja tyhjentää kaikki yleiset muuttujat SAP-palvelimen puolelta. Tästä syystä saman SAP-yhteyden seuraavaan puheluun ei vaikuta mikään osavaltio, joka on saatu nykyisestä puhelusta.

  • Kun yhteys varannon asetus on käytössä ja ClearRfcContext-sidontaominaisuuden asetuksena on Epätosi, sovitin ei tyhjennä SAP R/3 -istuntoa. Jos RFC käyttää tässä tapauksessa joitakin yleisiä muuttujia eikä muuttujia siivota asianmukaisesti, RFC:n seuraavassa kutsussa voidaan käyttää arvoja, jotka on tallennettu nykyisen puhelun yleisiin muuttujiin. Tämä tilanne voi antaa odottamattomia tuloksia.

  • Koska ClearRfcContext-sidonta-ominaisuus vaatii ylimääräisen pyöristysnauhan SAP R/3 -palvelimeen, suorituskyky saattaa pienentyä hieman, kun määrität ClearRfcContext-sidontaominaisuuden arvoksi Tosi. Suosittelemme, että määrität ClearRfcContext-sidontaominaisuuden arvoksi Tosi vain, jos RFC käyttää yleisiä muuttujia ja RFC ei puhdista yleisiä muuttujia asianmukaisesti.

  • Kun käytät sovitinta välityspalvelimen skenaariossa, kuten .NET-koodista, haluat ehkä tyhjentää SAP R/3 -istunnon RFC-puhelujen välillä samassa välityspalvelimessa/kanavaesiintymässä. Tässä päivityksessä uusi RfcClearContext-toiminto on käytettävissä ohjatun sovittimen palveluviittauksen lisäämisen RFC-solmussa, kun SapBinding-vaihtoehto on valittuna. RfcClearContext-toiminto yrittää puhdistaa SAP R/3 -kontekstin ja palauttaa yhden seuraavista:

    • Tosi – SAP R/3 -kontekstin puhdistaminen onnistui. Voit soittaa lisää puheluita välityspalvelimella tai kanavalla.

    • Epätosi – Yhteys sulki tai kehitti virheen, kun toiminto yritti puhdistaa SAP R/3 -kontekstin. Hylkää nykyinen välityspalvelin/kanava, koska muut puhelut voivat aiheuttaa viestintävirheen.

Lisätietoja

Lisätietoja yhteyden muodostamisesta SAP-järjestelmään on seuraavassa Microsoft Developer Network (MSDN) -sivustossa:

Yhteyden muodostaminen SAP-järjestelmäänSaat lisätietoja BizTalk Serverin hotfix-korjauksista napsauttamalla seuraavaa artikkelin numeroa, jolloin saat artikkelin microsoft Knowledge Base -tietokannassa:

2003907 Tietoja BizTalk Serverin hotfix-korjauksista

Tarvitsetko lisäohjeita?

Haluatko lisää vaihtoehtoja?

Tutustu tilausetuihin, selaa harjoituskursseja, opi suojaamaan laitteesi ja paljon muuta.