Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Olá pessoal!
Fiz o seguinte código:
Criei a seguinte variável -
let
vHoje = Day(date(now())) & Month(date(now())) & Year(date(now()));Depois criei um store -
Store Curso into $(vHoje) .qvd (qvd);
Olá, Anderson.
O store funciona para tabelas. Então, coloquei a variável como uma linha de uma tabela antes do store.
Além disso, não precisa de tantas etapas para a criação da data do dia. Pode usar o today()
Se precisar formatar, poderia usar o Date
Date( Today(),'DDMMYYYY')
let vHoje = today();
Hoje:
load '$(vHoje)' as Hoje
AutoGenerate(1);
Store Hoje into Hoje.qvd;
Espero que ajude,
Erich
Olá, Anderson.
O store funciona para tabelas. Então, coloquei a variável como uma linha de uma tabela antes do store.
Além disso, não precisa de tantas etapas para a criação da data do dia. Pode usar o today()
Se precisar formatar, poderia usar o Date
Date( Today(),'DDMMYYYY')
let vHoje = today();
Hoje:
load '$(vHoje)' as Hoje
AutoGenerate(1);
Store Hoje into Hoje.qvd;
Espero que ajude,
Erich
Olá Erich!
Deu certo o código que passou, mas me problema é mais sério. Exemplo: Eu preciso trazer o histórico de carregamento, ou seja, quando carrego os dados de hoje ele vai trazer a data de hoje, quando carrego os dados de amanhã tem que trazer a data de hoje mais a data de amanhã, armazenando assim um qvd para cada dia.
Espero que tenha consegui me fazer entender.
Muito obrigado desde já e se puder continuar me ajudando, ficarei mais agradecido.
Abraços.
Ok, Vai ser uma recarga incremental. Fica mais ou menos assim:
let vHoje = today();
Hoje:
load distinct Hoje //Coloquei o distinct só para não replicar o dia, caso você faça a recarga mais de uma vez
from Hoje.qvd(qvd);
Concatenate(Hoje) // Esse concatenate é opcional, já que as tabelas são identicas
load '$(vHoje)' as Hoje
AutoGenerate(1);
Store Hoje into Hoje.qvd;
Espero que ajude,
Abs,
Erich
Olá Erich!
Deu super certo o script (muito obrigado). Agora é o seguinte. Trago a tabela Hoje (no layout) com as datas da recarga, até aí OK. Minha dúvida agora e com relação ao relacionamento das tabelas já que preciso mostrar o que foi carregado no dia de hoje, amanhã preciso que mostre o que foi carregado e assim sucessivamente, ou seja, preciso que cada dia mostre o que foi carregado, lembrando que a recarga de cada dia não pode sobrepor a recarga do dia anterior.
Muito obrigado desde já e aguardo próximos comandos (hehehe)
Pode passar o script que usa para trazer os dados para vermos qual a melhor forma de criar o relacionamento?
Abs,
Erich
let vHoje = Day(date(now())) & Month(date(now())) & Year(date(now()));
OLEDB CONNECT TO [Provider=OraOLEDB.Oracle.1;Persist Security Info=True;User ID=qlikview;Data Source=db_ntcco;Extended Properties=""] (XPassword is HPUPAcAPWTYQTcVNNTUB);
[Curso]:
LOAD
CODCURSO,
Capitalize(NOMCURSO) as NOMCURSO,
Capitalize(CODDEPART) as CODDEPART;
SQL SELECT CODCURSO,
NOMCURSO,
CODDEPART
FROM ACAD.CURSO
WHERE CURNIVEL = 3;
LEFT JOIN ([Curso])
LOAD DISTINCT
CODDEPART,
DESCRICAO,
NOMDEPART;
SQL SELECT
CODDEPART,
DESCRICAO,
NOMDEPART
FROM ACAD.CENTRO;
Hoje:
load distinct Hoje //Coloquei o distinct só para não replicar o dia, caso você faça a recarga mais de uma vez
from Hoje.qvd(qvd);
//Concatenate(Hoje) // Esse concatenate é opcional, já que as tabelas são identicas
load '$(vHoje)' as Hoje
AutoGenerate(1);
Store Curso into Hoje.qvd;
Anderson,
Deve ficar mais ou menos assim:
(da primeira vez, como curso.qvd não existe, você deve ignorar o erro)
let vHoje = Day(date(now())) & Month(date(now())) & Year(date(now()));
OLEDB CONNECT TO [Provider=OraOLEDB.Oracle.1;Persist Security Info=True;User ID=qlikview;Data Source=db_ntcco;Extended Properties=""] (XPassword is HPUPAcAPWTYQTcVNNTUB);
Curso:
LOAD
'$(vHoje)' as Data,
CODCURSO,
Capitalize(NOMCURSO) as NOMCURSO,
Capitalize(CODDEPART) as CODDEPART;
SQL SELECT CODCURSO,
NOMCURSO,
CODDEPART
FROM ACAD.CURSO
WHERE CURNIVEL = 3;
LEFT JOIN ([Curso])
LOAD DISTINCT
CODDEPART,
DESCRICAO,
NOMDEPART;
SQL SELECT
CODDEPART,
DESCRICAO,
NOMDEPART
FROM ACAD.CENTRO;
concatenate(Curso)
Load * from Curso.qvd (qvd)
where Data <> '$(vHoje)'
;
store Curso into Curso.qvd;
Olá Erich!
Muito obrigado companheiro pela ajuda, valeu mesmo.
Abraços.
Srs., boa tarde.
Eu já passei por situação parecida, e a solução foi um pouco mais simples, na hora de Definir o conteúro da variável. Veja o Exemplo:
let Var_Nome_Arquivo = 'Historico_' & Month(now()) & Year(now()) & '.QVD';
[Arquivo]:
load .......
from ......
Store * from Arquivo into $(Var_Nome_Arquivo) (qvd);
Acho que dá para adptar a sua situação.
Att.,