In your Business Data Catalog XML file you define your BDC entities, with each entity (probably) having multiple methods. Each method should implement a specific BDC Method pattern as described below:

Finder - return many rows of data for your entity

SpecificFinder - returns just a single row of data

IdEnumerator - returns just the primary key values

GenericInvoker - executes SQL statements that do not return data eg inserts or updates


Having your method XML defined is the first step, but you need some way of letting the BDC know which method type it is. You do this using MethodInstance tags. Here is an example:

As you can see within the method tags the actual method implementation of Properties, Filters and Parameters have been collapsed to hide them. But our MethodInstance tags describe that this method is of type Finder.

As you may be able to tell, as the MethodInstances XML element is plural, it is actually possible through the clever use of Filters and Parameters to have a method that exists as multiple BDC method types - in fact this is exactly how some of the samples in the MOSS 2007 SDK are. We have found however that it is much easier both in terms of creation, maintenance and debugging to keep the rule of one method equals one BDC method type ie it only has one MethodInstance applied to it.

If you are using BDC Meta Man and you drag and drop a table onto the design surface we go through the best practise we suggest of defining three seperate methods. You can see each method and MethodInstance type if you right click on an entity and choose to edit it. In the Entity Management screen on the methods tab you'll see the methods listed with the MethodInstance type defined in the Type column.