{"id":42178,"date":"2018-12-06T10:31:18","date_gmt":"2018-12-06T02:31:18","guid":{"rendered":"http:\/\/localhost\/help\/?page_id=42178"},"modified":"2020-11-11T17:46:54","modified_gmt":"2020-11-11T09:46:54","slug":"validating-the-logic-of-a-process","status":"publish","type":"page","link":"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/creating-user-processes\/validating-the-logic-of-a-process\/","title":{"rendered":"Validating the Logic of a Process"},"content":{"rendered":"\n<p class=\"intro-text\">Before you use a <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/creating-user-processes\/creating-a-new-user-process\/\">user process<\/a> in Sentinel, you must validate the <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/sentinel-studio-primers\/building-logical-processes\/\">logic of the process<\/a> to make sure it works.<\/p>\n<p class=\"note\">Note: The validation function cannot check for input values that are to be provided at run time. E.g. That the correct index number is supplied.<\/p>\n<ul>\n<li class=\"intro-text\">To validate your process logic, click <em>Debug &gt; Build and Validate<\/em> from the menu.<\/li>\n<\/ul>\n<p class=\"intro-text\">The validation may require several iterations, depending on the complexity of the process, and is performed in two main phases:<\/p>\n<p class=\"intro-text\"><strong>Phase 1<\/strong>:<\/p>\n<ul>\n<li class=\"intro-text\">Check for <strong>metadata<\/strong> in all components that have metadata specified in the properties panel.<\/li>\n<li class=\"intro-text\">Expand the <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/creating-user-processes\/creating-sub-modules\/\"><strong>sub-modules<\/strong><\/a> into the main process and check that the connections and data types are valid.<\/li>\n<\/ul>\n<p class=\"intro-text\"><strong>Phase 2<\/strong>:<\/p>\n<ul>\n<li class=\"intro-text\">Check that <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/component-logic-functions\/event\/\">event<\/a> components are connected to the <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/sentinel-studio-features\/inputs\/\">Primary Input<\/a>, directly or as part of the flow.<\/li>\n<li class=\"intro-text\">Check that <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/component-logic-functions\/data\/#Get_Window\">windowing<\/a> components have the Data Windowing Type set to Data Points or Time Period.<\/li>\n<li class=\"intro-text\">Validate data types on <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/sentinel-studio-features\/components-and-pins\/\">pins<\/a> that can accept multiple data types.<\/li>\n<li class=\"intro-text\">Check that all input pins, flow pins, and output pins are connected, if required by the component.<\/li>\n<li class=\"intro-text\">Check that the data type at each end of every input and output connection for the component is resolved down to a specific data type.<\/li>\n<li class=\"intro-text\">Check that any write <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/component-logic-functions\/memory\/\">memory<\/a> component has at least one corresponding read memory component.<\/li>\n<li class=\"intro-text\">Check that any read or delete memory components have at least one corresponding write memory component.<\/li>\n<li class=\"intro-text\">Check for matching data types of all memory components in a given memory key.<\/li>\n<\/ul>\n<p class=\"intro-text\">The information panel at the bottom of the screen displays all the debugging information from the <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/creating-user-processes\/how-to-test-a-process\/interpreting-the-validation-and-test-results\/\">validation test<\/a>.<\/p>\n<p class=\"intro-text\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-43062 size-full\" src=\"https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-40.png\" alt=\"\" width=\"214\" height=\"128\" srcset=\"https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-40.png 214w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-40-150x90.png 150w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-40-24x14.png 24w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-40-36x22.png 36w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-40-48x29.png 48w\" sizes=\"auto, (max-width: 214px) 100vw, 214px\" \/> <img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-43063 size-full\" src=\"https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-46.png\" alt=\"\" width=\"225\" height=\"126\" srcset=\"https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-46.png 225w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-46-150x84.png 150w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-46-24x13.png 24w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-46-36x20.png 36w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-46-48x27.png 48w\" sizes=\"auto, (max-width: 225px) 100vw, 225px\" \/> <img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-43064 size-full\" src=\"https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-47.png\" alt=\"\" width=\"222\" height=\"128\" srcset=\"https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-47.png 222w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-47-150x86.png 150w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-47-24x14.png 24w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-47-36x21.png 36w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-47-48x28.png 48w\" sizes=\"auto, (max-width: 222px) 100vw, 222px\" \/><\/p>\n<p class=\"intro-text\">For the process to be usable in Sentinel, you must eliminate all errors.<\/p>\n<p class=\"intro-text\">Warnings will not prevent the process from working, and are provided for information purposes only. However, you should investigate all warnings and remove as many as possible to ensure your logic is correct. Some warnings may point to areas which may cause unintended logic or flow.<\/p>\n<h2 class=\"page-subheading\">Eliminating Errors<\/h2>\n<p class=\"intro-text\">All errors and warnings correspond to a particular component.<\/p>\n<ul>\n<li class=\"intro-text\"><strong>Double-click<\/strong> the error or warning in the information panel, to take you directly to the component in question.<\/li>\n<\/ul>\n<p class=\"intro-text\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-43065 size-full\" src=\"https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-48.png\" alt=\"\" width=\"744\" height=\"322\" srcset=\"https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-48.png 744w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-48-150x65.png 150w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-48-24x10.png 24w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-48-36x16.png 36w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-48-48x21.png 48w\" sizes=\"auto, (max-width: 744px) 100vw, 744px\" \/><\/p>\n<p class=\"intro-text\">The message itself tells you what the problem is. Errors may occur if:<\/p>\n<ul>\n<li class=\"intro-text\">Required <strong>metadata<\/strong> is not filled in or is filled in incorrectly.<\/li>\n<li class=\"intro-text\"><strong>Sub-modules<\/strong> are not correctly connected, internally or externally.<\/li>\n<li class=\"intro-text\">The primary <strong>input<\/strong> is not available to <strong>event<\/strong> components.<\/li>\n<li class=\"intro-text\">For the <strong>window<\/strong> components, the Data Windowing Type property is set to <em>None.<\/em><\/li>\n<li class=\"intro-text\">A component does not have its <strong>input<\/strong> pin connected, if required.<\/li>\n<li class=\"intro-text\">A component does not have its <strong>flow<\/strong> pin connected, if required.<\/li>\n<li class=\"intro-text\">The <strong>data type<\/strong> at each end of every input and output connection for the component does not resolve down to a specific data type.<\/li>\n<li class=\"intro-text\">A write <strong>memory<\/strong> component does not have at least one corresponding read memory component, for a particular memory key.<\/li>\n<li class=\"intro-text\">A <strong>read<\/strong> or <strong>delete<\/strong> memory component does not have at least one corresponding write memory component, for a particular memory key.<\/li>\n<li class=\"intro-text\">Data types of all memory components in a given <strong>memory key<\/strong> do not match.<\/li>\n<\/ul>\n<p class=\"intro-text\">In the above example, the output pin of the <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/component-logic-functions\/logging\/\">Log<\/a> component is not connected to anything. Although the process will still work with this warning, you can remove the warning by using the <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/component-logic-functions\/flow\/#End\">End<\/a> component, as follows:<\/p>\n<p class=\"intro-text\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-43066 size-full\" src=\"https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-49.png\" alt=\"\" width=\"187\" height=\"79\" srcset=\"https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-49.png 187w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-49-150x63.png 150w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-49-24x10.png 24w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-49-36x15.png 36w, https:\/\/oihelp.corporate.ifs.com\/help\/wp-content\/uploads\/2018\/12\/word-image-49-48x20.png 48w\" sizes=\"auto, (max-width: 187px) 100vw, 187px\" \/><\/p>\n<p class=\"intro-text\">When you re-validate, the warnings will disappear.<\/p>\n<p class=\"left-bar\">Related: <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/sentinel-studio-primers\/\">Sentinel Studio Primers<\/a>,\u00a0<a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/creating-user-processes\/creating-a-new-user-process\/\">Creating a User Process<\/a>, <a href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/component-logic-functions\/\">Component Logic Functions<\/a><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Before you use a user process in Sentinel, you must validate the logic of the process in Sentinel Studio to make sure it works.<\/p>\n<p class=\"continue-reading-button\"> <a class=\"continue-reading-link\" href=\"https:\/\/oihelp.corporate.ifs.com\/help\/sentinel\/sentinel-studio\/creating-user-processes\/validating-the-logic-of-a-process\/\">Read more<i class=\"crycon-right-dir\"><\/i><\/a><\/p>\n","protected":false},"author":1,"featured_media":43067,"parent":42146,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":"","_members_access_role":[],"_members_access_error":""},"categories":[9],"tags":[698,417,696,731,705,726,471],"class_list":["post-42178","page","type-page","status-publish","has-post-thumbnail","hentry","category-tech-ref","tag-components-sentinel","tag-error","tag-process-component","tag-process-flow","tag-process-logic","tag-studio-sentinel","tag-validation","Version-4-6-1","Product-sen"],"_links":{"self":[{"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/pages\/42178","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/comments?post=42178"}],"version-history":[{"count":1,"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/pages\/42178\/revisions"}],"predecessor-version":[{"id":46311,"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/pages\/42178\/revisions\/46311"}],"up":[{"embeddable":true,"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/pages\/42146"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/media\/43067"}],"wp:attachment":[{"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/media?parent=42178"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/categories?post=42178"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/oihelp.corporate.ifs.com\/help\/wp-json\/wp\/v2\/tags?post=42178"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}