{"id":13364,"date":"2022-08-05T11:18:17","date_gmt":"2022-08-05T14:18:17","guid":{"rendered":"http:\/\/kb.elipse.com.br\/en\/?p=13364"},"modified":"2022-12-22T14:08:39","modified_gmt":"2022-12-22T17:08:39","slug":"best-practices-for-developing-elipse-e3-applications","status":"publish","type":"post","link":"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/","title":{"rendered":"Best practices for developing Elipse E3 applications."},"content":{"rendered":"<h2>Introduction<\/h2>\n<p style=\"text-align: justify;\">This article works as a guide to establish and summarize the best practices for developing\u00a0 <a href=\"https:\/\/www.elipse.com.br\/en\/produto\/elipse-e3\/\" target=\"_blank\" rel=\"noopener noreferrer\">Elipse E3<\/a> applications. Based on the software modules, we will list a few articles and useful tips for developing applications with this platform.<\/p>\n<p>&nbsp;<\/p>\n<h2 style=\"text-align: justify;\"><strong>Libraries<\/strong><\/h2>\n<p style=\"text-align: justify;\">There is a set of guidelines for developing high-performance applications; one of these guidelines is the use of Libraries. Due to their complexity and extension, some projects can be developed a lot faster when using object-oriented resources and Elipse E3 libraries, which help create simple, objective projects that require considerably less maintenance.<\/p>\n<p style=\"text-align: justify;\">The following list features some of the articles about this subject in our Knowledgebase:<\/p>\n<ul style=\"text-align: justify;\">\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/developing-objectoriented-applications-in-elipse-e3-part-i\/\" target=\"_blank\" rel=\"noopener noreferrer\">Developing object-oriented applications in Elipse E3 \u2013 Part I.<\/a><\/li>\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/developing-objectoriented-applications-in-elipse-e3-part-ii\/\" target=\"_blank\" rel=\"noopener noreferrer\">Developing object-oriented applications in Elipse E3 \u2013 Part II.<\/a><\/li>\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/using-libraries-in-elipse-e3-introduction\/\" target=\"_blank\" rel=\"noopener noreferrer\">Using Libraries in Elipse E3: Introduction.<\/a><\/li>\n<\/ul>\n<h2><\/h2>\n<h2 style=\"text-align: justify;\">Databases<\/h2>\n<p style=\"text-align: justify;\">Elipse E3 can establish native connection with Access, Oracle, SQL Server, PostgreSQL and MySQL. Each model has its <a href=\"https:\/\/kb.elipse.com.br\/en\/using-databases-in-e3-chapter-1-choosing-the-database\/\" target=\"_blank\" rel=\"noopener noreferrer\">pros and cons<\/a>, and choosing between them will depend on the project&#8217;s purposes.<\/p>\n<p style=\"text-align: justify;\"><b>Historics <\/b>are the modules responsible for storing the application data in a Database for future analyses. They can contain primary <strong>keys<\/strong> and <strong>indexes<\/strong>. Indexes are fields (or sets of fields) previously sorted out by the database in order to improve the performance of the queries using these indexes.<\/p>\n<p style=\"text-align: justify;\">As for <strong>Queries<\/strong>, depending on the volume of data returned or the number of objects with associated queries, the excessive build up of data can cause slowness in the system. In this case, it&#8217;s important to add a <strong>filter<\/strong> with a short time span in the variables that are responsible for filters by date.<\/p>\n<h3>Note<\/h3>\n<p style=\"text-align: justify;\">You should notice that when using a Historic, or when using the Query&#8217;s <strong>Execute<\/strong> method with <strong>ImmediateExecute<\/strong> parameter as <strong>False<\/strong>, the data will pass through the database&#8217;s operation queues\u00a0 (.e3i and .e3o files) asynchronously, which improves the application&#8217;s performance. We don&#8217;t recommend activating the <strong>ImmediateExecute(True)<\/strong> method because it can potentially cause the application to crash due to database disconnection.<\/p>\n<p style=\"text-align: justify;\">The following list features some of the articles about this subject in our Knowledgebase:<\/p>\n<ul style=\"text-align: justify;\">\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/using-databases-in-e3-introduction\/\" target=\"_blank\" rel=\"noopener noreferrer\">Using Databases in E3: Introduction.<\/a><\/li>\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/structure-query-language-sql-chapter-5-best-practices-for-setting-up-historics-and-queries\/\" target=\"_blank\" rel=\"noopener noreferrer\">Structure Query Language (SQL): Chapter 5 \u2013 Best practices for setting up Historics and Queries.<\/a><\/li>\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/structure-query-language-sql-introduction\/\" target=\"_blank\" rel=\"noopener noreferrer\">Structure Query Language (SQL): Introduction.<\/a><\/li>\n<li><a href=\"https:\/\/kb.elipse.com.br\/en\/kb65651-using-the-getasyncadorecordset-method\/\" target=\"_blank\" rel=\"noopener noreferrer\">KB-65651: Using the GetAsyncADORecordSet method.<\/a><\/li>\n<\/ul>\n<h2><\/h2>\n<h2 style=\"text-align: justify;\">Scripts<\/h2>\n<p style=\"text-align: justify;\">Although most VBScript rules apply to programming with scripts in Elipse E3, some peculiarities must be addressed here about implementing object-orientation in the system.<\/p>\n<p style=\"text-align: justify;\">Avoid using cyclical scripts; if you can&#8217;t use associations to achieve the desired results, we recommend creating a user event that will only execute when meeting a certain condition.<\/p>\n<p style=\"text-align: justify;\">The following tutorial illustrates how to use VBScript in Elipse E3 via practical examples and exercises; it should help the user establish their own best practices for scripts development.<\/p>\n<ul>\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/basic-vbscript-for-elipse-e3-introduction\/\">Basic VBScript for Elipse E3: Introduction<\/a><\/li>\n<\/ul>\n<h2><\/h2>\n<h2 style=\"text-align: justify;\">Communication<\/h2>\n<p style=\"text-align: justify;\">To ensure the application&#8217;s good communication performance, we must take a series of factors into account, such as: equipment type, communication interface type, baud rate, errors rate, etc. Additionally, for better performance, you can configure some of the options directly in the I\/O driver.<\/p>\n<h3 style=\"text-align: justify;\">Driver&#8217;s <em><strong>WriteSyncMode<\/strong><\/em> property<\/h3>\n<p style=\"text-align: justify;\">This property establishes how writes are sent to the IOServer (synchronous or asynchronous mode). When the application&#8217;s communication underperforms, you can edit the property to unconfirmed asynchronous mode (<strong>2 &#8211; wsmAsyncUnconfirmed<\/strong>). With unconfirmed asynchronous write, E3Run sends the information to the I\/O Server and doesn&#8217;t await response; in this case, the system assumes the write has worked. Then, the application is immediately released to follow its natural course.<\/p>\n<h3 style=\"text-align: justify;\">Driver&#8217;s <em><strong>WriteFeedBackMode<\/strong><\/em> property<\/h3>\n<p style=\"text-align: justify;\">This property allows controlling feedback from writes in I\/O Tags. It only applies to readable I\/O Tags, that it, tags whose <strong>AllowRead<\/strong> property is set as True. Therefore, when the application underperforms, you can edit this property as <strong>0 &#8211; wfWaitNextRead<\/strong>; in this case, the I\/O Tag will be read normally in the next scan.<\/p>\n<h3 style=\"text-align: justify;\">Driver&#8217;s <em><strong>EnableReadGrouping<\/strong><\/em> property<\/h3>\n<p style=\"text-align: justify;\">This property allows read optimization or automatic grouping in I\/O Tags. It can&#8217;t be edited when the driver is running, and the default value is True. Read optimization will only take place if the I\/O driver supports this resource.<\/p>\n<p style=\"text-align: justify;\">However, you should notice that grouping (<strong>EnableReadGrouping<\/strong>) in Elipse E3 requires a device that supports the established limits. But some equipment will only support inferior limits. In order to group tags successfully in these cases, there are drivers (such as<em> Modicon Modbus Master ASC\/RTU\/TCP driver<\/em>) that allow customizing higher limits of supported data bytes, depending on the type of communication.<\/p>\n<p style=\"text-align: left;\">With<strong> Modbus driver<\/strong>, you can set this up at <strong><em>Customize Max. PDU Size<\/em><\/strong><em>; <\/em>with<strong> BACnet driver<\/strong>, choose the option <em><strong>Maximum number of properties per ReadPropertyMultiple request<\/strong>;<\/em> finally, when using<strong> Allen Bradley DF1 driver<\/strong>, access <em><strong>Max Message Bytes. <\/strong><\/em>Therefore, always check for this setting&#8217;s availability in your driver.<\/p>\n<h3><\/h3>\n<h3 style=\"text-align: justify;\"><strong>IOServer process pool<\/strong><\/h3>\n<p style=\"text-align: justify;\">In applications with hundreds of drivers, the amount of resources required to execute the IOServer processes in each driver can exhaust the operating system&#8217;s capacity. In these cases, you may need to enable the<strong> IOServer process pool<\/strong>; to do so, go the the Domain&#8217;s settings and check the option on <strong>Properties<\/strong> tab.<\/p>\n<p style=\"text-align: justify;\">The following list features some of the articles about this subject in our Knowledgebase:<\/p>\n<ul>\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/tag-writing-in-elipse-e3\/\" target=\"_blank\" rel=\"noopener noreferrer\">Tag writing in Elipse E3.<\/a><\/li>\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/kb31875-prioritizing-tag-update\/\" target=\"_blank\" rel=\"noopener noreferrer\">KB-31875: Prioritizing tag update.<\/a><\/li>\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/pool-of-ioserver-processes\/\" target=\"_blank\" rel=\"noopener noreferrer\">Pool of IOServer Processes.<\/a><\/li>\n<li><a href=\"https:\/\/kb.elipse.com.br\/en\/disabling-tags-from-a-plc-that-has-failed\/\">Disabling tags from a PLC that has failed.<\/a><\/li>\n<\/ul>\n<h2><\/h2>\n<h2 style=\"text-align: justify;\">Visual interface design<\/h2>\n<p style=\"text-align: justify;\">It&#8217;s not unusual for visual interfaces to be designed by engineers or technicians working in the plant, and not by professional designers. However, not all engineers and technicians are well versed in design studies, which encompass notions of psychology and cognitive sciences that guide the development of modern interfaces.<\/p>\n<p style=\"text-align: justify;\">The <strong>HighPerformance Template<\/strong> library for Elipse E3 or Elipse Power is a template for the application that summarizes the state of the art of modern design trends and applies them to the development of industrial interfaces.<\/p>\n<ul>\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/methodology-for-developing-hmis-with-high-visual-performance\/\" target=\"_blank\" rel=\"noopener noreferrer\">Methodology for Developing HMIs with High Visual Performance.<\/a><\/li>\n<\/ul>\n<h2><\/h2>\n<h2 style=\"text-align: justify;\">Overall<\/h2>\n<p style=\"text-align: justify;\">In order to develop faster applications, which won&#8217;t take long to open screens and animations, or won&#8217;t hang or crash, we recommend reading the following article. It summarizes the most valuable development tips to ensure that your Elipse E3 applications will perform smoothly and avoid any slowness issues.<\/p>\n<ul>\n<li style=\"text-align: justify;\"><a href=\"https:\/\/kb.elipse.com.br\/en\/performance-tips-for-e3\/\" target=\"_blank\" rel=\"noopener noreferrer\">Performance tips for Elipse E3.<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Introduction This article works as a guide to establish and summarize the best practices for developing\u00a0 Elipse E3 applications. Based on the software modules, we will list a few articles&hellip;<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0},"categories":[730],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Best practices for developing Elipse E3 applications.<\/title>\n<meta name=\"description\" content=\"This article works as a guide for establishing and kickstarting the best practices for developing applications for Elipse E3.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Best practices for developing Elipse E3 applications.\" \/>\n<meta property=\"og:description\" content=\"This article works as a guide for establishing and kickstarting the best practices for developing applications for Elipse E3.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/\" \/>\n<meta property=\"og:site_name\" content=\"Elipse Knowledgebase\" \/>\n<meta property=\"article:publisher\" content=\"http:\/\/www.facebook.com\/elipsesoftware\" \/>\n<meta property=\"article:published_time\" content=\"2022-08-05T14:18:17+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-12-22T17:08:39+00:00\" \/>\n<meta name=\"author\" content=\"D\u00e9lio Damin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"D\u00e9lio Damin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/\"},\"author\":{\"name\":\"D\u00e9lio Damin\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/be597eff34b5f24af940a55332870778\"},\"headline\":\"Best practices for developing Elipse E3 applications.\",\"datePublished\":\"2022-08-05T14:18:17+00:00\",\"dateModified\":\"2022-12-22T17:08:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/\"},\"wordCount\":1040,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\"},\"articleSection\":[\"Elipse E3\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/\",\"url\":\"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/\",\"name\":\"Best practices for developing Elipse E3 applications.\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#website\"},\"datePublished\":\"2022-08-05T14:18:17+00:00\",\"dateModified\":\"2022-12-22T17:08:39+00:00\",\"description\":\"This article works as a guide for establishing and kickstarting the best practices for developing applications for Elipse E3.\",\"breadcrumb\":{\"@id\":\"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/kb.elipse.com.br\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Best practices for developing Elipse E3 applications.\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kb.elipse.com.br\/#website\",\"url\":\"https:\/\/kb.elipse.com.br\/\",\"name\":\"Elipse Knowledgebase\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kb.elipse.com.br\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\",\"name\":\"Elipse Software\",\"url\":\"https:\/\/kb.elipse.com.br\/\",\"sameAs\":[\"http:\/\/www.facebook.com\/elipsesoftware\"],\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png\",\"contentUrl\":\"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png\",\"width\":161,\"height\":58,\"caption\":\"Elipse Software\"},\"image\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/be597eff34b5f24af940a55332870778\",\"name\":\"D\u00e9lio Damin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/fdf251d36430f8dd22144c3f1bc53376?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/fdf251d36430f8dd22144c3f1bc53376?s=96&d=mm&r=g\",\"caption\":\"D\u00e9lio Damin\"},\"url\":\"https:\/\/kb.elipse.com.br\/en\/author\/delio\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Best practices for developing Elipse E3 applications.","description":"This article works as a guide for establishing and kickstarting the best practices for developing applications for Elipse E3.","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:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/","og_locale":"en_US","og_type":"article","og_title":"Best practices for developing Elipse E3 applications.","og_description":"This article works as a guide for establishing and kickstarting the best practices for developing applications for Elipse E3.","og_url":"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/","og_site_name":"Elipse Knowledgebase","article_publisher":"http:\/\/www.facebook.com\/elipsesoftware","article_published_time":"2022-08-05T14:18:17+00:00","article_modified_time":"2022-12-22T17:08:39+00:00","author":"D\u00e9lio Damin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"D\u00e9lio Damin","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/#article","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/"},"author":{"name":"D\u00e9lio Damin","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/be597eff34b5f24af940a55332870778"},"headline":"Best practices for developing Elipse E3 applications.","datePublished":"2022-08-05T14:18:17+00:00","dateModified":"2022-12-22T17:08:39+00:00","mainEntityOfPage":{"@id":"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/"},"wordCount":1040,"commentCount":0,"publisher":{"@id":"https:\/\/kb.elipse.com.br\/#organization"},"articleSection":["Elipse E3"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/","url":"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/","name":"Best practices for developing Elipse E3 applications.","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/#website"},"datePublished":"2022-08-05T14:18:17+00:00","dateModified":"2022-12-22T17:08:39+00:00","description":"This article works as a guide for establishing and kickstarting the best practices for developing applications for Elipse E3.","breadcrumb":{"@id":"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/kb.elipse.com.br\/en\/best-practices-for-developing-elipse-e3-applications\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/kb.elipse.com.br\/en\/"},{"@type":"ListItem","position":2,"name":"Best practices for developing Elipse E3 applications."}]},{"@type":"WebSite","@id":"https:\/\/kb.elipse.com.br\/#website","url":"https:\/\/kb.elipse.com.br\/","name":"Elipse Knowledgebase","description":"","publisher":{"@id":"https:\/\/kb.elipse.com.br\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kb.elipse.com.br\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/kb.elipse.com.br\/#organization","name":"Elipse Software","url":"https:\/\/kb.elipse.com.br\/","sameAs":["http:\/\/www.facebook.com\/elipsesoftware"],"logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/","url":"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png","contentUrl":"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png","width":161,"height":58,"caption":"Elipse Software"},"image":{"@id":"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/be597eff34b5f24af940a55332870778","name":"D\u00e9lio Damin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/fdf251d36430f8dd22144c3f1bc53376?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fdf251d36430f8dd22144c3f1bc53376?s=96&d=mm&r=g","caption":"D\u00e9lio Damin"},"url":"https:\/\/kb.elipse.com.br\/en\/author\/delio\/"}]}},"_links":{"self":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/13364"}],"collection":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/comments?post=13364"}],"version-history":[{"count":16,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/13364\/revisions"}],"predecessor-version":[{"id":14060,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/13364\/revisions\/14060"}],"wp:attachment":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/media?parent=13364"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/categories?post=13364"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/tags?post=13364"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}