Newsgroup: it.comp.appl.access
Titolo: Posticipo automatico orario lavorazioni

Ciao a tutti ho questa “problematica” da risolvere
Dovrei caricare in una maschera una giornata di lavoro, tipo l’esempio che vi riporto di seguito
06:00  30’ lavorazioni cliente Rossi
06:30  60’ lavorazioni cliente Verdi
07:30 15’ lavorazioni cliente Gialli
07:45    e così via......
La  giornata lavorativa comincia alle ore 06:00 e finisce alle 18:00 nell’arco di questo tempo devo inserire lavorazione per lavorazione .
Il problema sussiste quando una di queste lavorazioni viene posticipata o anticipata. Esempio:
La lavorazione delle 06:00 sempre di 30 min deve cominciare alle 06:30. Invece di azzerare il tutto, io avrei bisogno di un aggiornamento in automatico che mi posticipasse tutte le altre lavorazioni di 30 min ( in questo esempio, oppure del tempo di posticipo) cioè se la lavorazione di Rossi comincia 
Alle 06:30 e dura 30’ automaticamente la lavorazione di Verdi deve cominciare alle 07:00 e i 60’ di questa lavorazione devono posticipare l’orario seguente e così via.
Volevo sapere se secondo voi era fattibile e come.
Grazie in anticipo per la disponibilità
 
Dino


con questa istruzione sposti di 30 minuti l'inizio di tutte le lavorazioni
UPDATE tabella SET tabella.inizio = DateAdd("n",30,tabella.[inizio])
WHERE (((tabella.inizio)>=Date()));
 
Io inserirei una checkbox per spostarne solo alcune, 
perché magari si verifica un problema alle 12 e vuoi posticipare tutte quelle successive...
 


io non memorizzerei orari ma solo la durata e la posizione delle attività
 
pos 1  - Attività 1  	30 minuti
pos 2  - attività 2 	45 minuti
pos 3  - attività 3  	30 minuti
 
etc
 
e gli orari sarebbero calcolati "al volo" partendo dalla prima attività 
e sapendo a che ora inizia la giornata, dalla seconda in poi sarebbe 
calcolata in base al valore della precedente
 
 
il vantaggio è che puoi anche spostare l'ordine delle attività agendo 
solo sul valore posizione, puoi cancellare attività ottenendo in 
automatico la ripianificazione delle successive
inoltre puoi in futuro cambiare l'orario di inizio della giornata senza 
scombussolare tutto
 
BFS


Ciao a tutti,
e grazie a Micheel e BFS per la risposta.
Per quando riguarda la soluzione di michele, provo ad applicarla e pi ti faccio sapere.
E' ovviamente interessante anche la soluzione di BFS , ma vorrei se fosse possibile che tu mi facessi un esempio "pratico" con dei campi fittizi.
Grazie in anticipo e attendo tue..
Dino


tabella lavori
 
campi
 
DataLavoro
PosLavoro
DescrLavoro
DurataMin
 
 
esempio con tre righe:
 
 
14/02/2022  1   'fare la spesa'  30minuti
14/02/2022  2    'andare dal meccanico'  60 minuti
14/02/2022  3   ' rispondere alle mail'  30  minuti
 
 
ponendo che l'orario di lavoro sia alle 6.00
 
in automatico ottengo, calcolando al volo inizio e fine di ogni lavoro:
 
14/02/2022  1   'fare la spesa'   dalle 06.00 alle 06.30
14/02/2022  2    'andare dal meccanico'   dalle 06.30 alle 07.30 
(Calcolato in base alla fine della posizione 1)
14/02/2022  3   ' rispondere alle mail'  dalle 07.30 alle 08.00
(Calcolato in base alla fine della posizione 2)
 
 
se per assurdo voglio inverire "rispondere alle mail"  con  "andare dal 
meccanico"
 
mi basta variare la tabella cosi, cambiando solo il valore di "PosLavoro"
 
14/02/2022  1   'fare la spesa'  30minuti
14/02/2022  3    'andare dal meccanico'  60 minuti
14/02/2022  2   ' rispondere alle mail'  30  minuti
 
e la nuova stampa/maschera orario in automatico si ricalcola cosi, 
perchè gli orari sono sempre calcolati al volo
 
 
14/02/2022  1   'fare la spesa'   dalle 06.00 alle 06.30
14/02/2022  2   ' rispondere alle mail'  dalle 06.30 alle 07.00
14/02/2022  3    'andare dal meccanico'   dalle 07.00 alle 08.00
 
 
inoltre se un giorno inizioa a lavorare alle 8.00 in automtico variando 
il parametro di inizio ottengo al volo la nuova visualizzazione
 
14/02/2022  1   'fare la spesa'   dalle 08.00 alle 08.30
14/02/2022  2   ' rispondere alle mail'  dalle 08.30 alle 09.00
14/02/2022  3    'andare dal meccanico'   dalle 09.00 alle 10.00
 
 
idem se per qualche motivo decido che l'operazione di "rispondere alle 
mail" non è più da 30 minuti ma di 45:
mi basta variare nella tabella la durata in minuti
 
 
14/02/2022  1   'fare la spesa'  30minuti
14/02/2022  2    'andare dal meccanico'  60 minuti
14/02/2022  3   ' rispondere alle mail'  45  minuti
 
la stampa/maschera degli orari si adeguerà di conseguenza
 
 
mi pare molto più flessibile e gestibile cosi
 
BFS
 
 
 
 
 
 
 


Ciao a tutti, ho provato entrambe le soluzioni, e devo dire che è una più bella dell'altra.
Grazie ancora
Dino