Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Samsung Galaxy Z Fold7: un grande salto generazionale
Recensione Samsung Galaxy Z Fold7: un grande salto generazionale
Abbiamo provato per molti giorni il nuovo Z Fold7 di Samsung, un prodotto davvero interessante e costruito nei minimi dettagli. Rispetto al predecessore, cambiano parecchie cose, facendo un salto generazionale importante. Sarà lui il pieghevole di riferimento? Ecco la nostra recensione completa.
The Edge of Fate è Destiny 2.5. E questo è un problema
The Edge of Fate è Destiny 2.5. E questo è un problema
Bungie riesce a costruire una delle campagne più coinvolgenti della serie e introduce cambiamenti profondi al sistema di gioco, tra nuove stat e tier dell’equipaggiamento. Ma con risorse limitate e scelte discutibili, il vero salto evolutivo resta solo un’occasione mancata
Ryzen Threadripper 9980X e 9970X alla prova: AMD Zen 5 al massimo livello
Ryzen Threadripper 9980X e 9970X alla prova: AMD Zen 5 al massimo livello
AMD ha aggiornato l'offerta di CPU HEDT con i Ryzen Threadripper 9000 basati su architettura Zen 5. In questo articolo vediamo come si comportano i modelli con 64 e 32 core 9980X e 9970X. Venduti allo stesso prezzo dei predecessori e compatibili con il medesimo socket, le nuove proposte si candidano a essere ottimi compagni per chi è in cerca di potenza dei calcolo e tante linee PCI Express per workstation grafiche e destinate all'AI.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-10-2007, 15:50   #1
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
[MySql](Ci riprovo...)Turni di lavoro...

Ehm.. riecchime.. e spero che questa volta qualcuno sappia indirizzarmi verso la retta via.. :

Allora, c'è una tabella(Lavorazione) composta (in sintesi) da:

ID,
ID_Persona,
ID_Mese (intero, viene memorizzato l'identificativo del mese di lavoro, ad esempio.. marzo come 3, ottobre come 10 etc..)

giorno(intero, che può memorizzare il giorno in forma numerica del mese in questione...)

C'è un'altra tabella chiamata turni, così composta:
ID,
ID_Persona,
lun
mar
mer
gio
ven
sab
dom

Dove nei giorni della settimana viene inserito il numero di ore lavorative assegnate alla persona.

Ora... la domandona, come sparo i dati memorizzati in 'turni' nella tabella 'lavorazione', rispettando l'ordine dei giorni?

Supponiamo per esempio che i turni siano:
lun = 2
mer = 3
gio = 5

dato che nella tabella lavorazione ho soltanto 'giorno' come faccio ?!?

Molte grazie a tutti!

RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2007, 10:10   #2
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
uppettino
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2007, 10:47   #3
yorkeiser
Senior Member
 
L'Avatar di yorkeiser
 
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
Non ho capito qual'è il problema. Se il problema è convertire le ore in giorni basta che fai sum(lun+mar+mer....+dom) / 8 (se 8 è il numero di ore lavorative giornaliere). Cmq vista così non mi pare molto geniale sta base dati: come fai a sapere a che giorno del mese corrisponde il campo lun? In un mese ci sono almeno 4 lunedì
__________________
Il sole è giallo
yorkeiser è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2007, 10:51   #4
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da yorkeiser Guarda i messaggi
Non ho capito qual'è il problema. Se il problema è convertire le ore in giorni basta che fai sum(lun+mar+mer....+dom) / 8 (se 8 è il numero di ore lavorative giornaliere). Cmq vista così non mi pare molto geniale sta base dati: come fai a sapere a che giorno del mese corrisponde il campo lun? In un mese ci sono almeno 4 lunedì
Ciao

Allora, nella tabella turni, non avrebbe senso sapere a che giorno del mese corrisponde il campo lun, nel senso che si indica solo il turno settimanale del lavoratore a prescindere dal mese. Altrimenti si dovrebbe creare una "settimana tipo" per ogni mese. La tabella turni serve solo ad indicare quante ore alla settimana deve fare la persona. Il problema sorge quando invece di riempire la tabella "lavorazioni" a mano, cioè inserendo manualmente le ore lavorative per il mese, si deve ottenere il riempimento automatico prendendo lo schema dai turni.

__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2007, 11:40   #5
yorkeiser
Senior Member
 
L'Avatar di yorkeiser
 
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
Non so cosa stai utilizzando per accedere alla base dati (php?) ma dovresti fare una cosa del tipo:

Codice:
select lun, mar, mer, gio, ven, sab, dom from turni where id_persona = TUO_ID
Il risultato lo memorizzi in un cursore e fai delle query di insert facendo il fetch di tale cursore:

Codice:
$lunedì = 15 (supponiamo che lunedì sia il 15 del mese)
$mese = 10 (ottobre)
$ID_PERSONA = ... //lo hai già tirato fuori in precedenza in base alla logica

insert into lavorazione values $ID, $ID_PERSONA, $MESE, $lunedì, $cursore.lun
insert into lavorazione values $ID, $ID_PERSONA, $MESE, $lunedì+1, $cursore.mar
insert into lavorazione values $ID, $ID_PERSONA, $MESE, $lunedì+2, $cursore.mer
$cursore.lun è una sorta di metalinguaggio che sto inventando adesso, ma è semplicemente il valore che hai memorizzato nel cursore aperto sulla query di select che hai fatto sulla tabella turni
__________________
Il sole è giallo
yorkeiser è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2007, 11:58   #6
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da yorkeiser Guarda i messaggi
Non so cosa stai utilizzando per accedere alla base dati (php?)
sto provando sia in C# che in Java, php non lo conosco

Quote:
Codice:
select lun, mar, mer, gio, ven, sab, dom from turni where id_persona = TUO_ID
fin qui ci sono

Quote:
Il risultato lo memorizzi in un cursore e fai delle query di insert facendo il fetch di tale cursore:

Codice:
$lunedì = 15 (supponiamo che lunedì sia il 15 del mese)
$mese = 10 (ottobre)
$ID_PERSONA = ... //lo hai già tirato fuori in precedenza in base alla logica

insert into lavorazione values $ID, $ID_PERSONA, $MESE, $lunedì, $cursore.lun
insert into lavorazione values $ID, $ID_PERSONA, $MESE, $lunedì+1, $cursore.mar
insert into lavorazione values $ID, $ID_PERSONA, $MESE, $lunedì+2, $cursore.mer
$cursore.lun è una sorta di metalinguaggio che sto inventando adesso, ma è semplicemente il valore che hai memorizzato nel cursore aperto sulla query di select che hai fatto sulla tabella turni
mmm... cursore.. perdonami, ma non riesco a capire
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2007, 12:04   #7
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Provo a mettere il tutto in forma 'grafica' per spiegarmi meglio:

su di un form, una volta scelto il mese, ottengo una griglia formata da tante righe quanti sono i giorni del mese scelto; supponiamo febbraio 2007:
Codice:
ID_Giorno,     Numero Giorno     Ore
gio               1                      2.5
ven              2
sab              3
dom             4
lun               5
mar              ....blabla
mer
gio
ven
sab
dom
...blabla
Nella colonna ore vengono inserite manualmente le ore appunto....

Io invece dovrei riempire la griglia prendendo le ore presenti nella tabella turni...
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2007, 12:15   #8
yorkeiser
Senior Member
 
L'Avatar di yorkeiser
 
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
In Java:

Codice:
//QUESTI PARAMETRI ARRIVANO DALLA LOGICA DEL PROGRAMMA
int id = <ID>
int idpersona = <ID_PERSONA>
int mese = 10; //ottobre
int lunedi = 15; //lunedì 15 ottobre
int turni[] = new turni[7];

Connection c = DriverManager.getConnection(...);
Statement st = c.createStatement();
ResultSet rs=null;

rs = st.executeQuery("select lun, mar, mer, gio, ven, sab, dom from turni where id_persona = "+idpersona);
if (rs.next()) {
turni[0]=rs.getInt("LUN");
turni[1]=rs.getInt("MAR");
turni[2]=rs.getInt("MER");
[...]
turni[6]=rs.getInt("DOM");
}
//fin qui hai caricato i risultati del resultset nell'array turni[]

for (int i=0; i<7; i++)
{
    if (turni[i]>0) //se in quel giorno il dipendente ha lavorato
        st.execute("INSERT INTO LAVORAZIONE VALUES ( " + id + ", " + idpersona + ", "  + mese + ", "+ lunedi+i +", " + turni[i] + ")"
}
Spero fosse quello che ti interessava, ovviamente è solo lo scheletro, mancano vari controlli e la logica esterna
__________________
Il sole è giallo
yorkeiser è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2007, 12:16   #9
0rph3n
Senior Member
 
L'Avatar di 0rph3n
 
Iscritto dal: Apr 2005
Città: Resana - TV
Messaggi: 960

praticamente nella tabella turni è memorizzata, per ogni persona la somma delle ore lavorate per ogni giorno della settimana?
cioè nella colonna lun c'è la somma delle ore lavorate in tutti i lunedì del mese, nella colonna mar c'è la somma delle ore lavorate in tutti i martedì del mese e così via?
0rph3n è offline   Rispondi citando il messaggio o parte di esso
Old 11-10-2007, 12:22   #10
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da 0rph3n Guarda i messaggi

praticamente nella tabella turni è memorizzata, per ogni persona la somma delle ore lavorate per ogni giorno della settimana?
cioè nella colonna lun c'è la somma delle ore lavorate in tutti i lunedì del mese, nella colonna mar c'è la somma delle ore lavorate in tutti i martedì del mese e così via?
Ciao

No, non è la somma, indica solo il lunedi quante ore deve lavorare, cioè, se ci sono 3 ore, vuol dire che ogni lunedi del mese quella persona deve fare 3 ore di lavoro.

@Yorkeiser: provo a ragionare sul tuo esempio in Java
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Samsung Galaxy Z Fold7: un grande salto generazionale Recensione Samsung Galaxy Z Fold7: un grande sal...
The Edge of Fate è Destiny 2.5. E questo è un problema The Edge of Fate è Destiny 2.5. E questo ...
Ryzen Threadripper 9980X e 9970X alla prova: AMD Zen 5 al massimo livello Ryzen Threadripper 9980X e 9970X alla prova: AMD...
Acer TravelMate P4 14: tanta sostanza per l'utente aziendale Acer TravelMate P4 14: tanta sostanza per l'uten...
Hisense M2 Pro: dove lo metti, sta. Mini proiettore laser 4K per il cinema ovunque Hisense M2 Pro: dove lo metti, sta. Mini proiett...
Il telescopio spaziale James Webb ha cat...
Amazon scatenata nel weekend: sconti sug...
Pulizia per 45 giorni senza pensieri: il...
Apple taglia il prezzo degli AirPods Pro...
Tutti i MacBook Air M4 2025 da 13 pollic...
Roborock QV 35A a 429€ o Dreame L40 Ultr...
SpaceX Starship: Ship 37 ha eseguito due...
Sharkoon punta sui case a basso costo, m...
La tua rete Wi-Fi fa pena? Questi FRITZ!...
Amazon, un weekend di fuoco per gli scon...
Ancora 3 smartwatch Amazfit in forte sco...
Sharkoon A60 RGB: dissipatore ad aria du...
HONOR 400 Pro a prezzo bomba su Amazon: ...
Offerte da non perdere: robot aspirapolv...
Apple Watch e Galaxy Watch ai minimi sto...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:46.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v