The mapping involved with user defined fields is quite complex but the short
answer is they are stored in a table called ContactUserFields. It maps to
ContactMainTable on CustomerServiceID field. The ContactUserFields table has
columns UserField1 through UserField40, thus the inherent limit on 40 user
defined fields. The data is stored in binary format so you will have to cast
to the appropriate data type when querying. You can map the columns index to
the exact user defined fields in a table called EntityUserFields. The data
in UserFieldIndex maps to the UserField## column in ContactUserFields. If
you need help with the datatype check out the tables UserFieldDefinitions and
The quickest way to pull all the data is to use the preconstructed views.
The view with IMAPI in the name will pull user defined fields. If you wanted
to export all the Account info query from AccountIMAPIView. If you want the
Contact info query ContactIMAPIView.
This should get you pointed in the right direction.
> I'm working on a migration from BCM to Dynamics CRM 4.0. The client has
> user-defined fields on the Opportunity form. Where are these fields stored
> in the MSSmallBusiness database? I have looked all over and have not yet
> found them. Any assistance is appreciated.