Qlik Community

Qlik Brasil

Welcome to the group for Brazil users. .All discussions will be in Portuguese.

Highlighted
bittecourt
Contributor II

COMO CRIAR UMA CONEXÃO COM VARIAS PLANILHA


Amigos

Em um sistema integrado, que não estão querendo fazer a conexão agora com o qlik, e gerado diariamente uma planilha excel, esta gerada no proprio sistema.

Tenho como criar uma base para recepcionar esta planilha diarimente onde a atulização dos dados seriam feitas automaticamente, e muito dificil.

Na verdade se trata do fluxo de caixa, qual seria a minha ideia, ter um QVD, onde seria parametrizado para recepcionar esta planilha diariamente, atualizado as informações do painel.

Poderiam me auxiliar, como fazer, exixte algum modelo....

5 Replies

Re: COMO CRIAR UMA CONEXÃO COM VARIAS PLANILHA

Passe o modelo da planilha que fica mais fácil entender como deve ser o código para carrega-la.

Um post para ajudar: http://community.qlik.com/docs/DOC-7860

junior_ehlke
Contributor III

Re: COMO CRIAR UMA CONEXÃO COM VARIAS PLANILHA

Boa tarde Luciana,

não consegui interpretar o que você escreveu,

em uma pasta existem varias planilhas, você quer que o Qlikview leia todas elas, até mesmo as novas?

Partner
Partner

Re: COMO CRIAR UMA CONEXÃO COM VARIAS PLANILHA

Olá Luciana,

Faça o download do drive Microsoft.ACE.OLEDB.12.0, em:

http: // download.microsoft.com/download/2/4/3/24375141-E08D-4803-AB0E-10F2E3A07AAA/AccessDatabaseEngine_x64.exe

Depois é só configurar, para saber as possibilidades de configuração, dê uma olhada em:

https : // www.connectionstrings.com/ace-oledb-12-0/info-and-download

Exemplo:

OLEDB CONNECT TO [Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=C:\Temp\QWay.xls;Mode=Share Deny None;Extended Properties="Excel 8.0;HDR=YES";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=35;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=False;Jet OLEDB:Bypass UserInfo Validation=False];

LOAD Categoria,

    `Cod_Categoria`;

SQL SELECT Categoria,

    `Cod_Categoria`

FROM `Categorias$`;

LOAD `Cod_Produto`,

    `Preço`,

    Produto;

SQL SELECT `Cod_Produto`,

    `Preço`,

    Produto

FROM `Produtos$`;

DISCONNECT;

Abraço.

Re: COMO CRIAR UMA CONEXÃO COM VARIAS PLANILHA

Luciana,

se as planilhas tiverem o mesmo padrao e so mudar o nome...coloca o * no local do nome da planilha. deixando apenas o diretório até chegar no arquivo

tiago_ferrucio
New Contributor III

Re: COMO CRIAR UMA CONEXÃO COM VARIAS PLANILHA

Luciana,

Você pode criar uma tabela (a nível de script) com os caminho dos arquivos Excel da sua pasta, depois faça um LOOP percorrendo sua  planilha gerando seu QVD. Segue abaixo um script para criar sua tabela inicial:

-- Lista de Planilhas

  FOR Each Ext in 'xls','xlsx'

  FOR Each File in FileList('D:\Pasta de Arquivos Excel\' &'\*.'&Ext)

  [$(NomeTabela)]:

  LOAD

  FileName AS [PathCompleto]

  , Date(Today(),'YYYY-MM-DD') AS [DataCarga]

  , SubField(FileName,'\',-1) AS [Nome]

  , If(SubStringCount(FileName,'\') <= 8

   ,SubField(FileName,'\',-2)

   ,SubField(FileName,'\',-3)) AS [Área]

  , Round(FileSize(FileName)/1024,0.01)&' KB' AS [Tamanho]

  , Date(FileTime(FileName),'YYYY-MM-DD HH:MM:SS') AS [DataModificação]

  , Left(FileName,Len(FileName) - Len(SubField(FileName,'\',-1))-1)

  AS [Path]

  , Lower(Right(FileName,Len(FileName) - Index(FileName,'.',-1)))

  AS [Extensão]

  , ReloadTime() AS Reload

  , '$(Arquivo)' AS [TipoArquivo]

  , '$(Ambiente)' AS [Ambiente];

  LOAD * Inline [

  FileName

  "$(File)"

   ]

  ;

  

  NEXT File

  NEXT Ext

Atenciosamente,

Tiago Ferrucio