hai ragione anche tu ^_^
cerco di semplificare la query globale
	codice:
	SELECT              * , [campi specifici... ]
FROM                elementi
LEFT OUTER JOIN     regioni as R1 on ele_regione=R1.REGIONE
LEFT OUTER JOIN     regioni as R2 on ele_provincia=R2.PROV
LEFT OUTER JOIN     tipo on ele_tipo=idtipo 
LEFT OUTER JOIN     ricevute on r_ele=idele
LEFT OUTER JOIN     dipendenti on idele=d_elemento
WHERE [... varie where ....]
GROUP BY idele
ORDER BY            ORDINAMENTO, ele_ruolo
 
Cosa fa in pratica: prende tutti i clienti e li relazione con una serie di informazioni.
La cosa che mi serve è prendere l'ultima ricevuta emessa per vedere la scadenza (e mettere un alert nel caso in cui sia scaduta)