{"id":2597,"date":"2019-03-25T17:40:20","date_gmt":"2019-03-25T20:40:20","guid":{"rendered":"http:\/\/xexeu.elipse.com.br\/pt\/tratamento-de-erros-de-script\/"},"modified":"2022-02-24T11:33:43","modified_gmt":"2022-02-24T14:33:43","slug":"tratamento-de-erros-de-script","status":"publish","type":"post","link":"https:\/\/kb.elipse.com.br\/en\/tratamento-de-erros-de-script\/","title":{"rendered":"Tratamento de erros de script."},"content":{"rendered":"<p style=\"text-align: justify\">Um erro de script pode ocorrer por v\u00e1rios motivos. Alguns exemplos:<\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpFirst\" style=\"text-align: justify\">1) O operador esqueceu de preencher um Setpoint, e pressionou um bot\u00e3o;<br \/>\n2) O script necessitava do valor de um tag de comunica\u00e7\u00e3o, por\u00e9m a conex\u00e3o com o CLP estava interrompida no momento;<br \/>\n3) O script tentou escrever um registro em uma tabela, mas a conex\u00e3o com o Banco estava interrompida no momento.<\/p>\n<div style=\"text-align: justify\"><\/div>\n<div style=\"text-align: justify\">Para qualquer uma destas situa\u00e7\u00f5es, o procedimento padr\u00e3o do vbScript \u00e9: exibir uma mensagem de erro, e abortar o script.<\/div>\n<div><\/div>\n<div style=\"text-align: center\"><img loading=\"lazy\" class=\"aligncenter\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/images\/ID4243\/fig1.JPG\" alt=\"\" width=\"345\" height=\"126\" align=\"bottom\" border=\"0\" \/><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\">Na maioria das vezes, isto se torna bastante inconveniente. O operador pode n\u00e3o entender o que aconteceu. N\u00e3o se sabe se foi uma falha irrelevante, ou um erro grav\u00edssimo.<\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\">Por\u00e9m, o vbScript disp\u00f5e de recursos para que o desenvolvedor crie sua pr\u00f3pria l\u00f3gica de tratamento de erros. Mostraremos alguns deles abaixo.<\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\"><b><span style=\"color: #0000ff\">On Error<\/span> Resume <span style=\"color: #0000ff\">Next<\/span><\/b><\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\">A instru\u00e7\u00e3o On Error serve para indicar qual a\u00e7\u00e3o deve ser tomada pelo VB. No caso de usarmos o \u201cOn Error Resume Next\u201d, a a\u00e7\u00e3o a ser tomada ser\u00e1 simplesmente seguir para a pr\u00f3xima linha. Ou seja, o erro de script \u00e9 ignorado.<\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\">Isto vale para as linhas abaixo da instru\u00e7\u00e3o.<\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\"><b><span style=\"color: #0000ff\">On Error<\/span> Goto 0<\/b><\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\">Esta instru\u00e7\u00e3o anula o \u201cOn Error Resume Next\u201d. Ou seja, nas linhas abaixo do \u201cOn Error Goto 0\u201d, o erro de script ter\u00e1 o tratamento tradicional: mensagem de erro e script abortado.<\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\"><b>Objeto \u201cErr\u201d<\/b><\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\">Este objeto representa o erro de script. Podemos usar suas propriedades para identificar o que aconteceu de errado na execu\u00e7\u00e3o.<\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\">Para entender melhor, vamos usar um exemplo de tratamento de script:<\/p>\n<pre class=\"MsoListParagraphCxSpMiddle\" style=\"color: #000000;background-color: #ffffff;font-family: Courier New\">'A partir desta linha, os erros s\u00e3o ignorados\r\nOn Error Resume Next\r\n\r\nApplication.GetObject(\"Dados.TagInexistente1\").Value = 1\r\nApplication.GetObject(\"Dados.TagInexistente2\").Value = 1\r\nApplication.GetObject(\"Dados.TagInexistente3\").Value = 1\r\n'\u2026\r\n'\u2026\r\n\r\n<span style=\"color: #000000;background-color: #ffffff;font-family: Courier New\">If Err.Number <> 0 then\r\nMsgBox \"Aten\u00e7\u00e3o: ocorreu um erro na execu\u00e7\u00e3o deste script: \" & vbNewLine &_\r\nErr.Number & \"-\" & Err.Description & vbNewLine &_\r\n\"Entre em contato com o desenvolvedor respons\u00e1vel.\"\r\n<\/span><span style=\"font-family: Courier New;color: #000000\"><span style=\"background-color: #ffffff\">End If<\/span><\/span><i>\r\n\r\n<\/i><\/pre>\n<div style=\"text-align: center\"><i><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/images\/ID4243\/fig2.JPG\" alt=\"\" width=\"536\" height=\"146\" align=\"bottom\" border=\"0\" \/><\/i><br \/>\n<i><\/i><\/div>\n<p>&nbsp;<\/p>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\"><b><span style=\"color: #0000ff\">Exit Sub<\/span><\/b><\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\">A instru\u00e7\u00e3o \u201cExit Sub\u201d serve para abortar o script.<\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\">Vamos mostrar um exemplo de tratamento de script, mostrando que pode-se prever o erro de script sem usar as instru\u00e7\u00f5es citadas anteriormente.<\/p>\n<pre class=\"MsoListParagraphCxSpMiddle\" style=\"color: #000000;background-color: #ffffff;font-family: Courier New\">If Screen.Item(\"Setpoint1\").Value = \"\" then\r\nMsgBox \"Preencha o Setpoint antes de pressionar o bot\u00e3o!\"\r\nExit Sub\r\nEnd If\r\n\r\n'...\r\n'resto do script\r\n'...<\/pre>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-align: justify\">O exemplo acima resolveria a situa\u00e7\u00e3o 1), citada no in\u00edcio do artigo.<\/p>\n<div style=\"text-align: justify\"><\/div>\n<p class=\"MsoListParagraphCxSpLast\" style=\"text-align: justify\">Para mais informa\u00e7\u00f5es sobre as instru\u00e7\u00f5es do vbScript, consulte o <span style=\"font-weight: bold\">Guia de Refer\u00eancia do vbScript<\/span>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Um erro de script pode ocorrer por v\u00e1rios motivos. Alguns exemplos:<\/p>\n<p>1) O operador esqueceu de preencher um Setpoint, e pressionou um bot\u00e3o;<br \/>\n2) O script necessitava do valor de um tag de comunica\u00e7\u00e3o, por\u00e9m a conex\u00e3o com o CLP estava interrompida no momento;<br \/>\nAutor<br \/>\nMateus Machado<\/p>\n","protected":false},"author":1,"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":[610],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Tratamento de erros de script. - Elipse Knowledgebase<\/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:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tratamento de erros de script.\" \/>\n<meta property=\"og:description\" content=\"Um erro de script pode ocorrer por v\u00e1rios motivos. Alguns exemplos:  1) O operador esqueceu de preencher um Setpoint, e pressionou um bot\u00e3o; 2) O script necessitava do valor de um tag de comunica\u00e7\u00e3o, por\u00e9m a conex\u00e3o com o CLP estava interrompida no momento; Autor Mateus Machado\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/\" \/>\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=\"2019-03-25T20:40:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-02-24T14:33:43+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/kb.elipse.com.br\/images\/ID4243\/fig1.JPG\" \/>\n<meta name=\"author\" content=\"Elipse Software\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Elipse Software\" \/>\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\":\"Article\",\"@id\":\"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/\"},\"author\":{\"name\":\"Elipse Software\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87\"},\"headline\":\"Tratamento de erros de script.\",\"datePublished\":\"2019-03-25T20:40:20+00:00\",\"dateModified\":\"2022-02-24T14:33:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/\"},\"wordCount\":348,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\"},\"articleSection\":[\"Scripts\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/\",\"url\":\"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/\",\"name\":\"[:pt]Tratamento de erros de script.[:] - Elipse Knowledgebase\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#website\"},\"datePublished\":\"2019-03-25T20:40:20+00:00\",\"dateModified\":\"2022-02-24T14:33:43+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/kb.elipse.com.br\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tratamento de erros de script.\"}]},{\"@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\/def69ea453ea60b250497b89225a9f87\",\"name\":\"Elipse Software\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g\",\"caption\":\"Elipse Software\"},\"url\":\"https:\/\/kb.elipse.com.br\/en\/author\/webmasterelipse-com-br\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Tratamento de erros de script. - Elipse Knowledgebase","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\/tratamento-de-erros-de-script\/","og_locale":"en_US","og_type":"article","og_title":"[:pt]Tratamento de erros de script.[:] - Elipse Knowledgebase","og_description":"[:pt]Um erro de script pode ocorrer por v\u00e1rios motivos. Alguns exemplos:  1) O operador esqueceu de preencher um Setpoint, e pressionou um bot\u00e3o; 2) O script necessitava do valor de um tag de comunica\u00e7\u00e3o, por\u00e9m a conex\u00e3o com o CLP estava interrompida no momento; Autor Mateus Machado[:]","og_url":"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/","og_site_name":"Elipse Knowledgebase","article_publisher":"http:\/\/www.facebook.com\/elipsesoftware","article_published_time":"2019-03-25T20:40:20+00:00","article_modified_time":"2022-02-24T14:33:43+00:00","og_image":[{"url":"http:\/\/kb.elipse.com.br\/images\/ID4243\/fig1.JPG"}],"author":"Elipse Software","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Elipse Software","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/#article","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/"},"author":{"name":"Elipse Software","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87"},"headline":"Tratamento de erros de script.","datePublished":"2019-03-25T20:40:20+00:00","dateModified":"2022-02-24T14:33:43+00:00","mainEntityOfPage":{"@id":"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/"},"wordCount":348,"commentCount":1,"publisher":{"@id":"https:\/\/kb.elipse.com.br\/#organization"},"articleSection":["Scripts"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/","url":"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/","name":"[:pt]Tratamento de erros de script.[:] - Elipse Knowledgebase","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/#website"},"datePublished":"2019-03-25T20:40:20+00:00","dateModified":"2022-02-24T14:33:43+00:00","breadcrumb":{"@id":"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/kb.elipse.com.br\/tratamento-de-erros-de-script\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/kb.elipse.com.br\/en\/"},{"@type":"ListItem","position":2,"name":"Tratamento de erros de script."}]},{"@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\/def69ea453ea60b250497b89225a9f87","name":"Elipse Software","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g","caption":"Elipse Software"},"url":"https:\/\/kb.elipse.com.br\/en\/author\/webmasterelipse-com-br\/"}]}},"_links":{"self":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/2597"}],"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\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/comments?post=2597"}],"version-history":[{"count":8,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/2597\/revisions"}],"predecessor-version":[{"id":12808,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/2597\/revisions\/12808"}],"wp:attachment":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/media?parent=2597"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/categories?post=2597"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/tags?post=2597"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}