Hola, tengo esta función (combinatoria) que llama a otra función (ecu2):
  
Código:
 declare 
valor1 int =0;
valor2 int=0;
valor3 int=0;
begin 
for valor1 in min..max loop
  for valor2 in min..max loop
    for valor3 in min..max loop
     perform ecu2 (valor1,valor2,valor3);
       end loop;
       
   end loop;
   
 end loop;
 
return 'Operacion Lista';
end;
  Funciona perfectamente... (ecu2 ingresa en una tabla los valores q le estoy dando)
pero, he tratado de hacerla con while anidados y pues no lo logro!!  
Código:
 declare 
valor1 int =0;
valor2 int=0;
valor3 int=0;
begin 
valor1 = min;
valor2 = min;
valor3 = min;
while (valor1<=max) loop
valor1 = valor1;
  while (valor2<=max) loop
  valor2 := valor2;
  
       while (valor3<=max) loop
       valor3 := valor3;
       
           perform ecu2(valor1,valor2,valor3);
       valor3:=valor3+1;
       end loop;
   valor2:=valor2+1; 
   end loop;
   
valor1:=valor1+1;
end loop;
 
return 'Operacion Lista';
end;
  Que tengo mal?? :S
Ayuda por favor...