Ver Mensaje Individual
  #2 (permalink)  
Antiguo 06/06/2006, 08:16
Avatar de PequeñoMauro
PequeñoMauro
 
Fecha de Ingreso: abril-2006
Ubicación: Lima - Perú
Mensajes: 600
Antigüedad: 18 años, 1 mes
Puntos: 3
Hola arameo2010:
Bueno, puedes hacerlo de dos formas. Puedes hacer los dos cálculos en una sola función, primero el primer count, y luego el valor de tal lo usas en la siguiente parte.
Si no es posible esto, entonces, desde una función puedes llamar a la otra función, declaras una variable del mismo tipo del valor de retorno de la función llamada, y esa variable lo usas en la función que estas llamando, me dejo entender?

Cita:
1-CREATE OR REPLACE FUNCTION TOTALEMPLEADOS RETURN NUMBER
IS
v_empleados_total number(4);
BEGIN
select count(*) into v_empleados_total from empleados where id_sucursal=1;
RETURN v_empleados_total;
END TOTALEMPLEADOS;
/

y esta otra

2-CREATE OR REPLACE FUNCTION empleados_gerencia(p_postu varchar2) RETURN NUMBER IS

v_canti number(3);
v_variable number(4);

BEGIN

v_canti:=0;

v_variable=TOTALEMPLEADOS(); --Aqui obtienes el valor que deseas

select count(*) into v_canti from empleados E, departamentos D
where E.ID_DEPARTAMENTO=D.ID_DEPARTAMENTO
and d.id_gerencia = (select id_gerencia from departamentos d1 , empleados e1
where e1.id_empleado= p_postu and e1.id_departamento=d1.id_departamento);

RETURN v_canti;
END empleados_gerencia;
/
Espero que te ayude en algo.
Saludos
__________________
"Nada en mis manos traigo tan solo a tu cruz me aferro....."