When you are planning your CRM configuration, an important consideration is whether or not to use a N:N relationship. This new relationship fills a much needed gap from Microsoft CRM 3.0; however, there are a few things to keep in mind.
- N:N relationship entities do not support adding additional attributes to the entity. For example, if you want to have an attribute classifying the type of relationship between the two entities. See An Under the Hood Look at Many to Many Relationships.
- The N:N "Add Existing Record" lookup button does not use the CRM lookup view—it limits the visible records to 100, you cannot add additional view columns, and it only supports searching by the name of the record. This is problematic in the case where, for example, there are multiple locations of the same account, each with the same account name. Since you can't search the list by other lookup criteria or browse by other columns, it makes the lookup nearly impossible. I hope that in the future Microsoft enhances this view to use the standard lookup view, or customize the lookup and view columns.
- The N:N entity that is created does not support workflow. That means that you cannot fire workflows when a new relationship is created, you also cannot use workflow to create relationships. A nice workaround to number 2 would be the ability to do an advanced find to select a number of records, and apply a workflow to create relationships at all these records; however, since you cannot create the N:N relationship records with a workflow, this is not possible.
So in a nutshell, N:N relationships in 4.0 are a good start, and are practical if every record you are relating has a unique name; however, if you need more dimensions on your relationship or have multiple records with the same name, you will want to create a "cross reference" or a "linker" entity.
For those who may not be familiar with the concept of a "cross reference" entity, here is the basic concept:
- Create a new entity. You can call it whatever makes sense, I typically use a name that indicates what it is, something like "Account Products."
- When you create the new entity, set the primary attribute to "no constraint." The name is inconsequential, and frequently we remove it from the form. Other users have used workflow to combine the two related entities in the name so it makes sense if you ever view it in the lookup field.
- Create a N:1 relationship between both entities that you want to use in your many to many relationship and your new cross reference entity. For example, in the case of Account products, I would create a N:1 relationship between new_accountproducts and Accounts, and also a N:1 relationship between new_accountproducts and Products. An important thing to consider, however, is what you want the navigation bar link to say from the various entities. In this case, for the relationship between Accounts and new_account products, we want to use a custom label for the navigation bar and call it Products and for the Product relationship we want to make the label be Accounts, so that when we're on Accounts the navigation bar doesn't say Accounts. This is a nice improvement from 3.0, where both related entites had to have the same label, and it got really confusing from time to time.
In effect, we are manually doing what CRM does automatically in the case of a N:N relationship. The end result is possibly a little bit clickier than just hitting the "add existing" button; however, we can capture more detail, and the cross reference entity is available from workflow, so I can drive events from when two records are related, and I can also use workflow to quickly relate multiple records.
One of the most important factors in Search Engine Optimization is the number of incoming links to your website, the relevance of the website linking to you, the anchor text used for the link, and the page ranking of the webpage linking to you. We have tried it and have found it very useful to increase our page rank on google. We are a tender information portal, www.tradereader.com. We used tenders as our anchor text. We suggest any site to try and increase the backlinks.
Posted by: Swapnil | December 10, 2009 at 05:01 AM
One of the most important factors in Search Engine Optimization is the number of incoming links to your website, the relevance of the website linking to you, the anchor text used for the link, and the page ranking of the webpage linking to you. We have tried it and have found it very useful to increase our page rank on google. We are a tender information portal, www.tendertiger.com. We used tenders as our anchor text. We suggest any site to try and increase the backlinks
Posted by: prasad | February 09, 2010 at 03:33 AM
It is understandable that cash can make people disembarrass. But how to act if somebody doesn't have cash? The one way is to get the www.lowest-rate-loans.com or secured loan.
Posted by: VickyNoel35 | June 23, 2010 at 07:24 AM