<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Otimização de Carga de Dados in Brasil</title>
    <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222998#M43166</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Boa tarde Wellington!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Isso mesmo.. por se tratar de utilização direto ao banco de dados, devemos ter mais cuidado com isso..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Na maioria de nossas tabelas / VW, temos o campo DATATU (Data atualização), conforme ocorre uma alteração no registro, o campo é alterado também.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Acredito que podemos nos basear nessa informação.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 14 Dec 2016 16:32:31 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2016-12-14T16:32:31Z</dc:date>
    <item>
      <title>Otimização de Carga de Dados</title>
      <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222992#M43160</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Pessoal, boa tarde!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Qual a melhor maneira para otimizar o tempo da carga de dados?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Estava lendo um pouco sobre os comandos "STORE", "BUFFER LOAD" e por ai vai..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mas não consegui chegar a nenhum caso em que o qvd realize as seguintes operações:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. Carregar todos os dados&lt;/P&gt;&lt;P&gt;2. Carregar os dados incrementais&lt;/P&gt;&lt;P&gt;3. Armazenar no qvd&lt;/P&gt;&lt;P&gt;4. Load qvd&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Não sei se essa seria a melhor maneira de fazer isso, na verdade, não sei como fazer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Alguém poderia me dar uma dica?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Grato!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Dec 2016 16:18:21 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222992#M43160</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-12-07T16:18:21Z</dc:date>
    </item>
    <item>
      <title>Re: Otimização de Carga de Dados</title>
      <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222993#M43161</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Gui,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;o incremental funciona em arquivo txt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Segue um exemplo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Para usar, primeiro leia o TXT1 com e sem buffer para ver o tempo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Depois leia com incremental o TXT1&amp;nbsp; e renomeia o TXT2 para TXT1 e leia novamente e vais ver que sera lido as linhas que estao a mais no TXT2&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;O buffer funciona em banco tambem.&amp;nbsp;&amp;nbsp; O que faz seria ler o banco e salvar um QVD que sera lido enquanto a "validade" nao vencer. Se venceu, le da fonte novamente.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Incremental com banco e QVD tem outras formas......&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Segue um exemplo&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LET v_Tem_VBUK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = if(QvdNoOfRecords('$(vStagePath)VBUK.QVD')&amp;gt;0,1,0);&lt;/P&gt;&lt;P&gt;LET v_VBUK_Data&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = '20140101';&lt;/P&gt;&lt;P&gt;LET v_VBUK_QVD&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0;&lt;/P&gt;&lt;P&gt;LET v_VBUK_RAM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0;&lt;/P&gt;&lt;P&gt;//&lt;/P&gt;&lt;P&gt;if $(v_Tem_VBUK) = 1 then &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; LET v_VBUK_QVD&amp;nbsp;&amp;nbsp;&amp;nbsp; = QvdNoOfRecords('$(vStagePath)VBUK.QVD');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; LET v_VBUK_Data&amp;nbsp;&amp;nbsp; = date((floor(QvdCreateTime('$(vStagePath)VBUK.QVD')) - $(vDiasAMenos) ),'YYYYMMDD');&lt;/P&gt;&lt;P&gt;ELSE&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; TRACE *********************** Nao Achou o QVD do VBUK **********************************;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;ENDIF&lt;/P&gt;&lt;P&gt;//&lt;/P&gt;&lt;P&gt;// &lt;/P&gt;&lt;P&gt;[VBUK]:&lt;/P&gt;&lt;P&gt;SQL Select VBELN GBSTK&amp;nbsp; from VBUK&lt;/P&gt;&lt;P&gt;Where VBELN in (Select VBELN from VBAK Where ERDAT &amp;gt;= '$(v_VBUK_Data)' or AEDAT &amp;gt;= '$(v_VBUK_Data)');&lt;/P&gt;&lt;P&gt;//&lt;/P&gt;&lt;P&gt;if $(v_Tem_VBUK) = 1 then &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TRACE ** Unindo os dados do QVD com a tabela VBUK **;&lt;/P&gt;&lt;P&gt;&amp;nbsp; Concatenate (VBUK)&lt;/P&gt;&lt;P&gt;&amp;nbsp; LOAD * FROM [$(vStagePath)VBUK.QVD] (qvd) Where not Exists(VBELN);&lt;/P&gt;&lt;P&gt;ENDIF&lt;/P&gt;&lt;P&gt;//&lt;/P&gt;&lt;P&gt;STORE VBUK Into&amp;nbsp; $(vStagePath)VBUK.QVD (qvd);&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Dec 2016 17:31:54 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222993#M43161</guid>
      <dc:creator>afurtado</dc:creator>
      <dc:date>2016-12-07T17:31:54Z</dc:date>
    </item>
    <item>
      <title>Re: Otimização de Carga de Dados</title>
      <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222994#M43162</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Alessandro,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ainda estou utilizando a versão gratuita do QLik, não consegui abrir o seu .qvw..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ler o script assim está meio complicado para mim.. não estou conseguindo entender.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Por exemplo, em meu banco de dados (SQL), eu trabalho muito com Views (VW)..&lt;/P&gt;&lt;P&gt;Supondo que a minha base de dados chame VW_TESTE, como ficaria esse script?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Desculpe pela dificuldade, ainda não entendo muito bem.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Dec 2016 11:09:14 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222994#M43162</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-12-13T11:09:14Z</dc:date>
    </item>
    <item>
      <title>Re: Otimização de Carga de Dados</title>
      <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222995#M43163</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Bom dia Gui,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Existem várias formas de se realizar uma carga incremental num qvd:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Adicionar dados novos;&lt;/LI&gt;&lt;LI&gt;Remover dados excluídos;&lt;/LI&gt;&lt;LI&gt;Atualizar dados modificados;&lt;/LI&gt;&lt;LI&gt;E combinações variadas das opções acima.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Para todas essas opções é necessário um campo que pode ser utilizado para verificar o que mudou ou foi excluído como um campo de data/hora e/ou chave primária.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Qual é a sua?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Dec 2016 13:29:19 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222995#M43163</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-12-13T13:29:19Z</dc:date>
    </item>
    <item>
      <title>Re: Otimização de Carga de Dados</title>
      <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222996#M43164</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Bom dia Wellington,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;No meu caso, seria a opção 4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Eu preciso adicionar dados novos e atualizar os dados modificados.&lt;/P&gt;&lt;P&gt;Quero trazer muitas informações para o qvd sem remover nada, apenas incluir novas informações.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Dec 2016 13:41:54 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222996#M43164</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-12-14T13:41:54Z</dc:date>
    </item>
    <item>
      <title>Re: Otimização de Carga de Dados</title>
      <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222997#M43165</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Gui,&lt;/P&gt;&lt;P&gt;Bom dia...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Na minha opinião , essas cargas são das que exigem mais cuidado no desenvolvimento. Guarde cópia do Script e QVDs originais, antes de iniciar a programação. &lt;/P&gt;&lt;P&gt;Você vai precisar de um campo para identificar o que mudou, geralmente campo tipo timestamp, com a gravação da data e hora das alterações no registro. Você tem um campo como esse nas tabelas do seu Banco de Dados? Caso negativo que campo você tem disponível para usar nesse controle?&lt;/P&gt;&lt;P&gt;Me desculpe por todas essas perguntas mas elas são necessárias para não ficarmos escrevendo códigos desnecessários.&lt;/P&gt;&lt;P&gt;Observação: Muitos Bancos de Dados possuem um campo tipo "timestamp" em cada tabela mas nem todas as aplicações o atualizam. Caso este exista em suas tabelas se certifique de que eles são atualizados a cada alteração no registro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Felicidades...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Dec 2016 14:12:14 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222997#M43165</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-12-14T14:12:14Z</dc:date>
    </item>
    <item>
      <title>Re: Otimização de Carga de Dados</title>
      <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222998#M43166</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Boa tarde Wellington!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Isso mesmo.. por se tratar de utilização direto ao banco de dados, devemos ter mais cuidado com isso..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Na maioria de nossas tabelas / VW, temos o campo DATATU (Data atualização), conforme ocorre uma alteração no registro, o campo é alterado também.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Acredito que podemos nos basear nessa informação.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Dec 2016 16:32:31 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222998#M43166</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-12-14T16:32:31Z</dc:date>
    </item>
    <item>
      <title>Re: Otimização de Carga de Dados</title>
      <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222999#M43167</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;Ótimo Gui...&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;Então vamos ao trabalho:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;Partindo do princípio que você já tem um QVD extraído vamos preparar a carga incremental de atualização.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;Inicialmente você coleta a data da última alteração armazenada no qvd e guarda numa variável:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;STRONG style="color: blue; font-family: 'Courier New';"&gt;DIRECTORY&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;;&lt;BR /&gt;DATA_BASE:&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: blue; font-family: 'Courier New';"&gt;LOAD&lt;/STRONG&gt; &lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;Max&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: maroon;"&gt;DATATU&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt; ) &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;AS&lt;/SPAN&gt; &lt;SPAN style="font-family: 'Courier New'; color: maroon;"&gt;DATA_INI&lt;/SPAN&gt; &lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;From&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt; .\QVDs\QVD_PARA_O_PAINEL.QVD (&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;qvd&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;Group&lt;/SPAN&gt; &lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;By&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;; &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: green;"&gt;//Esse Load irá pegar a última data de alteração no QVD. Esse endereço indica que o QVD está numa subpasta chamada "QVDs"&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: blue; font-family: 'Courier New';"&gt;LET&lt;/STRONG&gt; &lt;STRONG&gt;&lt;EM style="color: gray; font-family: 'Courier New';"&gt;V_DATA_INI&lt;/EM&gt;&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt; = &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;Date&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;Peek&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;('DATA_INI', 0), 'DD/MM/YYYY hh:mm:ss[.fff]');&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: green;"&gt;//Pode parecer redundância formatar um campo de data como data mas assim nos dá mais segurança na cópia dos dados para a variável&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: blue; font-family: 'Courier New';"&gt;DROP&lt;/STRONG&gt; &lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;Table&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt; DATA_BASE;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: green;"&gt;//Depois apagamos a tabela que foi criada unicamente para coletar a data mais atual registrada no qvd&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;Logo depois você pega o SQL que gerou o qvd original e adiciona uma clausula Where para filtrar pela data:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;QVD_PARA_O_PAINEL:&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: blue; font-family: 'Courier New';"&gt;SQL&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;&lt;BR /&gt;SELECT CHAVE_PRIMARIA,&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DATATU,&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEMAIS_CAMPOS&lt;BR /&gt;FROM TABELAS_DO_BANCO TBB&lt;BR /&gt;WHERE TBB.DATATU&amp;nbsp; &amp;gt;= TO_DATE('$(V_DATA_INI)','DD/MM/RRRR HH24:MI:SS');&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: green;"&gt;// O comando TO_DATE é usado num banco Oracle. &lt;BR /&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;Se seu banco for diferente do Oracle recomendo que você utilize o camando de formatação de data para o seu banco. Assim você terá a certeza de que a cláusula Where receberá o valor correto.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;Como você fez uma consulta apenas com os dados que mudaram, ou foram adicionados, desde a última carga podemos carregar o qvd adicionando uma condição para carregar apenas os dados que permaneceram inalterados:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;STRONG style="color: blue; font-family: 'Courier New';"&gt;LOAD&lt;/STRONG&gt;&amp;nbsp; &lt;SPAN style="font-family: 'Courier New'; color: maroon;"&gt;CHAVE_PRIMARIA&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;,&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: maroon;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DATATU&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;,&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: maroon;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEMAIS_CAMPOS&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;From&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt; .\QVDs\QVD_PARA_O_PAINEL.QVD (&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;qvd&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;)&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;Where&lt;/SPAN&gt; &lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;Not&lt;/SPAN&gt; &lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;Exists&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt; (&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: maroon;"&gt;CHAVE_PRIMARIA&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;);&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: green;"&gt;// Com essa cláusula você carrega apenas os dados que não soferam alteração desde a última atualização. Ignorando os dados que já existiam no qvd mas foram atualizados no banco&lt;BR /&gt; &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: blue; font-family: 'Courier New';"&gt;STORE&lt;/STRONG&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt; QVD_PARA_O_PAINEL &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;into&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt; .\QVDs\QVD_PARA_O_PAINEL.QVD (&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;qvd&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;);&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: green;"&gt;// Salva o QVD&lt;BR /&gt; &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;STRONG style="color: blue; font-family: 'Courier New';"&gt;DROP&lt;/STRONG&gt; &lt;SPAN style="font-family: 'Courier New'; color: blue;"&gt;Table&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt; QVD_PARA_O_PAINEL;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: 'Courier New'; color: green;"&gt;//Apaga a tabela da memória para manter o arquivo QVW só com o código de carga&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="font-family: 'Courier New'; color: black;"&gt;Agora seu QVD está pronto para ser utilizado no painel.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="color: black; font-family: 'Courier New'; text-indent: 35.45pt; font-size: 10pt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="color: black; font-family: 'Courier New'; text-indent: 35.45pt; font-size: 10pt;"&gt;Espero que essa rotina lhe seja útil.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="color: black; font-family: 'Courier New'; font-size: 10pt; text-indent: 35.45pt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt; text-indent: 35.45pt;"&gt;&lt;SPAN style="color: black; font-family: 'Courier New'; font-size: 10pt; text-indent: 35.45pt;"&gt;Felicidades...&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Dec 2016 17:33:06 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1222999#M43167</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-12-14T17:33:06Z</dc:date>
    </item>
    <item>
      <title>Re: Otimização de Carga de Dados</title>
      <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1223000#M43168</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Wellington, muito obrigado pelo suporte!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Felicidades para você também!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Abraço&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 15 Dec 2016 11:46:55 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1223000#M43168</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-12-15T11:46:55Z</dc:date>
    </item>
    <item>
      <title>Re: Otimização de Carga de Dados</title>
      <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1609052#M57370</link>
      <description>&lt;P&gt;Excelente documentação.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Fiz exatamente como no exemplo, porém ficou salvo apenas os dados a partir da ultima data que estava no qvd. Sabe informar o motivo?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 02 Aug 2019 20:11:10 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1609052#M57370</guid>
      <dc:creator>suCsa</dc:creator>
      <dc:date>2019-08-02T20:11:10Z</dc:date>
    </item>
    <item>
      <title>Re: Otimização de Carga de Dados</title>
      <link>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1609111#M57374</link>
      <description>&lt;P&gt;A ideia do incremental é&amp;nbsp;&lt;/P&gt;&lt;P&gt;1- Pegar a ultima data do QVD&lt;/P&gt;&lt;P&gt;2- Ler do Banco de dados registros inseridos e alterados a partir da data (considerando que tens este campo data na base)&lt;/P&gt;&lt;P&gt;3 - Juntar aos registros lidos do banco de dados, os registros do arquivo QVD que não estão na memoria (usando o exists())&lt;/P&gt;&lt;P&gt;4 - Salvar os registros sobre o arquivo .QVD anterior.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Será que foi feito o concatenate com os registros anteriores?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Poderias colocar o script?&lt;/P&gt;</description>
      <pubDate>Sat, 03 Aug 2019 16:23:20 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Otimiza%C3%A7%C3%A3o-de-Carga-de-Dados/m-p/1609111#M57374</guid>
      <dc:creator>afurtado</dc:creator>
      <dc:date>2019-08-03T16:23:20Z</dc:date>
    </item>
  </channel>
</rss>

