{"id":1997,"date":"2012-06-02T12:57:11","date_gmt":"2012-06-02T12:57:11","guid":{"rendered":"http:\/\/www.greytrix.com\/blogs\/sagecrm\/?p=1997"},"modified":"2012-06-02T12:57:11","modified_gmt":"2012-06-02T12:57:11","slug":"setting-the-multiple-panellists-position-on-a-screen","status":"publish","type":"post","link":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/","title":{"rendered":"Show multiple Panel\/Lists on a screen using .NET API"},"content":{"rendered":"<p>Screen designing and positioning in dot net API with latest Sage CRM versions has become very much simpler. It provides standard code templates for developer to generate the custom pages on the fly. We came across one common scenario many times wherein people try to display two panels next to each other on same page. So thought to give it a try using API. Here are the findings.<br \/>\nConsider below scenario<br \/>\nI want to display <strong>Communication List<\/strong>, <strong>Opportunity List<\/strong> and <strong>CompanyBoxShort<\/strong> entry group on a single screen. I followed below steps<br \/>\n1)\u00a0\u00a0\u00a0\u00a0 First I create the object of Communication List, Opportunity List and\u00a0 CompanyBoxShort Entry Group respectively.<br \/>\nList CommList = new List(&#8220;communicationlist&#8221;);<br \/>\nCommList.Title = Metadata.GetTranslation(&#8220;tabnames&#8221;,&#8221;communication&#8221;);<br \/>\nCommList.Filter = &#8220;CmLi_Comm_CompanyId= &#8221; + GetContextInfo(&#8220;company&#8221;, &#8220;comp_companyid&#8221;);<br \/>\nList OppoList = new List(&#8220;opportunitylist&#8221;);<br \/>\nOppoList.Title = Metadata.GetTranslation(&#8220;tabnames&#8221;, &#8220;opportunity&#8221;);<br \/>\nOppoList.Filter = &#8220;oppo_primarycompanyid =\u00a0 &#8221; + GetContextInfo(&#8220;company&#8221;, &#8220;comp_companyid&#8221;);<br \/>\nEntryGroup CompanyBoxShort = new EntryGroup(&#8220;CompanyBoxShort&#8221;);<br \/>\nCompanyBoxShort.Title = Metadata.GetTranslation(&#8220;tabnames&#8221;, &#8220;company&#8221;);<br \/>\nCompanyBoxShort.AddAttribute(&#8220;width&#8221;, &#8220;100%&#8221;);<br \/>\nRecord recComp = FindCurrentRecord(&#8220;Company&#8221;);<br \/>\nCompanyBoxShort.GetHtmlInViewMode(recComp);<br \/>\n2)\u00a0\u00a0\u00a0\u00a0 Then I took object of Horizontal and Vertical Panel respectively.<br \/>\nHorizontalPanel hpPanel = new HorizontalPanel();<br \/>\nhpPanel.AddAttribute(&#8220;width&#8221;, &#8220;100%&#8221;);<br \/>\nhpPanel.Add(CommList);<br \/>\nhpPanel.Add(OppoList);<br \/>\nVerticalPanel vpPanel = new VerticalPanel();<br \/>\nhpPanel.AddAttribute(&#8220;width&#8221;, &#8220;100%&#8221;);<br \/>\nvpPanel.Add(CompanyBoxShort);<br \/>\n3)\u00a0\u00a0\u00a0\u00a0 Now I want to display Horizontal Panel at the TOP of the screen and Vertical Panel at the BOTTOM of the screen. For that I called AddContent() method for Horizontal Panel Object first and then for Vertical Panel Object.<br \/>\nAddContent(hpPanel);<br \/>\nAddContent(vpPanel);<br \/>\n4)\u00a0\u00a0\u00a0\u00a0 Now if you want to do vice-versa then call AddContent() method for Vertical Panel Object first and then for Horizontal Panel Object like below.<br \/>\nAddContent(vpPanel);<br \/>\nAddContent(hpPanel);<br \/>\nHere is the complete code snippet for your reference.<br \/>\npublic override void BuildContents()<br \/>\n{<br \/>\n\u00a0GetTabs();<br \/>\n\u00a0List CommList = new List(&#8220;communicationlist&#8221;);<br \/>\n\u00a0CommList.Title = Metadata.GetTranslation(&#8220;tabnames&#8221;, &#8220;communication&#8221;);<br \/>\n\u00a0CommList.Filter = &#8220;CmLi_Comm_CompanyId= &#8221; + GetContextInfo(&#8220;company&#8221;, &#8220;comp_companyid&#8221;);<br \/>\n\u00a0List OppoList = new List(&#8220;opportunitylist&#8221;);<br \/>\n\u00a0OppoList.Title = Metadata.GetTranslation(&#8220;tabnames&#8221;, &#8220;opportunity&#8221;);<br \/>\n\u00a0OppoList.Filter = &#8220;oppo_primarycompanyid = &#8221; + GetContextInfo(&#8220;company&#8221;, &#8220;comp_companyid&#8221;);<br \/>\n\u00a0EntryGroup CompanyBoxShort = new EntryGroup(&#8220;CompanyBoxShort&#8221;);<br \/>\n\u00a0CompanyBoxShort.Title = Metadata.GetTranslation(&#8220;tabnames&#8221;, &#8220;company&#8221;);<br \/>\n\u00a0CompanyBoxShort.AddAttribute(&#8220;width&#8221;, &#8220;100%&#8221;);<br \/>\n\u00a0Record recComp = FindCurrentRecord(&#8220;Company&#8221;);<br \/>\n\u00a0CompanyBoxShort.GetHtmlInViewMode(recComp);<br \/>\n\u00a0HorizontalPanel hpPanel = new HorizontalPanel();<br \/>\n\u00a0hpPanel.AddAttribute(&#8220;width&#8221;, &#8220;100%&#8221;);<br \/>\n\u00a0hpPanel.Add(CommList);<br \/>\n\u00a0hpPanel.Add(OppoList);<br \/>\n\u00a0VerticalPanel vpPanel = new VerticalPanel();<br \/>\n\u00a0hpPanel.AddAttribute(&#8220;width&#8221;, &#8220;100%&#8221;);<br \/>\n\u00a0vpPanel.Add(CompanyBoxShort);<br \/>\n\u00a0AddContent(vpPanel);<br \/>\n\u00a0AddContent(hpPanel);<br \/>\n\u00a0}<br \/>\n<a href=\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-content\/uploads\/2012\/06\/Img1.jpg\"><img fetchpriority=\"high\" decoding=\"async\" class=\"aligncenter size-full wp-image-2000\" title=\"Img1\" src=\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-content\/uploads\/2012\/06\/Img1.jpg\" alt=\"\" width=\"609\" height=\"418\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Screen designing and positioning in dot net API with latest Sage CRM versions has become very much simpler. It provides standard code templates for developer to generate the custom pages on the fly. We came across one common scenario many times wherein people try to display two panels next to each other on same page.\u2026 <span class=\"read-more\"><a href=\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/\">Read More &raquo;<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[125,332,1],"tags":[],"class_list":["post-1997","post","type-post","status-publish","format-standard","hentry","category-dot-net","category-sage-crm","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Show multiple Panel\/Lists on a screen using .NET API - Sage CRM \u2013 Tips, Tricks and Components<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Show multiple Panel\/Lists on a screen using .NET API - Sage CRM \u2013 Tips, Tricks and Components\" \/>\n<meta property=\"og:description\" content=\"Screen designing and positioning in dot net API with latest Sage CRM versions has become very much simpler. It provides standard code templates for developer to generate the custom pages on the fly. We came across one common scenario many times wherein people try to display two panels next to each other on same page.\u2026 Read More &raquo;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/\" \/>\n<meta property=\"og:site_name\" content=\"Sage CRM \u2013 Tips, Tricks and Components\" \/>\n<meta property=\"article:published_time\" content=\"2012-06-02T12:57:11+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-content\/uploads\/2012\/06\/Img1.jpg\" \/>\n<meta name=\"author\" content=\"greysagecrm\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"greysagecrm\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/\",\"url\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/\",\"name\":\"Show multiple Panel\/Lists on a screen using .NET API - Sage CRM \u2013 Tips, Tricks and Components\",\"isPartOf\":{\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-content\/uploads\/2012\/06\/Img1.jpg\",\"datePublished\":\"2012-06-02T12:57:11+00:00\",\"author\":{\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#\/schema\/person\/e7ff1c8f4763b47730d6bc5e74d59c1f\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/#primaryimage\",\"url\":\"http:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-content\/uploads\/2012\/06\/Img1.jpg\",\"contentUrl\":\"http:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-content\/uploads\/2012\/06\/Img1.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Show multiple Panel\/Lists on a screen using .NET API\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#website\",\"url\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/\",\"name\":\"Sage CRM \u2013 Tips, Tricks and Components\",\"description\":\"Explore the possibilities with Sage CRM insights through our comprehensive blogs. As a leading Sage partner, Greytrix helps businesses maximize their Sage CRM potential with its rich expertise and immense knowledge. Here, you will find blogs that feature expert advice, tips &amp; tricks, best practices, and comprehensive guides on customizing and configuring Sage CRM for your business. Stay informed with our regular updates and expert insights!\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#\/schema\/person\/e7ff1c8f4763b47730d6bc5e74d59c1f\",\"name\":\"greysagecrm\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c3b4325cb326e36467f945b9b9adf2bb85e907fe092d42eb36b39743b492e626?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c3b4325cb326e36467f945b9b9adf2bb85e907fe092d42eb36b39743b492e626?s=96&d=mm&r=g\",\"caption\":\"greysagecrm\"},\"url\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/author\/greysagecrm\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Show multiple Panel\/Lists on a screen using .NET API - Sage CRM \u2013 Tips, Tricks and Components","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/","og_locale":"en_US","og_type":"article","og_title":"Show multiple Panel\/Lists on a screen using .NET API - Sage CRM \u2013 Tips, Tricks and Components","og_description":"Screen designing and positioning in dot net API with latest Sage CRM versions has become very much simpler. It provides standard code templates for developer to generate the custom pages on the fly. We came across one common scenario many times wherein people try to display two panels next to each other on same page.\u2026 Read More &raquo;","og_url":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/","og_site_name":"Sage CRM \u2013 Tips, Tricks and Components","article_published_time":"2012-06-02T12:57:11+00:00","og_image":[{"url":"http:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-content\/uploads\/2012\/06\/Img1.jpg","type":"","width":"","height":""}],"author":"greysagecrm","twitter_card":"summary_large_image","twitter_misc":{"Written by":"greysagecrm","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/","url":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/","name":"Show multiple Panel\/Lists on a screen using .NET API - Sage CRM \u2013 Tips, Tricks and Components","isPartOf":{"@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/#primaryimage"},"image":{"@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/#primaryimage"},"thumbnailUrl":"http:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-content\/uploads\/2012\/06\/Img1.jpg","datePublished":"2012-06-02T12:57:11+00:00","author":{"@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#\/schema\/person\/e7ff1c8f4763b47730d6bc5e74d59c1f"},"breadcrumb":{"@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/#primaryimage","url":"http:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-content\/uploads\/2012\/06\/Img1.jpg","contentUrl":"http:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-content\/uploads\/2012\/06\/Img1.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2012\/06\/02\/setting-the-multiple-panellists-position-on-a-screen\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/"},{"@type":"ListItem","position":2,"name":"Show multiple Panel\/Lists on a screen using .NET API"}]},{"@type":"WebSite","@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#website","url":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/","name":"Sage CRM \u2013 Tips, Tricks and Components","description":"Explore the possibilities with Sage CRM insights through our comprehensive blogs. As a leading Sage partner, Greytrix helps businesses maximize their Sage CRM potential with its rich expertise and immense knowledge. Here, you will find blogs that feature expert advice, tips &amp; tricks, best practices, and comprehensive guides on customizing and configuring Sage CRM for your business. Stay informed with our regular updates and expert insights!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#\/schema\/person\/e7ff1c8f4763b47730d6bc5e74d59c1f","name":"greysagecrm","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c3b4325cb326e36467f945b9b9adf2bb85e907fe092d42eb36b39743b492e626?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c3b4325cb326e36467f945b9b9adf2bb85e907fe092d42eb36b39743b492e626?s=96&d=mm&r=g","caption":"greysagecrm"},"url":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/author\/greysagecrm\/"}]}},"_links":{"self":[{"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/posts\/1997","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/comments?post=1997"}],"version-history":[{"count":0,"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/posts\/1997\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/media?parent=1997"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/categories?post=1997"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/tags?post=1997"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}