Business Contact Manager 2010 Contact Synchronization Info
BCM 2010 introduced a new feature, Contact Synchronization. This feature allows a user to synchronize their Business Contact Manager Contacts to an Outlook Contacts Folder. How does BCM know that an Outlook Contact was synced from BCM?
When a Contact is Synced, BCM adds a prop to that message, BCMID. This prop can be viewed in MFCMAPI by opening the Contacts Folder that is the target of the Synchronization
When the PROP is opened in MFCMAPI directly:
The most important portion for Synchronization is the GUID in the <Value> section (after being saved to a file):
<property tag = "0x81D0001E" type = "PT_STRING8">
<NamedPropGUID>{00020329-0000-0000-C000-000000000046} = PS_PUBLIC_STRINGS</NamedPropGUID>
<NamedPropName>sz: "BCMID"</NamedPropName>
<Value><![CDATA[713e49b9-d301-44ec-a31a-a8480c04628b,fe9f0759-bf04-4d12-ab5f-dd5ef00c3713]]>
</Value>
<AltValue>cb: 73 lpb: 37313365343962392D643330312D343465632D613331612D6138343830633034363238622C66653966303735392D626630342D346431322D616235662D646435656630306333373133</AltValue>
</property>
The value portion of the Prop contains two values, separated by a comma:
713e49b9-d301-44ec-a31a-a8480c04628b,fe9f0759-bf04-4d12-ab5f-dd5ef00c3713
These GUIDs identify the Database and the User within the database. In this Example, the GUID before the Comma:
713e49b9-d301-44ec-a31a-a8480c04628b
Is the StoreUID of the BCM Database. This identifies the BCM Database. This value is stored in the ORGTABLE of the BCM database the Contact was synchronized from. This value can be found by querying the Orgtable with the following command:
Select * from Orgtable
or select StoreUID from orgtable to return only the STOREUID Column
The GUID, after the comma
fe9f0759-bf04-4d12-ab5f-dd5ef00c3713
Identifies the actual user record in the Database. This value can be found in the ContactMainTable Database, but using the following Query
Select * from ContactMainTable
In order for synchronization to continue to work in both directions, both of the above values have to be present in the BCM Database. If they are not, then the Business Contacts that reside in the Outlook Contacts Folder, maybe become orphaned
Note: .BCM files do not contain a STOREUID. So if you import a .BCM file to an existing Database, it is not updated or changed
However, restoring a database DOES change the StoreUID – but the StoreUID is not retained – instead, a new one is generated.
Special thanks to Larry for sharing this content
Thanks & Regards
Rahul Thomas