[firebase-br] Loop dentro do for select

Marcelo Moreira marcelomoreira.souza em gmail.com
Seg Nov 23 12:52:51 -03 2009


Pessoal,

boa tarde!



Usando o Firebird 2.1 estou precisando resolver a seguinte situacao dentro
de uma SP.

Duas tabelas: TAREFAS e USUARIOS

Preciso fazer um select na tabela TAREFAS e para a quantidade de registros
que eu encontrar dividilos pela quantidade de registros que eu tiver na
tabela USUARIOS.

Comecei fazendo um for select na tabela TAREFAS:



for

select ID_TAREFA from TAREFAS where ID_USUARIO iss null into
:ID_TAREFA_ENCONTRA;

do begin

  /* aqui eu teria de fazer um select na tabela USUARIOS e ver quantos
usuarios esta ativos. os que estiverem ativos terao seu ID_USUARIO gravado
no campo ID_USUARIO da tabela TAREFAS. Reparem que no meu for select so
peguei as tarefas que nao tem um ID_USUARIO vinculado */

/* Mas aqui ainda tem outro detahe importante, nao posso ser 'injusto' com
nenhum usuario designando mais ou menos lancamentos para ele. seu eu tiver
10 tarefas livres e tiver 6 usuarios ativos eu preciso que o loop va do 1 ao
6 depois volte ao 1. Como tenho 10 tarefas na primeira vez que o loop rodar
vao sobrar 4 tarefas ai a segunda vez que o loop passar começa do 1 e para
no 4. (Agora o maior problema) Da próxima vez que esta SP rodar e encontrar
tarefa ela deve enviar a primeira tarefa para o 5 usuario ativo sendo que a
ultima vez que ele executou a ultima tarefa foi para o quarto usuário
ativo*/

End



Esta meio complicado mas vou tentar e ver se alguém entende e consegue me
ajudar.



Obrigado a todos pela atenção.

-- 
Marcelo Moreira
(31) 8420-2723
E-mail / MSN: marcelomoreira.souza em hotmail.com
E-mail: marcelomoreira.souza em gmail.com
Skype: marcelomoreira.souza



Mais detalhes sobre a lista de discussão lista