Welcome to MSDN Blogs Sign in | Join | Help

WCF LOB Adapter SDK and BizTalk Adapter Pack

The BizTalk Adapter Pack, comprising of the SAP, Siebel, OracleDB, OracleEBS and SQL WCF Bindings / Adapters which can be used with BizTalk Server 2006 R2 and R3. The Windows Communication Foundation (WCF) Line Of Business (LOB) Adapter SDK.

Syndication

News

CTP4 released (Adapter Pack V2, Adapter SDK V1 SP2) on October 21, 2008

Other Blogs Related to BizTalk Adapter Pack

Multiple ways to Poll (Receive Location in BizTalk) in the SQL Adapter

In this post, I outlined the ways in which stored procedures can be executed using the SQL Adapter. Similar to the methods described there, are very similar methods for polling on the inbound side. (I won’t mention the advantages/limitations/workarounds here, since there are very similar to those mentioned in the other post).

1. The first method for polling, manifested as the “Polling” operation in the Metadata Search/Browse tool. At runtime, the SQL statement specified in the “PollingStatement” binding property gets executed, and the result sets returned (we support multiple result sets being returned) are surfaced as System.Data.DataSet[] (an array of datasets).

NOTE – in order to let the adapter know that you want it to perform this operation at runtime, set the InboundOperationType binding property to Polling.

2. The next approach was to try and expose the result sets as “strongly typed”. For this purpose, we added the “TypedPolling” operation which you can see in the Metadata UI. Metadata is obtained (at design time + runtime) using ADO.NET’s CommandBehavior::SchemaOnly option (which translates to SET FMTONLY ON).

NOTE – in order to generate the metadata, setting the InboundId property in the Connection Uri is mandatory – since in a single BizTalk application, you can have multiple receive locations with different PollingStatement values, and in order to differentiate the XSDs, the InboundId value is used in the XSD namespace (thus, the InboundId should be different for different Receive Locations)

NOTE – in order to let the adapter know that you want it to perform this operation at runtime, set the InboundOperationType binding property to TypedPolling.

3. In CTP4 (releasing end of October 2008), we’ve added one more mechanism. This was mainly done for backward compatibility.

In this method, the PollingStatement you specify should return data in XML format (e.g., SELECT Col1 FROM Table1 FOR XML AUTO). At runtime, the XML data returned is enclosed within the root tag defined by the values in the binding properties XmlStoredProcedureRootNodeName and XmlStoredProcedureRootNodeNamespace.

NOTE – in order to let the adapter know that you want it to perform this operation at runtime, set the InboundOperationType binding property to XmlPolling.

Published Monday, October 06, 2008 6:53 PM by mdoctor

Filed under:

Comments

# re: Multiple ways to Poll (Receive Location in BizTalk) in the SQL Adapter @ Friday, October 10, 2008 11:19 AM

I am using the Siebel LOB adapter and have successfully used it to call from a BizTalk Send Port to send queries, inserts, updates and deletes to Siebel.

How, I want to use the adapter from a BizTalk Receive Port/Location to "poll" Siebel for new data.  Is this possible?

As a general comment it seems that "polling" is a feature of a specific adapter (SQL and SAP seem to support it).  However, what is the technical reason that this couldn't be supported for _all_ adapters as a feature of the underlying LOB Adapter SDK?  Seems to me its just a "schedule" feature implemented with a timer layered on top of any adapter.  

Perhaps its in there and I just haven't found it?

Thanks,

Rod

RodDaSilva

# re: Multiple ways to Poll (Receive Location in BizTalk) in the SQL Adapter @ Friday, October 10, 2008 11:22 AM

I am looking for an LDAP adapter to integrate with  Active Directory.  Is Microsoft planning one or do you know of one?

Thanks,

Rod

RodDaSilva

# re: Multiple ways to Poll (Receive Location in BizTalk) in the SQL Adapter @ Saturday, October 18, 2008 9:55 AM

Even though polling is just a simple scheduling feature, the adapter needs to have the functionality of executing something on a schedule. The Siebel adapter does not have this functionality inbuilt.

Regarding the LDAP adapter, you can try asking here: http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=1470&SiteID=1

mdoctor

Anonymous comments are disabled
Page view tracker