Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Estou tentando criar um campo de valor constante para todos os registros de uma tabela, desta forma:
[minhatabela]:
load
PapelEmpresa;
select
'PARTICIPANTE' AS PapelEmpresa
from tabela;
Ao executar esse sql no oracle funciona corretamente, mas ao executar esse script no qlik, ocorre o seguinte erro:
Field 'PapelEmpresa' not found
Onde estou errando ou qual outra forma de se fazer isso no qlik?
Você está tentando carregar um campo no Statement LOAD que não existe. O campo PapelEmpresa será o ALIAS da constante 'PARTICIPANTE'. Retire o PapelEmpresa do Load e deve rodar.
Faça assim:
[minhatabela]:
load
*,
'PARTICIPANTE' AS PapelEmpresa;
select
*
from tabela;
O comando está lendo todos os dados da tabela, e depois no Qlik criando o campo PapelEmpresa.
O problema é que não posso utilizar LOAD *, pois estou renomeando todos os campos da tabela no load (e não no sql), além de criar campos chaves compostos para linkar com outras tabelas.
Lu,
O que o Klaus sugeriu resolverá seu problema. Diante do que você expôs, faça assim:
Exemplo de Query (os nomes dos campos devem ser editados conforme sua realidade);
SuaTabela:
Load
campoA as campoAlfa,
campoB as campoBeta,
campoD as campoDelta
'MINHA CONSTANTE' as campoConstante;
Select
campoA,
campoB,
campoD
From SuaBase;
O problema é que não posso utilizar LOAD *, pois estou renomeando todos os campos da tabela no load (e não no sql), além de criar campos chaves compostos para linkar com outras tabelas e outros campos derivados.
Tentei fazer isso mas não funcionou:
[minhatabela]:
load
a as NOME,
b as ID,
c as X,
b &'|'& c as CHAVE,
...,
PapelEmpresa;
select
a,
b ,
c ,
'CONTRATADO' AS PapelEmpresa
from tabela;
Field 'PapelEmpresa' not found
Faça assim:
[minhatabela]:
load
a as NOME,
b as ID,
c as X,
b &'|'& c as CHAVE,
...,
'CONTRATADO' AS PapelEmpresa;
select
a,
b ,
c
from tabela;
Se for oracle ou postgresql os nomes de campos passam como maiscula, tente assim
[minhatabela]:
load
PAPELEMPRESA;
select
'PARTICIPANTE' AS PapelEmpresa
from tabela;