I have created a BDC application file just by following your blog procedures.
My metadata as follows :
<LobSystem
Name="CustomersDB"
Version="1.0.0.0"
Type="Database"
xmlns="
http://schemas.microsoft.com/office/2006/03/BusinessDataCatalog">
<Properties>
<Property Name="Wildcardcharacter" Type="System.String">%</Property>
</Properties>
<LobSystemInstances>
<LobSystemInstance Name="CustomersDB">
<Properties>
<Property Name="AuthenticationMode" Type="System.String">PassThrough</Property>
<Property Name="DatabaseAccessProvider" Type="System.String">SqlServer</Property>
<Property Name="RdbConnection Data Source" Type="System.String">XXXXXXX</Property>
<Property Name="RdbConnection Initial Catalog" Type="System.String">AdventureWorks</Property>
<Property Name="RdbConnection Integrated Security" Type="System.String">SSPI</Property>
</Properties>
</LobSystemInstance>
</LobSystemInstances>
<Entities>
<Entity Name="CustomersDB">
<Properties>
<Property Name="LastName" Type="System.String">LastName</Property>
</Properties>
<Identifiers>
<Identifier Name="ContactID" TypeName="System.Int32"></Identifier>
</Identifiers>
<Methods>
<Method Name="GetContactDetails">
<Properties>
<Property Name="RdbCommandType" Type="System.Data.CommandType">Text</Property>
<Property Name="RdbCommandText" Type="System.String">
SELECT ContactID, FirstName, LastName,Phone FROM Person.Contact WHERE ContactID = @ContactID
</Property>
</Properties>
<FilterDescriptors>
<FilterDescriptor Name="ContactID" Type="Comparison" />
</FilterDescriptors>
<Parameters>
<Parameter Direction="In" Name="@ContactID">
<TypeDescriptor Name="ContactID" AssociatedFilter="ContactID" TypeName="System.Int32" IdentifierName="ContactID" />
</Parameter>
<Parameter Direction="Return" Name="GetCustomers">
<TypeDescriptor TypeName="System.Data.IDataReader, System.Data, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" IsCollection="true" Name="CustomerDataReader">
<TypeDescriptors>
<TypeDescriptor TypeName="System.Data.IDataRecord, System.Data, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" Name="CustomerDataRecord">
<TypeDescriptors>
<TypeDescriptor TypeName="System.Int32" IdentifierName="ContactID" Name="ContactID" />
<TypeDescriptor TypeName="System.String" Name="FirstName" />
<TypeDescriptor TypeName="System.String" Name="LastName" />
<TypeDescriptor TypeName="System.String" Name="Phone" />
</TypeDescriptors>
</TypeDescriptor>
</TypeDescriptors>
</TypeDescriptor>
</Parameter>
</Parameters>
<MethodInstances>
<MethodInstance Name="CustomerFinderInstance" Type="Finder" ReturnParameterName="GetCustomers" />
<MethodInstance Name="CustomerSpecificfinderInstance" Type="SpecificFinder" ReturnParameterName="GetCustomers"/>
</MethodInstances>
</Method>
</Methods>
</Entity>
</Entities>
</LobSystem>
Parameters:
input parameter as ContactID
Return parameter : GetCustomers(contactID,firstName,Lastname,Phone)
Also i have added a property called ContactID in user profile which I have used for mapping the BDC(1:1 mapping).
Then , I have created another profile property called MyLastName and mapped it to the LastName BDC connection field.
I have specified values for contactId to some user profiles.Then , after doing the "Full Import" , the MyLastName property is not getting populated.
Please provide guidence .. Its urgent!!
Awaiting for your reply.. Thanks in advance!!