Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Chamar Procedure do Oracle

Boa noite amigos,

Estou com uma dificuldade que gostaria de verificar se alguém já fez e possa dar uma luz.

Tenho uma procedure no ORACLE que tem dois parâmetros de entrada (data) e duas saídas (Cursor), conforme abaixo.Parametros.PNG

No oracle, após inserir os dados no campo Value, roda esse comando e executa a procedure

begin

nomedaprocedure (datade=> :e_dt_de, e_dt_ate => :e_dt_ate, s_cursor_r=> :s_cursor_r, s_cursor_r=> :s_cursor_r);

end

Agora preciso fazer o Qlikview chamar essa procedure, ja rodei pelo forum procurando mas nao consegui resolver.

Tentei ja com o comando sql exec e retorna erro de  ]Syntax error or access violation.

Com o comando sql call retorna esse outro erro not a valid function or procedure name.

Obrigado desde já.

Abs

Labels (1)
  • Other

1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Boa tarde Marcio,

Na verdade não consegui resolver com as respostas, mesmo com a ajuda ficava retornando erro, então o cliente criou duas tabelas que a procedure gerava e facilitou o trabalho, portanto não vou mais utilizar a procedure.

Obrigado a todos pela ajuda.

View solution in original post

11 Replies
Anonymous
Not applicable
Author

Adicionando que o usuário tem permissão de acesso.

Marcio_Campestrini
Specialist
Specialist

Bom dia Carlos

Eu tenho um programa que faz a chamada, embora não tenha nenhum parâmetro de retorno.

O que faço é:

Resumo:

-- tabela com as informações que preciso

ODBC CONNECT32 TO Producao (XUserId is MDTBZYRNJbaMXUVMXDNA, XPassword is KWIfQXJOBTdSWSdOYD, Mode is write);

  Let noRows = NoOfRows('Resumo') - 1;

  For i = 0 to $(noRows)

     Let a = Peek('CampoA', $(i), 'Resumo');

     Let b = Peek('CampoB', $(i), 'Resumo');

     Let c = Replace(Peek('CampoC', $(i), 'Resumo'), ',', '.');

   

     SQL

     Call insere_resumo_agente_ano($(a), $(b), $(c));

  Next i;

Márcio Rodrigo Campestrini
Marcio_Campestrini
Specialist
Specialist

Boa tarde Carlos

Conseguiu resolver o seu problema? Se sim, por gentileza marque a resposta correta para ajudar a manter a comunidade organizada.

Márcio Rodrigo Campestrini
Anonymous
Not applicable
Author

Olá Marcio boa tarde.

não deu certo, continua dando erro, não sei se é pelos parametros que tem 2 cursor.

Marcio_Campestrini
Specialist
Specialist

Carlos

Por gentileza, poste o qvw de exemplo e a sua rotina de banco de dados para podermos avaliar melhor o caso.

Márcio Rodrigo Campestrini
nicolett_yuri

Qual o erro esta ocorrendo?

Anonymous
Not applicable
Author

Marcio, infelizmente não posso postar porque esta em cliente, nem tenho acesso ao codigo da procedure. Todo caso o administrador do banco de dados resolver criar as duas tabelas que a proc retornava, e com isso vou fazer select simples pra extrair as informações agora.

Obrigado pela ajuda.

Anonymous
Not applicable
Author

Yuri, retorna esses erros

Tentei ja com o comando sql exec e retorna erro de  ]Syntax error or access violation.

Com o comando sql call retorna esse outro erro not a valid function or procedure name.

Todo caso o administrador do banco de dados resolver criar as duas tabelas que a proc retornava, e com isso vou fazer select simples pra extrair as informações agora.


nicolett_yuri

Pode ser a forma que esta chamando a procedure esteja incorreta.

Ou então pode ser alguns macetes, veja: When is a Result Set not a Result Set?