Commerce Server Profile Adapter – Useful Information

As most of you already know, commerce server come with a set of Biztalk Adapters that rely on Commerce Server Web Services (the same ones used by the Business User Applications)

to create your own schema for the profile system you can use the ExportProfileXsd.exe tool

but before starting to work on the Profile Adapter there are few things that you should keep in mind:

  1. it does not support multiple profile import, it means one profile for each message….
  2. it support message types CommerceServerProfilesImport and CommerceServerProfilesUpdate on the port level and you HAVE to use Import to Add a profile and update to UPDATE a profile

the first point means, that you will have a bigger number of messages to handle (it could affect the monitoring of your solution – transaction handling and your orchestration complexity)

the second point means that in a typical UPSERT scenario you will have to query the profile system to decide witch message type to use (you can specify it in the context)

these 2 limitations are quite big and it could affect your implementation and the decision to use the Profile Adapter to integrate your profile system in your Architecture….

obviously you could consider to workaround it extending the profile system web service with your own logic to handle the UPSERT scenario, or write your own custom WCF or Biztalk adapter to support your specific requirements or consider using the SQL adapter or consider a different integration pattern (SSIS!?)

as usual there are several approaches when it comes to integrate systems and each one has his own pro and contra….

Commerce Server Catalog Adapter, common Issue with GlobalPropertySchemas

this is one of the most common issue that I had working with Commerce Server catalog Adapter…

after a succesfull installation and configuration you will receive the follwing mesage:

The Messaging Engine received an error from transport adapter “Commerce Server Catalog Adapter” when notifying the adapter with the BatchComplete event. Reason “Exception from HRESULT: 0xC0C01620”.

The problem is quite simple and easy to solve….

and it’s related to the fllowing assembly:
Microsoft.CommerceServer.GlobalPropertySchemas.CommonAdapterPropertySchema

For some reason is not installed correctly in your biztalk application (where you are using the Commerce Server Catalog Adapter)

so what you need to do to fix it is just add it to your application using the Biztalk administrative console…

just go on the root, select Add Biztalk Assemblies and select Microsoft.CommerceServer.Adapter.GlobalPropertySchemas.dll in the Commerce Server 2007 installation directory.
Once you finish the installation everything will work as expected.