Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
fbferreira
Contributor
Contributor

Importar CSV do mês onde muda somente o nome do Arquivo

Olá Amigos Boa Tarde!

Preciso da ajuda de vocês, gostaria de saber quem tem ou pode me fazer uma linha de script de carga, onde em uma pasta do ano de 2022 eu tenho arquivos do mês ex: Carga_Dados_Assistencia_2022_01.csv

Com base no nome do meu arquivo gostaria de saber como criar uma linha de comando onde ele

1 - Analisa se tem arquivo CSV na pasta

2 - Identifica a nomenclatura do arquivo inicial onde nunca mudará: "Carga_Dados_Assistencia_"

3 - Criar uma variável para setar o ano/mês  que mudará de forma automática para o próximo mês Ex: 2022_02

No final quero que ele crie um QVD do mes atual e depois um QVD acumulando os meses 01, 02, 03 etc....

 

Desculpa não sei se expliquei correto rsrsrs mas a ideia é está, na pasta todo mês terá um arquivo novo com o final do nome com referencia do próximo mês.

Se alguem puder me ajudar agradeço de coração eu ainda não entendi como executar meu racional ....

 

Meu exemplo que estava fazendo esta assim: MAS NAO LEVAR EM CONSIDERAÇÃO POIS ESTOU APRENDENDO KKKK

/////////////////// ANALISAR E IDENTIFICAR O ULTIMO ARQUIVO MAIS RECENTE DA PASTA //////////////////////

for each Carga_Mes in fileList ('lib://1.UAT-Source-BI-BASE_FRAUDE/*.csv')
Tab_Arquivos:
load
'$(Carga_Mes)' as Arquivo,
FileName ('$(Carga_Mes)') as Nome_Arquivo
//Filetime ('$(Carga_Mes)') as Ultimo_Arquivo
AutoGenerate 1;

Next Carga_Mes


Tab_Carga:
First 1
Load
Arquivo,
Right(SubField(Filename(), '.', 1),7) as DataArquivo
Resident Tab_Arquivos
Order By Nome_Arquivo desc;

Drop table Tab_Arquivos;

 

Labels (2)
1 Reply
rphpacheco
Creator III
Creator III

Rsrsrs, faz alguns anos que não recebo uma notificação da Qlik Community, mas vamos lá.
Fabiano, pergunta... Dentro do arquivo você tem as datas de referência?

Se for, o mais rápido e fácil é dar um load no arquivo como o exemplo abaixo:

accumulated:

LOAD *

From 'lib://1.UAT-Source-BI-BASE_FRAUDE/Carga_Dados_Assistencia_*.csv';

 

depois separar o mês atual do acumulado:

let currentData = Now();

currentMonth:

LOAD *

RESIDENT accumulated
Where MONTH(data) = MONTH('$(currentData)');

STORE currentMonth into <PATH + FILE NAME>;
STORE accumulated into <PATH + FILE NAME>;

Espero que lhe ajude!