trigger   Prog non frequentante Clicca QUI per vedere il messaggio nel forum | 
 
| strad84 | 
 
Richiedeva di fare un controllo che un allenatore non può fare + di 3 corsi al giorno. 
 
Questa è solo la funzione...che poi richiamo con il trigger..ma nn va.. 
 
 
 
PHP:
 
 CREATE FUNCTION trecorsi() RETURNS trigger AS $trecorsi$
     BEGIN
        
    
       if ( select count(*)
            from corso,orariocorso
            where corso.codice = NEW.codcorso and giornosett = EXTRACT(ISODOW FROM current_date)
            group by idallenatore
          ) > 3
 
         then  raise exception 'NON PUOI FARE PIU DI 3 CORSI AL GIORNO';
 
        end if;
 
           
          RETURN NEW;
     END; 
     
 
il problema è che se ho un solo allenatore funziona, ma se ne ho + allenatori no. 
 
per esempio con 2 allenatori 
 
 
(questi me li fa inserire) 
 
allenatore 1 
allenatore 2 
allenatore 1 
allenatore 2 
 
 
(questi no...anche se andrebbero inseriti xche verificherebbe la condizione) 
 
allenatore 1 
allenatore 2 
 
 
sono i prossimi 2 che non mi deve far inserire 
 
 
Spero di essere stato chiaro. grazie!!! | 
 
 
 
 
| frenklin | 
 
un preparatore non può dedicare più di 3 ORE  al giorno ai corsi, non c è scritto che non può fare piu di 3 corsi..ocio stai sbagliando. 
Metti che un corso dura 2 ore, un altro ancora ne dura sempre 2. Nel tuo caso un preparatore nello stesso giorno può fare tutti e due i corsi, per un totale di 4 ore. Non è corretto. 
Io ho l orario di entrata al corso e l orario di uscita. Faccio la differenza di questi 2 valori per quel preparatore in quel giorno e vedo se la differenza è maggiore di 03:00:00. A me funziona | 
 
 
 
| strad84 | 
 
ah ok....hai ragione..perche nel nostro caso avevamo provato che ogni corso durava un ora. allora provo cosi 
ciao e grazie! | 
 
 
 
 | 
 
 
 | 
 
 
 |