Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Erro ao ler VIEW em carga de script

Pessoal, bom dia!

Estou com um problema para ler uma view em uma carga do Qlikview.
Sempre apresenta mensagem que existe um não numérico onde é esperado um númerico. Vejam o print.

O que pode ser?

Desde já agradeço a ajuda.

Abraço,

Juliana.

1 Solution

Accepted Solutions
aderlanrm
Partner - Specialist
Partner - Specialist

Olá Juliana,

Tente executar essa View no SGDB, provavelmente acontecerá o mesmo erro, pelo que me parece é erro no código da View, não no QlikView.

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)

View solution in original post

5 Replies
aderlanrm
Partner - Specialist
Partner - Specialist

Olá Juliana,

Tente executar essa View no SGDB, provavelmente acontecerá o mesmo erro, pelo que me parece é erro no código da View, não no QlikView.

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
Not applicable
Author

Olá Aderlan,
Era isso mesmo, fui depois ver o select da view e pelo PL/SQL rodava direitinho.
Mas no Qlikview não.. Era a formatação de datas que eu estava utilizando na clausula where da view.

Muito obrigada pela dica..
Abs,
Juliana.

Not applicable
Author

Aderlan, olá!
Eu não consigo fazer um sub select dentro de um select? Está dando erro para mim.

Veja abaixo:

Leitura OLEDB falhou


ABSENTEISMO_CID:

select
  freq.dt_frequencia       as data_frequencia,
  freq.ds_motivo_falta             as motivo_falta,
  freq.cd_funcionario              as cd_funcionario,
  func.cd_setor                    as cd_setor,
  func.id_turno                    as id_turno,
  ((select c.descap from senior.r192sub a, senior.r192gdo b,
     senior.r192cap c where a.codsub between b.subini and b.subfim and
     b.codcap = c.codcap and a.codsub = atest.codsub)),
  ((select b.desgdo from senior.r192sub a,
     senior.r192gdo b where a.codsub between b.subini and b.subfim and
     a.codsub = atest.codsub)),
  atest.codsub as codsub,
  subcid.dessub as dessub
from
  frequencia freq,
  senior.r110mam atest,
  senior.r192sub subcid,
  funcionario func
where
  freq.cd_funcionario = atest.codfic  and
  freq.cd_funcionario = func.cd_funcionario and
  atest.codsub = subcid.codsub(+)  and
  freq.dt_frequencia >= to_date('01/01/2009','DD/MM/YYYY') and
  freq.dt_frequencia between atest.datafa and atest.fimate
group by
  freq.dt_frequencia,
  freq.ds_motivo_falta,
  freq.cd_funcionario,
  func.nm_funcionario,
  func.cd_setor,
  func.id_turno,
  atest.codsub,
  subcid.dessub

union all

select
  freq.dt_frequencia      as data_frequencia,
  freq.ds_motivo_falta    as motivo_falta,
  freq.cd_funcionario     as cd_funcionario,
  func.cd_setor           as cd_setor,
  func.id_turno           as id_turno,
((select c.descap from senior.r192sub a, senior.r192gdo b,
     senior.r192cap c where a.codsub between b.subini and b.subfim and
     b.codcap = c.codcap and a.codsub = atest.codsub)),
  ((select b.desgdo from senior.r192sub a,
     senior.r192gdo b where a.codsub between b.subini and b.subfim and
     a.codsub = atest.codsub)),
  atest.codsub as codsub,
  subcid.dessub as dessub
from
  frequencia freq,
  senior.usu_vafastamentos atest,
  senior.r192sub subcid,
  funcionario func
where
  freq.cd_funcionario = atest.numcad  and
  freq.cd_funcionario = func.cd_funcionario and
  atest.codsub = subcid.codsub(+)  and
  freq.dt_frequencia >= to_date('01/01/2009','DD/MM/YYYY') and
  ((freq.dt_frequencia >= atest.datafa and freq.dt_frequencia <= to_date(atest.datter,'DD/MM/RR')) or
  freq.dt_frequencia > atest.datafa and atest.datter is null) and
  atest.sitafa = 3
group by
  freq.dt_frequencia,
  freq.ds_motivo_falta,
  freq.cd_funcionario,
  func.nm_funcionario,
  func.cd_setor,
  func.id_turno,
  atest.codsub,
  subcid.dessub

Saberia me dizer o que pode ser?

Desde já te agradeço,

Juliana.

aderlanrm
Partner - Specialist
Partner - Specialist

Juliana,

Nem vou entrar no mérito de certo ou errado e no desempenho dessa query. Rsrsrs...

Mas está faltando o alias das colunas onde você usa o subselect, corrreto?

Coloca um "as" alguma coisa nelas. Veja se resolve, senão, terá que rever a query mesmo.

Porém, recomendo a possibilidade de transformar isso tudo em consultas simples e tratar os relacionamentos com JOINs no QV.

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
Not applicable
Author

Olá Aderlan,

Pois é, não tava legal esse meu query, eu mudei ela toda agora na parte da tarde e fiz realmente o que você me falou.
Separei tudo e uni lá no qlikview só e funcionou certinho..


Obrigada,

Juliana.