Fazer chamada de uma procedure dentro de outra procedure

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
katiacd
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 37
Registrado em: Seg, 09 Mai 2016 3:07 pm
Cristine

Analista Pleno

Boa noite!

Alguém pode me tirar uma duvida? Quero chamar uma procedure dentro de outra procedure.
Tenho esta PROCEDURE fun_ret_motor que faz os calculos, com Type entrada e Type saida saida. Agora estou
criando uma segunda procedure Atualiza_Calculos que ira chamar a PROCEDURE fun_ret_motor.
Nesta nova PROCEDURE Atualiza_Calculos, terei um parametro para entrada ID_ENTRADA e outra para saida.RET_ENTRADA.
Como trato isso, entrando com meus parametros de entrada id_entrada e para saida ret_entrada, e executando a procedure fun_ret_motor , onde trara os meus resultados da procedure.


Type exemplo:

Selecionar tudo

CREATE OR REPLACE PROCEDURE Atualiza_Calculos, 
( calculo_en   IN      t_calculo
, calculo_sai  IN OUT  t_calculo_ret )
IS                             
begin


--PROCEDURE fun_ret_motor  
 declare
  type tipo1 is table of t_calxulo  index by binary_integer;
  type tipo2 is table of tret_motor index by binary_integer;
  aa tipo1;
  bb tipo2;
begin
  aa(1) := t_calxulo( 10, 20, 30, 40, 50);
  bb(1) := tret_motor( 0,0,0);
  fun_ret_motor (aa(1), bb(1) );
  dbms_output.put_line(bb(1).v_num1);
  dbms_output.put_line(bb(1).v_num2);
  dbms_output.put_line(bb(1).v_num3);
 
  dbms_output.put_line('---TESTE 2------------------ ');

  aa(2) := t_calxulo( 1, 2, 3, 4, 5);
  bb(2) := tret_motor( 0,0,0);
  fun_ret_motor (aa(2), bb(2) );
  dbms_output.put_line(bb(2).v_num1);
  dbms_output.put_line(bb(2).v_num2);
  dbms_output.put_line(bb(2).v_num3);
end;
obrigada
Responder
  • Informação