mazda91 ha scritto:
- per quanto riguarda l'importazione questa avverrà più volte perchè le turnazioni spesso vengono cambiate da esigenze varie;
1. Quindi devi appurare SE:
a - i dati importati debbano essere sempre INSERITI
oppure
b - possano andare ad AGGIORNARE quelli esistenti
perché è ovvia la differenza sostanziale: una modifica ai dati preesistenti si estende a tutte le altre tabelle (Vedi più avanti).
mazda91 ha scritto:
- per la normalizzazione successiva all'importazione non ho idea di come realizzarla.
2. Questo dipende da QUALI informazioni necessita gestire e soprattutto COME.
mazda91 ha scritto:
In battuta ho pensato di estrarre (con query) le anagrafiche (Cognome, Nome, NumeroBadge) ma poi non sò come andare avanti;
3. Per me no, nel file TXT hai già le informazioni che ti servono.
Nella tabella importata devi comunque aggiungere un campo ID (PK).
mazda91 ha scritto:
- i dati mi vengono passati da file txt perchè il software che fa i turni genera quello (o html), tutto qua;
Era esattamente quello che volevo sapere.
Se viene generato da un software, allora siamo certi che conterrà dati congrui.
Se invece fosse stato generato a mano....ahi ahi ahi...
mazda91 ha scritto:
- il campo turno (tipo testo) assume 6 valori ai quali corrispondono 6 turni che identificano 6 situazioni diverse (mattino feriale, mattino prefestivo, mattino festivo, ecc.) e che sono contraddistinti essenzialmente da diversi orari di inizio e fine;
Bene.
mazda91 ha scritto:
- infine per quanto conserne le mansioni ed è qui principalmente che dovrei collegare le due cose conviene fare un esempio per spiegare, eccolo ....
lunedi 18/1/16, ROSSI Paolo, Turno1, 8:00-12:00, centralino
lunedi 18/1/16, ROSSI Paolo, Turno1, 12:00-14:00, reception
lunedi 18/1/16, ROSSI Paolo, Turno1, 14:00-16:00, centralino
lunedi 18/1/16, BIANCHI Mario, Turno1, 8:00-12:00, cucina
lunedi 18/1/16, BIANCHI Mario, Turno1, 12:00-16:00, autista
quello che vedete dovrebbe essere la condizione finale desiderata.
I compiti/mansioni assegnati possono essere tanti e non sono legati a persone, orari, ecc. ma vengono inseriti di volta in volta secondo le esigenze e disponibilità delle persone.
Quindi è evidente che ti serve una seconda tabella che deve essere relazionata alla tabella importata, ed un tabella MansioniTipi.
Supponiamo di chiamare la tabella importata TURNI e la secondo MANSIONI
In sostanza hai bisogno di tre tabelle:
- la tabella TURNI sarà la tabella PADRE e conterrà le inofrmazioni sui turni
- la tabella MANSIONI sarà la tabella FIGLIA che contiene le righe
- la tabella TIPIMANSIONE, l'anagrafica delle mansioni
La struttura delle tabelle, potrebbe essere questa:
Campi tabella
Turni
- IDTurno (PK)
- Cognome - TEXT 20
- Nome - TEXT 20
- NumeroBadge - TEXT 10
- Data - DateTime
- Turno - TEXT 50
- Nota - TEXT 255
Campi tabella
Mansioni
- IDMansione (PK) Long
- IDTipoMansione - Long
- IDTurno (FK Turni) - Long
- OraInizio - DateTime
- OraFine - DateTime
- Nota - TEXT 255
Campi tabella
TipiMansione
- IDTipoMansione (PK) - Long
- Mansione - TEXT 50
Come avrai notato, ho indicato Nota invece di Note perché essendo un nome riservato nel database è meglio evitarlo.
Ho anche aggiunto il campo Nota nella tabella Mansioni, nel caso occorresse indicare qualche informazioni supplementare.
Mi pare che dovrebbe essere sufficiente, almeno in base a quello che hai descritto.