{"id":1902,"date":"2019-03-25T17:37:10","date_gmt":"2019-03-25T20:37:10","guid":{"rendered":"http:\/\/xexeu.elipse.com.br\/pt\/kb27883-copiando-registros-do-access-para-o-oracle\/"},"modified":"2019-03-25T17:37:10","modified_gmt":"2019-03-25T20:37:10","slug":"kb27883-copiando-registros-do-access-para-o-oracle","status":"publish","type":"post","link":"https:\/\/kb.elipse.com.br\/en\/kb27883-copiando-registros-do-access-para-o-oracle\/","title":{"rendered":"KB-27883: Copiando registros do Access para o Oracle."},"content":{"rendered":"<div style=\"text-align:justify;\"><span style=\"font-weight:bold;\">Descri\u00e7\u00e3o:<\/span><\/p>\n<p>Como copiar os alarmes que est\u00e3o sendo gravados em um Banco de Dados Access para o Oracle?<\/p>\n<p><span style=\"font-weight:bold;\">Solu\u00e7\u00e3o<\/span>:<\/p>\n<p>Para isso, deve-se utilizar um objeto Consulta no Servidor de Dados para buscar os registros do Access e atualizar a tabela do Oracle periodicamente. <\/p>\n<p>Portanto, deve-se criar um Hist\u00f3rico vinculado a uma tabela previamente criada no Oracle que tenha os mesmos campos do Hist\u00f3rico de alarmes, al\u00e9m de Tags Internos a serem associados a cada um desses campos, e um script no Servidor de Dados que seja executado em intervalos definidos. <\/p>\n<p>Esse script deve fazer o seguinte:<\/p>\n<ul>\n<li>Buscar os registros da tabela do Access usando o m\u00e9todo <span style=\"font-style:italic;\">GetADORecordset <\/span>da Consulta;<\/li>\n<li>Escrever na tabela do Oracle usando o m\u00e9todo <span style=\"font-style:italic;\">WriteRecord <\/span>do Hist\u00f3rico;<\/li>\n<li>Guardar o TimeStamp do \u00faltimo registro em um tag do Servidor de Dados para que a pr\u00f3xima consulta seja feita a partir dele, de forma que os registros n\u00e3o sejam duplicados na tabela do Oracle.<\/li>\n<\/ul>\n<p>No fim do script, deve-se usar um comando <span style=\"font-style:italic;\">Save <\/span>na Pasta de Dados para que o tag mantenha o valor mesmo quando o Dom\u00ednio \u00e9 parado. <\/p>\n<p>\u00c9 importante ressaltar que o filtro da consulta do script deve ser feito baseado no <span style=\"font-style:italic;\">E3TimeStamp<\/span>, e n\u00e3o no <span style=\"font-style:italic;\">InTime<\/span>, para que nenhum registro seja perdido.<\/p>\n<p>Abaixo, pode-se ver um exemplo desse script: \n<\/div>\n<blockquote style=\"margin-right:0px;font-family:Courier New;color:rgb(0, 0, 0);\" dir=\"ltr\">\n<p>Sub DataServer_OnMinuteChanging()<br \/>&nbsp;&nbsp;&nbsp;&nbsp; set query = Item(&#8220;QueryDB1&#8221;)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8216;Sets the query date and time filter to&nbsp;return only new records<br \/>&nbsp;&nbsp;&nbsp;&nbsp; query.SetVariableValue &#8220;InitialDate&#8221;, Item(&#8220;LastTime&#8221;).Value<br \/>&nbsp;&nbsp;&nbsp;&nbsp; set rs = query.GetADORecordset()<br \/>&nbsp;&nbsp;&nbsp;&nbsp; if rs.RecordCount > 0 then<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rs.MoveFirst<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for aux = 1 to rs.RecordCount<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8216;Moves data from the query (DB1) to the tags linked to Historic (DB2)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Item(&#8220;TagsDB2&#8221;).Item(&#8220;E3TimeStamp&#8221;).Value = CDate(rs.Fields.Item(&#8220;E3TimeStamp&#8221;).Value)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Item(&#8220;TagsDB2&#8221;).Item(&#8220;InTime&#8221;).Value = CDate(rs.Fields.Item(&#8220;InTime&#8221;).Value)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Item(&#8220;TagsDB2&#8221;).Item(&#8220;Message&#8221;).Value = CStr(rs.Fields.Item(&#8220;Message&#8221;).Value)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Application.GetObject(&#8220;HistDB2&#8221;).WriteRecord()<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8216;Saves timestamp from the last record to use in the next execution<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Item(&#8220;LastTime&#8221;).Value = CDate(rs.Fields.Item(&#8220;E3TimeStamp&#8221;).Value)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rs.MoveNext<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; next<br \/>&nbsp;&nbsp;&nbsp;&nbsp; end if<br \/>&nbsp;&nbsp;&nbsp;&nbsp; Save()<br \/>End Sub<\/p>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Descri\u00e7\u00e3o: Como copiar os alarmes que est\u00e3o sendo gravados em um Banco de Dados Access para o Oracle? Solu\u00e7\u00e3o: Para isso, deve-se utilizar um objeto Consulta no Servidor de Dados&hellip;<\/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":[583,610],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>KB-27883: Copiando registros do Access para o Oracle. - 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\/kb27883-copiando-registros-do-access-para-o-oracle\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"KB-27883: Copiando registros do Access para o Oracle.\" \/>\n<meta property=\"og:description\" content=\"Descri\u00e7\u00e3o: Como copiar os alarmes que est\u00e3o sendo gravados em um Banco de Dados Access para o Oracle? Solu\u00e7\u00e3o: Para isso, deve-se utilizar um objeto Consulta no Servidor de Dados&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/\" \/>\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:37:10+00:00\" \/>\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=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/\"},\"author\":{\"name\":\"Elipse Software\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87\"},\"headline\":\"KB-27883: Copiando registros do Access para o Oracle.\",\"datePublished\":\"2019-03-25T20:37:10+00:00\",\"dateModified\":\"2019-03-25T20:37:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/\"},\"wordCount\":529,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\"},\"articleSection\":[\"DataBases\",\"Scripts\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/\",\"url\":\"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/\",\"name\":\"[:pt]KB-27883: Copiando registros do Access para o Oracle.[:] - Elipse Knowledgebase\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#website\"},\"datePublished\":\"2019-03-25T20:37:10+00:00\",\"dateModified\":\"2019-03-25T20:37:10+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/kb.elipse.com.br\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"KB-27883: Copiando registros do Access para o Oracle.\"}]},{\"@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":"KB-27883: Copiando registros do Access para o Oracle. - 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\/kb27883-copiando-registros-do-access-para-o-oracle\/","og_locale":"en_US","og_type":"article","og_title":"[:pt]KB-27883: Copiando registros do Access para o Oracle.[:] - Elipse Knowledgebase","og_description":"Descri\u00e7\u00e3o: Como copiar os alarmes que est\u00e3o sendo gravados em um Banco de Dados Access para o Oracle? Solu\u00e7\u00e3o: Para isso, deve-se utilizar um objeto Consulta no Servidor de Dados&hellip;","og_url":"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/","og_site_name":"Elipse Knowledgebase","article_publisher":"http:\/\/www.facebook.com\/elipsesoftware","article_published_time":"2019-03-25T20:37:10+00:00","author":"Elipse Software","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Elipse Software","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/#article","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/"},"author":{"name":"Elipse Software","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87"},"headline":"KB-27883: Copiando registros do Access para o Oracle.","datePublished":"2019-03-25T20:37:10+00:00","dateModified":"2019-03-25T20:37:10+00:00","mainEntityOfPage":{"@id":"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/"},"wordCount":529,"commentCount":1,"publisher":{"@id":"https:\/\/kb.elipse.com.br\/#organization"},"articleSection":["DataBases","Scripts"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/","url":"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/","name":"[:pt]KB-27883: Copiando registros do Access para o Oracle.[:] - Elipse Knowledgebase","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/#website"},"datePublished":"2019-03-25T20:37:10+00:00","dateModified":"2019-03-25T20:37:10+00:00","breadcrumb":{"@id":"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/kb.elipse.com.br\/kb27883-copiando-registros-do-access-para-o-oracle\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/kb.elipse.com.br\/en\/"},{"@type":"ListItem","position":2,"name":"KB-27883: Copiando registros do Access para o Oracle."}]},{"@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\/1902"}],"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=1902"}],"version-history":[{"count":0,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/1902\/revisions"}],"wp:attachment":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/media?parent=1902"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/categories?post=1902"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/tags?post=1902"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}