Oppure

Loading
20/04/20 21:56
elias86
Buonasera,
per un progetto ho la necessità di sviluppare un software gestionale per la gestione delle ore dei dipendenti. In pratica si tratta di partire da un foglio excel principale che legge dati in modo dinamico da altri fogli dello stesso documento e anche da file diversi e ricrearlo in Java possibilmente dato che è un linguaggio che conosco abbastanza bene.

Quindi avrò alcune colonne che saranno valorizzate manualmente dagli utenti e altre che, ho pensato io, potrebbero essere valorizzate con delle combo-box dinamiche i cui dati verrano presi da un database precedentemente popolato. A questo punto mi servirebbe un livello intermedio possibilmente che mi permetta di creare una procedura automatica che mi permette di "trasferire" i dati da fogli excel in un database (tipo Mysql, SQLServer ecc.) in modo agevole.

Tutto questo sistema deve appoggiarsi su un database (come già detto) e deve essere possibile una gestione degli utenti dove devono essere previsti due livelli di utenza. Un primo di utenza semplice dove il dipendente può inserire, modificare e in generale gestire le proprie ore e un altro di amministratore che può operare su tutti gli account ed eventualmente (questo punto non è ancora ben definito) approvare le ore.

Qual'è il modo migliore per implementare una soluzione di questo tipo? Meglio un'applicazione web (es. scritto con Spring boot) o una applicativo stand-alone (scritto con le JAvaFX)? Qualcuno ha idea di come creare il tutto nel modo più pulito e funzionale possibile?

La ciliegina sulla torta è che deve essere possibile esportare i rapportini ore in formato Excel cosi da poter essere facilmente condivisi.

Grazie in anticipo per chiunque mi aiuterà.
Un saluto, Elias.
aaa
21/04/20 12:19
Goblin
Non ho capito, vuoi "far interagire" quello che hai già fatto in excel e farlo parlare con un nuovo applicativo (stan-alone o web non ha importanza) ? Nel caso ti conviene restare nel mondo Microsoft sia come base dati, Access o SQLServer, che come linguaggio VB.NET o C#.

Se vuoi riscrivere da 0 il tuo applicativo, ma tenendo una logica ormai consolidata, devi avere chiaro tutto il flusso delle informazioni di cui hai bisogno, dalla progettazione del DB alla gestione dei vari utenti sino all'inserimento dei dati nella scheda del Timesheet.

La tecnologia è a tua libera scelta, se costruisci un applicativo desktop lo userai (prevalentemente) solo all'interno della tua azienda, se invece propendi per un applicativo web avrai la visibilità anche all'esterno, ma ovviamente qui si aprono diverse strade, potresti costruire un web-server che espone delle API in modo da "interagire" con un DB remoto, da qui un applicativo desktop, un sito web o un app (o webapp) per dispositivi mobili, che appoggiandosi sul web-server riescono a gestire i vari timesheet....
G.
Ibis redibis non morieris in bello