{"id":312,"date":"2011-04-25T13:35:00","date_gmt":"2011-04-25T13:35:00","guid":{"rendered":"http:\/\/www.greytrix.com\/blogs\/sagecrm\/?p=312"},"modified":"2025-01-27T11:25:18","modified_gmt":"2025-01-27T11:25:18","slug":"sage-crm-net-api-check-points","status":"publish","type":"post","link":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/","title":{"rendered":"Sage CRM .Net API Check Points"},"content":{"rendered":"<div>In my past blog posts, I had mainly concentrated on the data security and management. I this post I will talk more about code base security. In day to day life the code security is most important task of management. Sage CRM has incorporated code base security by using .Net API. From Sage CRM 6.1 version Sage has provided .Net API which has made coding as well as life easiest.<\/div>\n<div><\/div>\n<div>In the latest Sage CRM versions Sage has improved an added many features for developer to use. Now if you are using .Net API and experienced any hurdle\/problem then you can have a look at the below check points.<\/div>\n<div><\/div>\n<div>1. System\u2019s Dot Net Dll Directory Path:<\/div>\n<div><\/div>\n<div>Sometimes whenever we prepare UAT or Development system, we usually restore the production database backup and maintain the latest system. In this case what happen is:<\/div>\n<div><\/div>\n<div>&#8211; We are not able to get the \u201c.Net Admin\u201d option at Administration &gt; System as:<\/div>\n<div><a href=\"http:\/\/1.bp.blogspot.com\/-gUwRikC9At8\/TbV7cL8tUfI\/AAAAAAAABYU\/3Zl3HNPL1fQ\/s1600\/1.JPG\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" id=\"BLOGGER_PHOTO_ID_5599517435879051762\" style=\"cursor: pointer; width: 400px; height: 272px;\" src=\"http:\/\/1.bp.blogspot.com\/-gUwRikC9At8\/TbV7cL8tUfI\/AAAAAAAABYU\/3Zl3HNPL1fQ\/s400\/1.JPG\" alt=\"\" border=\"0\" \/><\/a><\/div>\n<div><\/div>\n<div><\/div>\n<div>OR<\/div>\n<div><\/div>\n<div>&#8211; Not able to get the \u201ccustomdotnetdll\u201d option in the \u201cAction\u201d at Tab level customization as:<\/div>\n<div><\/div>\n<div><a href=\"http:\/\/1.bp.blogspot.com\/-4G9G19CjqlA\/TbV7Tfog23I\/AAAAAAAABYM\/1KkRhU22IDI\/s1600\/2.JPG\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" id=\"BLOGGER_PHOTO_ID_5599517286544235378\" style=\"cursor: pointer; width: 400px; height: 207px;\" src=\"http:\/\/1.bp.blogspot.com\/-4G9G19CjqlA\/TbV7Tfog23I\/AAAAAAAABYM\/1KkRhU22IDI\/s400\/2.JPG\" alt=\"\" border=\"0\" \/><\/a><\/div>\n<div><\/div>\n<div>Now if you are facing this issue then you can try below settings and check:<\/div>\n<div><\/div>\n<div>&#8211; Basically Sage CRM stores the path where we should put the Dot Net Dlls. That path is set in the custom_sysparams table.<\/div>\n<div>&#8211; You have to fire the below query in your CRM database to set the correct path. Generally this path is default to you CRM instance path (e.g. \u201cC:SageCRMCustomDotNet\u201d)<\/div>\n<div><\/div>\n<div>UPDATE custom_sysparams SET parm_value=&#8217;C:SageCRMCustomDotNet&#8217;<\/div>\n<div>WHERE parm_name = &#8216;DotNetDllDirectory&#8217;<\/div>\n<div><\/div>\n<div>&#8211; After this data update, you will have to do CRM metadata refresh and IIS reset.<\/div>\n<div><\/div>\n<div>2. Calling dot net dll at tab level or from within dll methods:<\/div>\n<div><\/div>\n<div>Few days back I was working on the application in which I was supposed to call one dll on a company tab group named as Greytrix.CRM.dll. And the second dll named as CRMProject.dll at Opportunity tab level. I had added the new tab at company level with:<\/div>\n<div><\/div>\n<div>&#8211; Custom Dot Net Dll Name = Greytrix.CRM<\/div>\n<div>&#8211; Method Name = RunCompnayTab<\/div>\n<div><\/div>\n<div>Same way at opportunity level as:<\/div>\n<div><\/div>\n<div>&#8211; Custom Dot Net Dll Name = Project<\/div>\n<div>&#8211; Method Name = RunCompnayTab<\/div>\n<div><\/div>\n<div>Now here the tab at opportunity level is working fine but at company level I was getting the error message as:<\/div>\n<div><\/div>\n<div><a href=\"http:\/\/2.bp.blogspot.com\/-KVPWjV4sXIQ\/TbV7NmngZbI\/AAAAAAAABYE\/xySnObjr0jk\/s1600\/3.JPG\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" id=\"BLOGGER_PHOTO_ID_5599517185339844018\" style=\"cursor: pointer; width: 400px; height: 72px;\" src=\"http:\/\/2.bp.blogspot.com\/-KVPWjV4sXIQ\/TbV7NmngZbI\/AAAAAAAABYE\/xySnObjr0jk\/s400\/3.JPG\" alt=\"\" border=\"0\" \/><\/a><\/div>\n<div><\/div>\n<div>After some investigation I came to know that if the DLL name contains the \u201c.\u201d in the name itself (like Greytrix.CRM) then we have to use it with \u201c.dll\u201d (like Greytrix.CRM.dll). These steps should also be followed whether preparing URLs in the solution code.<\/div>\n<p><b>If you find this content useful, please drop us an email at <a title=\"mailto:crm@greytrix.com\" href=\"mailto:crm@greytrix.com\">crm@greytrix.com<\/a>. <\/b><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In my past blog posts, I had mainly concentrated on the data security and management. I this post I will talk more about code base security. In day to day life the code security is most important task of management. Sage CRM has incorporated code base security by using .Net API. From Sage CRM 6.1\u2026 <span class=\"read-more\"><a href=\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/\">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":[1],"tags":[2488],"class_list":["post-312","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Sage CRM .Net API Check Points<\/title>\n<meta name=\"description\" content=\"Sage CRM has incorporated code base security by using .Net API. From Sage CRM 6.1 version Sage has provided .Net API which has made coding as well as life easiest.\" \/>\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\/2011\/04\/25\/sage-crm-net-api-check-points\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sage CRM .Net API Check Points\" \/>\n<meta property=\"og:description\" content=\"Sage CRM has incorporated code base security by using .Net API. From Sage CRM 6.1 version Sage has provided .Net API which has made coding as well as life easiest.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/\" \/>\n<meta property=\"og:site_name\" content=\"Sage CRM \u2013 Tips, Tricks and Components\" \/>\n<meta property=\"article:published_time\" content=\"2011-04-25T13:35:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-01-27T11:25:18+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/1.bp.blogspot.com\/-gUwRikC9At8\/TbV7cL8tUfI\/AAAAAAAABYU\/3Zl3HNPL1fQ\/s400\/1.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=\"3 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\/2011\/04\/25\/sage-crm-net-api-check-points\/\",\"url\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/\",\"name\":\"Sage CRM .Net API Check Points\",\"isPartOf\":{\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/1.bp.blogspot.com\/-gUwRikC9At8\/TbV7cL8tUfI\/AAAAAAAABYU\/3Zl3HNPL1fQ\/s400\/1.JPG\",\"datePublished\":\"2011-04-25T13:35:00+00:00\",\"dateModified\":\"2025-01-27T11:25:18+00:00\",\"author\":{\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#\/schema\/person\/e7ff1c8f4763b47730d6bc5e74d59c1f\"},\"description\":\"Sage CRM has incorporated code base security by using .Net API. From Sage CRM 6.1 version Sage has provided .Net API which has made coding as well as life easiest.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/#primaryimage\",\"url\":\"http:\/\/1.bp.blogspot.com\/-gUwRikC9At8\/TbV7cL8tUfI\/AAAAAAAABYU\/3Zl3HNPL1fQ\/s400\/1.JPG\",\"contentUrl\":\"http:\/\/1.bp.blogspot.com\/-gUwRikC9At8\/TbV7cL8tUfI\/AAAAAAAABYU\/3Zl3HNPL1fQ\/s400\/1.JPG\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.greytrix.com\/blogs\/sagecrm\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sage CRM .Net API Check Points\"}]},{\"@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":"Sage CRM .Net API Check Points","description":"Sage CRM has incorporated code base security by using .Net API. From Sage CRM 6.1 version Sage has provided .Net API which has made coding as well as life easiest.","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\/2011\/04\/25\/sage-crm-net-api-check-points\/","og_locale":"en_US","og_type":"article","og_title":"Sage CRM .Net API Check Points","og_description":"Sage CRM has incorporated code base security by using .Net API. From Sage CRM 6.1 version Sage has provided .Net API which has made coding as well as life easiest.","og_url":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/","og_site_name":"Sage CRM \u2013 Tips, Tricks and Components","article_published_time":"2011-04-25T13:35:00+00:00","article_modified_time":"2025-01-27T11:25:18+00:00","og_image":[{"url":"http:\/\/1.bp.blogspot.com\/-gUwRikC9At8\/TbV7cL8tUfI\/AAAAAAAABYU\/3Zl3HNPL1fQ\/s400\/1.JPG","type":"","width":"","height":""}],"author":"greysagecrm","twitter_card":"summary_large_image","twitter_misc":{"Written by":"greysagecrm","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/","url":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/","name":"Sage CRM .Net API Check Points","isPartOf":{"@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/#primaryimage"},"image":{"@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/#primaryimage"},"thumbnailUrl":"http:\/\/1.bp.blogspot.com\/-gUwRikC9At8\/TbV7cL8tUfI\/AAAAAAAABYU\/3Zl3HNPL1fQ\/s400\/1.JPG","datePublished":"2011-04-25T13:35:00+00:00","dateModified":"2025-01-27T11:25:18+00:00","author":{"@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/#\/schema\/person\/e7ff1c8f4763b47730d6bc5e74d59c1f"},"description":"Sage CRM has incorporated code base security by using .Net API. From Sage CRM 6.1 version Sage has provided .Net API which has made coding as well as life easiest.","breadcrumb":{"@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/#primaryimage","url":"http:\/\/1.bp.blogspot.com\/-gUwRikC9At8\/TbV7cL8tUfI\/AAAAAAAABYU\/3Zl3HNPL1fQ\/s400\/1.JPG","contentUrl":"http:\/\/1.bp.blogspot.com\/-gUwRikC9At8\/TbV7cL8tUfI\/AAAAAAAABYU\/3Zl3HNPL1fQ\/s400\/1.JPG"},{"@type":"BreadcrumbList","@id":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/2011\/04\/25\/sage-crm-net-api-check-points\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/"},{"@type":"ListItem","position":2,"name":"Sage CRM .Net API Check Points"}]},{"@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\/312","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=312"}],"version-history":[{"count":1,"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/posts\/312\/revisions"}],"predecessor-version":[{"id":29111,"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/posts\/312\/revisions\/29111"}],"wp:attachment":[{"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/media?parent=312"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/categories?post=312"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.greytrix.com\/blogs\/sagecrm\/wp-json\/wp\/v2\/tags?post=312"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}