{"id":1433,"date":"2015-07-13T10:32:41","date_gmt":"2015-07-13T05:02:41","guid":{"rendered":"https:\/\/www.inogic.com\/blog\/?p=1433"},"modified":"2015-07-13T10:32:41","modified_gmt":"2015-07-13T05:02:41","slug":"hierarchy-support-in-dynamics-crm-2015-sdk","status":"publish","type":"post","link":"https:\/\/www.inogic.com\/blog\/2015\/07\/hierarchy-support-in-dynamics-crm-2015-sdk\/","title":{"rendered":"Hierarchy Support in Dynamics CRM 2015 SDK"},"content":{"rendered":"<h2>Introduction<\/h2>\n<p>Hierarchies were introduced in Dynamics CRM 2015.\u00a0 Hierarchy provided a way for visualizing relation between records and identify where the records reside in parent child relationship.<\/p>\n<p>As in example below shows where \u201cTest Account02\u201d situated in hierarchy tree.<\/p>\n<h2><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1434\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support.png\" alt=\"Hierarchy_Support\" width=\"568\" height=\"317\" \/><\/a><\/h2>\n<h2>SDK Support<\/h2>\n<p>To support the ability to retrieve records based on Hierarchy, the SDK was enhanced and new operators added that would allow you to specify the records to be selected in the hierarchy.<\/p>\n<p>There are new conditional operators has been added in CRM SDK to utilize record hierarchy feature and retrieve records in hierarchy.<\/p>\n<p>Listed below are the conditional operator can be used to retrieve records in hierarchy. We retrieved the records on account form load for account \u201cTest Account02\u201d and displayed in alert dialog to check the result. Below are the condition operator and its description.<\/p>\n<p><strong>1. above<\/strong><\/p>\n<p>Operator Scope: Can be used as conditional operator for the entity record.<\/p>\n<p>Description: This retrieves records which are above the records in tree. In case of \u201cTest Account02\u201d it is \u201cTest Account01\u201d as below.<\/p>\n<p><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support1.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1435\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support1.png\" alt=\"Hierarchy_Support1\" width=\"414\" height=\"137\" \/><\/a><\/p>\n<p>Note : When records is retrieved with same operator for\u00a0 account \u201cTest Account05\u201d.This will retrieve account \u201cTest Acccount01\u201d and \u201cTestAccount02\u201d.Accounts \u201dTest Account04\u201d and\u00a0 \u201cTest Account03\u201d are not part of the result.<\/p>\n<p><strong>2.\u00a0eq-or-above<\/strong><\/p>\n<p>Operator Scope: Can be used as conditional operator for the entity record.<\/p>\n<p>Description: This includes records above the specified record including record itself. In case of \u201cTest Account 02\u201d the result is as below.<\/p>\n<p><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support2.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1436\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support2.png\" alt=\"Hierarchy_Support2\" width=\"417\" height=\"174\" \/><\/a><\/p>\n<p><strong>\u00a03.\u00a0under<\/strong><\/p>\n<p>Operator Scope: Can be used as conditional operator for the entity record.<\/p>\n<p>Description: This operator used to retrieve records below the specified record in hierarchical tree. For \u201cTest Account02\u201d the result is as below.<\/p>\n<p><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support3.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1437\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support3.png\" alt=\"Hierarchy_Support3\" width=\"418\" height=\"158\" \/><\/a><\/p>\n<p>For the record \u201cTest Account01\u201d the result records are \u201cTest Account02\u201d,\u201dTest Account03\u201d ,\u201dTest Account04\u201d and \u201dTest Account05\u201d.<\/p>\n<p><strong>\u00a04.\u00a0eq-or-under<\/strong><\/p>\n<p>Operator Scope: Can be used as conditional operator for the entity record.<\/p>\n<p>Description: This operator is used to retrieve records below specified record in hieratical tree including the record. For \u201cTest Account02\u201d the result is as below.<\/p>\n<p><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support4.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1438\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support4.png\" alt=\"Hierarchy_Support4\" width=\"407\" height=\"173\" \/><\/a><\/p>\n<p><strong>\u00a05.\u00a0not-under<\/strong><\/p>\n<p>Operator Scope: Can be used as conditional operator for the entity record.<\/p>\n<p>Description: This operator used to retrieve records which are not below specified record. Result includes the current record too. This will be usable in combination with other operators. For \u201cTest Account02\u201d the result is as below. This includes all records except \u201cTest Account05\u201d.<\/p>\n<p><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support5.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1439\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support5.png\" alt=\"Hierarchy_Support5\" width=\"412\" height=\"399\" \/><\/a><strong>6. eq-owneduseroruserhierarchy<\/strong><\/p>\n<p>Operator Scope: Can be used as conditional operator for the owner field.<\/p>\n<p>Description: This Operator used to retrieve records owned by user and also the records which are not owned by login user but part of hierarchy. We have created new account \u201ctest Account08\u201d which is owned by another user. But its parent account is \u201cTest Account03\u201d as below.<\/p>\n<p><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support6.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1440\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support6.png\" alt=\"Hierarchy_Support6\" width=\"287\" height=\"338\" \/><\/a><\/p>\n<p>For \u201cTest Account08\u201d the result is as below.<\/p>\n<p><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support7.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1441\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support7.png\" alt=\"Hierarchy_Support7\" width=\"409\" height=\"195\" \/><\/a><\/p>\n<p><strong>\u00a07.\u00a0eq-useroruserhierarchyandteams<\/strong><\/p>\n<p>Operator Scope: Can be used as conditional operator for the owner field.<\/p>\n<p>Description: This Operator used to retrieve records owned by user and records owned by user in hierarchy.<\/p>\n<p>Below is the screen shot shows Position \u201cP1\u201d and \u201cP2\u201d are related.<\/p>\n<p><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support8.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1442\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support8.png\" alt=\"Hierarchy_Support8\" width=\"396\" height=\"113\" \/><\/a><\/p>\n<p>Position \u201cP1\u201d contains first user and position \u201cP2\u201d contains user \u201cJohn\u201d as below.<\/p>\n<p><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support9.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1443\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support9.png\" alt=\"Hierarchy_Support9\" width=\"561\" height=\"222\" \/><\/a><\/p>\n<p><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support10.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1444\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support10.png\" alt=\"Hierarchy_Support10\" width=\"606\" height=\"227\" \/><\/a><\/p>\n<p>Record \u201cTest Account08\u201d and \u201cTest Account09\u201d are owned By \u201cJon\u201d. Since both users are related in hierarchy result for \u201cTest Account03\u201d will be as follows.<\/p>\n<p><a href=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support11.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-1445\" src=\"https:\/\/www.inogic.com\/blog\/wp-content\/uploads\/2015\/07\/Hierarchy_Support11.png\" alt=\"Hierarchy_Support11\" width=\"410\" height=\"452\" \/><\/a><\/p>\n<p>\u201cTest Account08\u201d and \u201cTest Account09\u201d account records are included in the result.<\/p>\n<p>Before you move to the next post, have you seen our new\u00a0<a href=\"http:\/\/inogic.com\/Product\/99\/Add-Ons\/Click2Export\">Click2Export<\/a>\u00a0Solution? A 1 click solution to export reports to Word\/Excel and Pdf. Email us on\u00a0<a href=\"mailto:crm@inogic.com\">crm@inogic.com<\/a>\u00a0for a trial or if you would like to see a live demo.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction Hierarchies were introduced in Dynamics CRM 2015.\u00a0 Hierarchy provided a way for visualizing relation between records and identify where the records reside in parent child relationship. As in example below shows where \u201cTest Account02\u201d situated in hierarchy tree. SDK Support To support the ability to retrieve records based on Hierarchy, the SDK was enhanced\u2026 <span class=\"read-more\"><a href=\"https:\/\/www.inogic.com\/blog\/2015\/07\/hierarchy-support-in-dynamics-crm-2015-sdk\/\">Read More &raquo;<\/a><\/span><\/p>\n","protected":false},"author":13,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[15,22,23,24],"tags":[398,597,1108],"class_list":["post-1433","post","type-post","status-publish","format-standard","hentry","category-development","category-dynamics-crm-2015","category-dynamics-crm-2015-update-1","category-dynamics-crm-2016","tag-crm-2015","tag-dynamics-crm-2015","tag-microsoft-dynamics-crm-2015"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/posts\/1433","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/comments?post=1433"}],"version-history":[{"count":0,"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/posts\/1433\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/media?parent=1433"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/categories?post=1433"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.inogic.com\/blog\/wp-json\/wp\/v2\/tags?post=1433"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}