Mostrare tutti i valori presenti in un campo

di il
28 risposte

Mostrare tutti i valori presenti in un campo

Ciao,

Sono nuova di Access e sto cercando di studiare sempre più il suo funzionamento.

Ho un problema però che non riesco a risolvere nemmeno cercando su Internet e tutorial vari, e cioè che vorrei mostrare in una casella di testo tutti i valori presenti in alcuni record di una sottomaschera (e di un'altra tabella), usando un criterio.

Cerco di spiegarmi come meglio posso.

Ho una maschera principale chiamata “Dipendenti” che si basa su una query tra 2 tabelle, cioè DipendentiT (dove in pratica c'è l'anagrafica di ogni dipendente, sono i campi fissi, quindi nome, cognome, data di nascita ecc alla quale però ho aggiunto qualche piccola informazione) ed EventiT, cioè la sottomaschera vera e propria (che quindi va dentro la maschera principale DipendentiT) dove vengono annotati tutti i “movimenti” del dipendente alla quale la maschera fa riferimento, es. assunzione, cessazione, titolo di studio aggiuntivo, aggiunte varie insomma nella vita di un dipendente.

Adesso mi sono arenata sulla questione "titolo di studio", che potrei poi dover utilizzare/riciclare anche per altre possibili situazioni come sede operativa, orario di lavoro ecc. Sono tutti campi che mi servono se in futurro vorrò fare delle estrazioni e capire al volo ad esempio quanti sono assegnati alla sede operativa X, quanti sono in part-time, quanti hanno il titolo di studio Y e così via.

Per ora la querySQL della maschera principale è questa:

SELECT DipendentiT.IDMatricola, DipendentiT.Cognome, DipendentiT.Nome, DipendentiT.[F/M], DipendentiT.DataNascita, DipendentiT.CF, DipendentiT.Residenza, DipendentiT.Domicilio, DipendentiT.Telefono, DipendentiT.Email, DipendentiT.PEC, DipendentiT.Ultimogiorno, DipendentiT.UltimoAggiornamento, DipendentiT.IDTitoliStudio, DipendentiT.PDFTitoloStudio, DipendentiT.IDUO, DateAdd("yyyy",65,[DataNascita]) AS Datapensione65, DateAdd("yyyy",67,[DataNascita]) AS Datapensione67, DipendentiT.Cessato, EventiT.IDSottofascicolo, EventiT.Descrizione, EventiT.Descrizione AS titolos
FROM DipendentiT LEFT JOIN EventiT ON DipendentiT.IDMatricola = EventiT.IDMatricola
WHERE (((EventiT.IDSottofascicolo)=5))
ORDER BY DipendentiT.Cognome, DipendentiT.Nome, DipendentiT.DataNascita;

Quindi la tabella EventiT è collegata con la tabella DipendentiT.

In EventiT però ogni record ha vari campi, che mi possono servire un po' per ogni utilizzo, ad esempio se data di assunzione ho “DataInizio”, se part-time uso “DataInizio” e “DataFine”. 

Poi, sempre in EventiT, ho il campo “Descrizione” dove scrivo manualmente a cosa si riferisce l'evento, e tra altri campi quello su cui mi sono bloccata, cioè la casella combinata “Sottofascicolo”, una sorta di categorizzazione del record (vari valori, tra cui “Titoli di studio e aggiornamento” che è appunto l'ID.Sottofascicolo = 5).

Visto che ogni dipendente può avere più titoli di studio e li vorrei tutti separati (es. recordEvento n. 15, IDMatricola n. 456, descrizione “Diploma XYZ”, sottofascicolo “Titoli di studio e aggiornamento”), come faccio a mostrarli tutti, in un unico campo, magari separati almeno da una virgola, nella maschera principale?

Ho provato aggiungendo “titolos:[Descrizione]” e nella casella di testa in effetti mi esce la descrizione del titolo di studio ma mi ha duplicato i record di ogni dipendente, perché ovviamente è come se fossero record diversi, un record per record di titolo di studio.

Come si risolve in modo semplice? :(

Grazie mille in anticipo!!

28 Risposte

  • Re: Mostrare tutti i valori presenti in un campo

    Ciao,

    devi pensare che come hai fatto una sottomaschera per per la maschera principale Dipendenti, altrettanto farai una sottomaschera della sottomaschera che conterrà tutti i records relazionati alla prima sottomaschera.

    A mio avviso è il sistema più semplice e lineare dove ogni maschera e sottomaschera è legata con le proprie chiavi ai campi master primari e sencodari.

    Poi ci sono altri modi, diciamo meno lineari e più complessi da gestire con qualche riga di codice che a mio avviso spesso non meritano essere approcciati. Ti vai solo a complicare la vita e la leggibilità nel tempo del codice e del flusso delle informazioni.

    Personalmente opterei per questa soluzione che graficamente poi ti aggiusti nella form come meglio credi:

    Oppure se le due SottoMaschere sono collegate alla Principale:


    Con questo approccio sei in grado di Inserire/Aggiornare/Visualizzare i contenuti delle tre tabelle senza scrivere una riga di codice aggiuntiva, fatta eccezione per gli eventuali controlli di validazione.

    Ciao… ;-)

    N.B. questa è una soluzione che va benissimo quando hai relazioni 1 a molti
    Se fosse stato 1 a 1 non avrebbe senso creare un ulteriore sottomaschera.

  • Re: Mostrare tutti i valori presenti in un campo

    08/04/2024 - By65Franco ha scritto:


    Ciao,

    devi pensare che come hai fatto una sottomaschera per per la maschera principale Dipendenti, altrettanto farai una sottomaschera della sottomaschera che conterrà tutti i records relazionati alla prima sottomaschera.

    A mio avviso è il sistema più semplice e lineare dove ogni maschera e sottomaschera è legata con le proprie chiavi ai campi master primari e sencodari.

    Poi ci sono altri modi, diciamo meno lineari e più complessi da gestire con qualche riga di codice che a mio avviso spesso non meritano essere approcciati. Ti vai solo a complicare la vita e la leggibilità nel tempo del codice e del flusso delle informazioni.

    Personalmente opterei per questa soluzione che graficamente poi ti aggiusti nella form come meglio credi:

    Oppure se le due SottoMaschere sono collegate alla Principale:


    Con questo approccio sei in grado di Inserire/Aggiornare/Visualizzare i contenuti delle tre tabelle senza scrivere una riga di codice aggiuntiva, fatta eccezione per gli eventuali controlli di validazione.

    Ciao… ;-)

    N.B. questa è una soluzione che va benissimo quando hai relazioni 1 a molti
    Se fosse stato 1 a 1 non avrebbe senso creare un ulteriore sottomaschera.

    Ciao Franco, grazie intanto per la risposta.

    La tua disposizione delle maschere e sotto maschere sarebbe sì più facile e “pulita” ma poi mi sa mi incasinerei per capire i dati inseriti ??

    Perché io uso la tabella Eventi già come fascicolo principale, che è poi suddiviso in sottofascicoli mediante la casella combinata. Oppure intendi che gli eventi sono già divisi tramite sottofascicolo, quindi si aprirebbe il fascicoletto relativo nella sottomaschera Fascicolo?

    Però come è ora impostato il mio db ora mi piace abbastanza ?? solo vorrei mostrare meglio certi dati, per poi eventualmente sottoporli in futuro anche a filtraggio ed estrazioni.

  • Re: Mostrare tutti i valori presenti in un campo

    Si potrebbe vedere questo database, con un minimo di dati, postandolo su sito di condivisione?

  • Re: Mostrare tutti i valori presenti in un campo

    Bello l'uso di left join su campo matricola…

    Ogni dipendente quante matricole ha?

    Se una sola hai una relazione 1 a 1

    Non capisco se ne capisci poco di paghe o di database (o ambedue).

    Esistono skill (titolo di studio, curriculum, ecc..)

    Situazioni personali (componenti nucleo per assegni o permessi retribuiti a seguito di maternità o puerperio, assistenza familiari legge 104 ecc…)

    Situazioni comtrattuali (retribuzione, minimi o superminimi, scatti, permessi, ferie ecc….)

    Situazioni operative (orario lavoro, part-time verticale/orizzontale, mansioni, trasferte ecc…)

    Sono tutte del tipo che ti ha illustrato franco.

    Ora puoi risolvere il problema che hai (uno dei tanti nodi che verranno al pettine) ma dopo questo dovrai fare altro salti mortali per risolvere quelli che si presentano dopo.

  • Re: Mostrare tutti i valori presenti in un campo

    Per fare quello che vuoi devi andare di codice e inserire in una lista le voci dei campi che vuoi estrapolare.

    Ci sentiamo al prossimo venturo intoppo.

  • Re: Mostrare tutti i valori presenti in un campo

    07/04/2024 - Noire ha scritto:


    Ho una maschera principale chiamata “Dipendenti” che si basa su una query tra 2 tabelle, cioè DipendentiT (dove in pratica c'è l'anagrafica di ogni dipendente, sono i campi fissi, quindi nome, cognome, data di nascita ecc alla quale però ho aggiunto qualche piccola informazione) ed EventiT, cioè la sottomaschera vera e propria (che quindi va dentro la maschera principale DipendentiT) dove vengono annotati tutti i “movimenti” del dipendente alla quale la maschera fa riferimento, es. assunzione, cessazione, titolo di studio aggiuntivo, aggiunte varie insomma nella vita di un dipendente.

    Fin qui OK. Cioè Dipendenti uno-a-molti Eventi.

    07/04/2024 - Noire ha scritto:


    Adesso mi sono arenata sulla questione "titolo di studio", che potrei poi dover utilizzare/riciclare anche per altre possibili situazioni come sede operativa, orario di lavoro ecc. Sono tutti campi che mi servono se in futurro vorrò fare delle estrazioni e capire al volo ad esempio quanti sono assegnati alla sede operativa X, quanti sono in part-time, quanti hanno il titolo di studio Y e così via.

    Qui non ho capito. Hai dei campi specifici da mostrare/elencare? Devi sfruttare la tabella Eventi? Puoi mostrare tutti i campi delle tabelle?

    07/04/2024 - Noire ha scritto:


    In EventiT però ogni record ha vari campi, che mi possono servire un po' per ogni utilizzo, ad esempio se data di assunzione ho “DataInizio”, se part-time uso “DataInizio” e “DataFine”. 

    Poi, sempre in EventiT, ho il campo “Descrizione” dove scrivo manualmente a cosa si riferisce l'evento, e tra altri campi quello su cui mi sono bloccata, cioè la casella combinata “Sottofascicolo”, una sorta di categorizzazione del record (vari valori, tra cui “Titoli di studio e aggiornamento” che è appunto l'ID.Sottofascicolo = 5).

    Non ho capito. Puoi elencare dettagliatamente tutti i campi? Per ogni campo puoi spiegare il proprio utilizzo? Dove ti areni…puoi fare qualche esempio concreto?

    07/04/2024 - Noire ha scritto:


    Visto che ogni dipendente può avere più titoli di studio e li vorrei tutti separati (es. recordEvento n. 15, IDMatricola n. 456, descrizione “Diploma XYZ”, sottofascicolo “Titoli di studio e aggiornamento”), come faccio a mostrarli tutti, in un unico campo, magari separati almeno da una virgola, nella maschera principale?

    Secondo me è corretto gestire verticalmente ogni singolo titolo di studio, almeno in fare di INPUT. Il fatto che tu voglia vederli orizzontalmente, separati da virgola…devi optare per una query con la nota “concatenazione di Allen Brown”: serve una Public Function inserita in un Modulo e del codice VBA che regola la concatenazione.

  • Re: Mostrare tutti i valori presenti in un campo

    08/04/2024 - Noire ha scritto:


    La tua disposizione delle maschere e sotto maschere sarebbe sì più facile e “pulita” ma poi mi sa mi incasinerei per capire i dati inseriti ??

    Perché io uso la tabella Eventi già come fascicolo principale, che è poi suddiviso in sottofascicoli mediante la casella combinata.

    Ciao,

    vorrei darti un consiglio molto pratico, ed esprimere un concetto che è alla base di ogni progetto.
    Magari risulterà un po’ lungo da spiegare, cercherò di essere più sintetico possibile ;-)

    Facciamo degli esempi e per un attimo dimentica le form, le query e quant'altro.
    Siedi alla tua scrivania ed esprimi un desiderio o la necessità di inquadrare tutte le informazioni di un dipendente insieme ad altri.
    Adesso poniamo che tutte queste informazioni siano su supporto cartaceo.

    Procediamo :
    apri la cartella del dipendente e inizia a leggere le sue informazioni
    Nome, Cognome, Data di Nascita, Luogo di Nascita, Residenza, Nazionalità, ecc… Queste Info le trovi in una unica pagina di un foglio e riesci ad avere un quadro completo anagrafico del dipendente.

    Adesso vuoi vedere anche le Info formative del Dipendente… titoli di studio, attestati formativi, le lingue conosciute e a quale livello, ecc… 
    Per prendere visione di queste informazioni devi aprire un’altra cartelletta dove sono conservate tutti questi attestati.

    Adesso vuoi vedere dal lato professionale le esperienze lavorative che ha avuto nel corso della sua vita. In quale periodo, dove e con quali mansioni ha svolto le sue esperienze, ecc…
    Anche in questo caso hai un’altra cartelletta da aprire e da sfogliare dove trovi tutte le Info del caso.

    Fermiamoci qui… hai la tua scrivania piena di fogli e devi consultare le informazioni di un altro dipendente. Poi di un altro e poi un altro ancora…

    Adesso poniamo di voler raggruppare tutti i dipendenti per :
    Titolo di studio. Devi ricercare tutti quelli che sono “Ingegneri”.
    Hai anche la necessità di raggrupparli per tipo di professionalità ed esperienze nel settore “Civile”.
    Nel settore ricercato devono aver “Maturato” un certo numero di anni di esperienza.
    Non devono avere meno e più di una certa “Età”.
    Possono essere di  qualsiasi “Sesso”
    Devono conoscere ad un certo livello le “Lingue”, l’Italiano, l’inglese e lo Spagnolo

    Riepilogando stai cercando:
    - un Ingegnere
    - nel settore Civile
    - che abbia Maturato un determinato periodo di esperienze
    - di una certa Età
    - di qualsiasi Sesso
    - Lingue : Italiano, Inglese, Spagnolo… Livello Elevato (Scritto e Parlato)

    Nella tua scrivania inizi a mettere in fila, da sinistra verso destra, separando i vari fogli estrapolati dalle varie cartellette, i vari nominativi che hanno tali caratteristiche. 

    Bene, adesso poniamoci la domanda di come informatizzare queste Informazioni e ripuliamo la scrivania da tutti questi fardelli e fogli. 
    Come e Dove Archiviare e come poter Raggruppare e Ricercare.

    Iniziamo a progettare un Database che permetta di esaudire la tua esigenza.
    Dovrai scomporre le Informazioni in Tabelle e Tabelle delle Tabelle per evitare la ridondanza delle informazioni e per poter incrociare le stesse in una qualsiasi forma di raggruppamento e ricerca.
    Ecco che a questo punto nascono le Relazioni dove al centro si troverà il tuo Dipendente.
    Tante informazioni saranno di tipo 1 a 1 (per esempio il dipendente potrà avere solo un certo Sesso… anche se nel corso della sua vita potrebbe cambiarlo? ;-)… vabbè che dire, bisogna riflettere anche su questo tipo di Info come meglio trattarla)
    Altre informazioni saranno di tipo 1 a Molti (per esempio il dipendente potrà avere più titoli di studio e/o conoscere più lingue)

    Il fine, non sarà mai di cosa voglio ottenere oggi da questo tipo di archiviazione, ma sarà di cosa potrò aver bisogno in un futuro.

    Quindi non ti devi concentrare su quello che ti occorre Oggi, ma devi costruire un Database che nel Presente e in un Domani, possa sempre dare Tutte le risposte possibili ed immaginabili.

    A tal fine deve essere pensato e realizzato un Database ben Relazionato e Flessibile, dove ogni tipo di informazione ha il suo Univoco posto e motivo di Esistere.


    Ho cercato di semplificare al massimo il Concetto che vorrei far passare. 
    Sicuramente seguire questa logica ti agevola nel costruire successivamente ogni tipo di Archiviazione, Consultazione e Ricerca delle informazioni.

    Non dovrai più impazzire per cercare soluzioni con il triplo carpiato rovesciato. Tutto risulterà agevole, semplificato e ottimizzato.

    Quando costruisci una tabella, colonna per colonna, ti devi sempre fare una sola domanda che più o meno suona così: “e se avessi bisogno di?” Bene, la risposta sarà sempre la stessa, si deve creare una relazione ad una seconda tabella e la stessa a sua volta potrebbe anche aver bisogno di essere relazionata ad una altra tabella e così via dicendo…

    Ora puoi passare a realizzare il codice e sarà semplicissimo e automatico crearsi le Query i Report, le Form, i Filtri. Tutte le tue esigenze saranno soddisfatte in men che non si dica, utilizzando semplicemente gli strumenti standard messi a disposizione dal Database.


    Per esempio, venendo al tuo quesito, se vuoi esporre delle informazioni dove accanto al dipendente vuoi elencare le lingue conosciute e mettere il tutto in un unica riga…, in questo caso con l’Id Dipendente estrapoli, attraverso la sua relazione alla tabella Lingue, l’elenco delle lingue associate e le concateni in un unica stringa da esporre come risultato. 
    Ovviamente secondo l’oggetto che stai utilizzando, ci possono essere tecniche diverse da utilizzare per ottenere tale risultato.
    Ma non sempre può risultare un valido sistema… se per esempio non hai sufficiente spazio orizzontale per concatenare e visualizzare tutte le lingue? Poi ti verrà troncata questa informazione che sia a video che in un report. 

    Esempio : 
    Mario Rossi (ecc.ecc…) Lingue: Italiano, Inglese, Francese, Te..

    Ops… come vedi manca qualcosa, dove ho pensato di visualizzare o stampare non c’è abbastanza spazio perché il suddetto Mario Rossi conosce:

    Lingue:

    • Italiano
    • Inglese
    • Francese
    • Tedesco
    • Spagnolo

    Bene!!! Allora per determinate informazioni dovrò necessariamente elencarle in verticale e non in orizzontale.

    In sostanza nel progettare le visualizzazioni e/o i report, dovrai tener conto del tipo di informazioni e come poterle meglio esporle per non perdere nessuna di esse.
    In questi casi la logica ti viene in soccorso e traccia la soluzione e la strada da percorrere.

    Volevo essere sintetico, ma mi sa tanto che proprio non ci sono riuscito ;-)
    Spero di essere riuscito a darti un suggerimento/consiglio.
    ;-)

  • Re: Mostrare tutti i valori presenti in un campo

    Ti renderai conto presto che dire “vorrei tutto su un campo” può generare confusione al punto da indirizzare la discussione su orizzontale.e verticale…

    Anche con sviluppo verticale, come hai fatto tu, nonostante ti si dica di sviluppare in verticale, la frase genera dubbi.

    Io la interpreto come voler estrapolare informazioni ed esporle in unica soluzione. Una anteprima di stampa (in un foglio hai tutte le info che servono e si può considerare come unico contenitore - un campo).

    Oppure mettere tutto in un memo.

    Se l'ottica è questa, vai di codice estrapolando quello che ti serve scorrendo il sub-record ed inserendo i valori che trovi sul memo (o una lista).

    Tuttavia, la meno complicata sembra una preview di un report con i dati impostati come da filtro (e puoi anche stamparli).

  • Re: Mostrare tutti i valori presenti in un campo

    09/04/2024 - sihsandrea ha scritto:


    Oppure mettere tutto in un memo.

    Ciao… ok per il memo, ma se tutto non c'entra ? allora si ritorna ad una visualizzazione Verticale

    Se non si valuta bene fin dall'inizio poi si entra in loop su… cosa fare ?  ;-)

    Alla fine si ritorna sempre lì.. una buona analisi al giorno , toglie il medico d'intorno.  ;-))

  • Re: Mostrare tutti i valori presenti in un campo

    09/04/2024 - By65Franco ha scritto:


    Alla fine si ritorna sempre lì.. una buona analisi al giorno , toglie il medico d'intorno.  ;-))

    Concordo…

    Ricordo un 3d dove si voleva visualizzare in unica schermata una 30na di colonne e un altro dove si volevano visualizzare 10 tabelle collegate tra loro in unica schermata… manco fosse la borsa della grande mela.

  • Re: Mostrare tutti i valori presenti in un campo

    09/04/2024 - sihsandrea ha scritto:


    Ricordo un 3d dove si voleva visualizzare in unica schermata una 30na di colonne e un altro dove si volevano visualizzare 10 tabelle collegate tra loro in unica schermata… manco fosse la borsa della grande mela.

    ;-))   Caspita!

    pazzesco direi … insomma trattare ms access come se fosse Excel, ma forse anche peggio.

    Vabbè… se ne vedono e sentono di tutti i colori.

    Con qualsiasi database bisogna essere in sintonia, fare quello che è consentito di fare con la massima semplicità e normalità per ottenere il massimo dei risultati. Le cose fatte fuori norma, fuori standard, rendono poi la vita difficile e tutto diventa incomprensibile. 

    Che dire… spesso qualcuno ci deve sbattere il naso più volte prima di capire che le cose "Normali" funzionano sempre e comunque bene. ;-)

  • Re: Mostrare tutti i valori presenti in un campo

    Ciao,

    Intanto grazie mille a tutti per le risposte, le idee e consigli che mi state dando.

    Per ora il file a cui sto lavorando è questo: https://we.tl/t-oZ0OZEdIUl Ho ovviamente messo un po' dei dati di fantasia ma cercato di dargli un po' di senso. 

    In pratica quello che cerco di fare è una digitalizzazione di un archivio, quindi ogni dipendente ha la sua storia. Ci sono quelli che hanno solo un'assunzione e cessazione, quelli con al massimo un po' di part-time, un tempo determinato poi diventato indeterminato e infine pensionamento, altri invece carriera davvero complicate. Per i titoli di studio anche qui alcuni ne hanno 1-2, altri invece molti di più, senza contare poi tutti i corsi di aggiornamento.

    C'è chi ha di tutto e di più, a partire da quelli che cambiano anche 2-3 profili lavorativi proprio, chi cessa e poi viene riassunto, chi ha varie posizioni, valutazioni ecc. Io comunque mi “limito” alla parte giuridica, infatti della parte economica, contabile, paghe ecc. non ne voglio sapere nulla.

    09/04/2024 - By65Franco ha scritto:


    Iniziamo a progettare un Database che permetta di esaudire la tua esigenza.
    Dovrai scomporre le Informazioni in Tabelle e Tabelle delle Tabelle per evitare la ridondanza delle informazioni e per poter incrociare le stesse in una qualsiasi forma di raggruppamento e ricerca.
    Ecco che a questo punto nascono le Relazioni dove al centro si troverà il tuo Dipendente.
    Tante informazioni saranno di tipo 1 a 1 (per esempio il dipendente potrà avere solo un certo Sesso… anche se nel corso della sua vita potrebbe cambiarlo? ;-)… vabbè che dire, bisogna riflettere anche su questo tipo di Info come meglio trattarla)
    Altre informazioni saranno di tipo 1 a Molti (per esempio il dipendente potrà avere più titoli di studio e/o conoscere più lingue)

    Il fine, non sarà mai di cosa voglio ottenere oggi da questo tipo di archiviazione, ma sarà di cosa potrò aver bisogno in un futuro.

    Quindi non ti devi concentrare su quello che ti occorre Oggi, ma devi costruire un Database che nel Presente e in un Domani, possa sempre dare Tutte le risposte possibili ed immaginabili.

    A tal fine deve essere pensato e realizzato un Database ben Relazionato e Flessibile, dove ogni tipo di informazione ha il suo Univoco posto e motivo di Esistere.


    Per esempio, venendo al tuo quesito, se vuoi esporre delle informazioni dove accanto al dipendente vuoi elencare le lingue conosciute e mettere il tutto in un unica riga…, in questo caso con l’Id Dipendente estrapoli, attraverso la sua relazione alla tabella Lingue, l’elenco delle lingue associate e le concateni in un unica stringa da esporre come risultato. 

    Intanto grazie mille per la tua risposta! Quindi in pratica ogni tabella fungerà da contenitore, dove vado a mettere le informazioni da pescare. 

    Quindi ad esempio tabella “TitoliT” conterrà, per ogni record, solo i vari titoli posseduti dal dipendente. Ogni titolo ha un suo ID diverso.

    Posso poi fare la stessa cosa per la tabella “AnagraficaT” per esempio, dove andrò a mettere magari i cambi di residenza, le nuove informazioni ecc.

    Però come faccio per ogni periodo di lavoro? La tabella “Eventi”, a sinistra del tuo schema, serve da contenitore generale, da cui poi si divideranno nelle varie tabelle? 

    Ad esempio un dipendente è stato dal 01/01/2021 al 31/12/2022 assunto a tempo determinato con il profilo X. Questo va nella tabella generale Eventi? Cliccandoci poi sopra al periodo “01/01/2021-31/12/2022”, andrò nell'altra tabella con più in dettaglio delibera di assunzione, contratto a tempo determinato, documenti di assunzioni riferiti a questo periodo, e qualsiasi altra cosa riferita a questo periodo? Quindi anche quello che succede durante la carriera in questo lasso di tempo?

    Altro esempio: dal 01/01/2000 al 31/12/2023 assunto a tempo indeterminato. In questi 23 anni ha cambiato profilo da A a B (stato A dal 01/01/2000 al 2013 e poi B dal 2014 fino al 2023). Ha avuto 2 part-time, varie valutazioni, dei congedi non retribuiti (a giornate qua e là) e infine dal 01/01/2024 è in pensione, quindi cessato (e qui c'è tutta la parte previdenziale).

    Insomma devo capire bene come impostare il database per poi partire con la digitalizzazione..

  • Re: Mostrare tutti i valori presenti in un campo

    Ciao, e buona giornata… 

    10/04/2024 - Noire ha scritto:


    Quindi in pratica ogni tabella fungerà da contenitore, dove vado a mettere le informazioni da pescare. 

    Esatto !!

    10/04/2024 - Noire ha scritto:


    Quindi ad esempio tabella “TitoliT” conterrà, per ogni record, solo i vari titoli posseduti dal dipendente. Ogni titolo ha un suo ID diverso.

    Posso poi fare la stessa cosa per la tabella “AnagraficaT” per esempio, dove andrò a mettere magari i cambi di residenza, le nuove informazioni ecc.

    Proprio così !

    10/04/2024 - Noire ha scritto:


    Insomma devo capire bene come impostare il database per poi partire con la digitalizzazione..

    Funzioni

    Si , il concetto l'hai espresso veramente bene.

    Ora devi solo individuare quali sono le informazioni e organizzarlle.

    E' come scrivere un Libro dove avrai:

    • un Titolo
    • la Premessa
    • un Indice
    • i Capitoli
      • paragrafi
        • note a piè di pagina
    • i Riassunti
    • la Conclusione (the end)

    Individua il soggetto principale e raccogli tutte le informazioni che ti occorrono. Per esempio  il soggetto è il “Dipendente” e gira tutto attorno a questa figura. La puoi chiamare, tabella Anagrafica. Da essa si diramano tutti i Capitoli. Nella tabella Capitoli per ogni Anagrafica avrai i Paragrafi e a sua volta le possibili Note a piè pagina.

    Le diramazioni saranno le Relazioni. Come hai sopra riportato, per taluni capitoli può esistere un rapporto uno a uno e per altri un rapporto uno a molti.
    Tradotto è come dire : 
    una Anagrafica ha tanti Capitoli ( uno a molti ) una Agarafica e molti Capitoli.  
    una Anagrafica può avere un solo Capitolo ( uno a uno ) per esempio, una Anagrafica ha un solo luogo di Nascita.

    E si, perchè anche per i luoghi sarà necessario avere una tabella dove riporterai in modo Gerarchico lo  Stato, la Regione, la Città, il Comune e la Località.

    Questa Tabella per esempio è utile per tutte le Anagrafiche Dipendenti e ti permette di non ridondare le informazioni e di assegnare velocemente ad ogni Anagrafica:

    • il Luogo di Nascita 
    • il luogo di Residenza Attuale
    • il luogo dei vari Lavori che ha svolto
    • ecc.ecc.

    Quindi come vedi hai una sola tabella per indicare più tipi di informazioni da associare ad ogni Anagrafica. 
    Per esempio il Luogo di Nascita ha relazione uno a uno
    il Luogo di residenza ha la relazione uno a molti
    il Luogo di Lavoro ha una relazione uno a molti
    il luogo di decesso ha la relazione uno a uno ;-))


    E' un lavoro certosino e abbastanza lungo… sviluppalo su carta (per esempio PowerPoint) con un schema a blocchi e in ogni blocchetto metterai il tipo di informazione e come potrà essere condivisa, attribuita e quando.

    Successivamente per ogni blocco e quindi per ogni passaggio da blocchetto a blocchetto, si inserisce: i controlli e validazione, i calcoli e le varie azioni possibili.

    Più o meno una cosa del genere.

  • Re: Mostrare tutti i valori presenti in un campo

    10/04/2024 - Noire ha scritto:


    Per ora il file a cui sto lavorando è questo: https://we.tl/t-oZ0OZEdIUl

    Lo scarico volentieri ma non vorrei tenerne di conto.

    Sarebbe interessante capire prima da dove paertire , per dove arrivare e come arrivarci.

    Per essere comprensibile a tutti, come ti dicevo sopra, schematizza tutto il processo e le informazioni, di volta in volta ci sottoponi lo stato dell'arte e vediamo di analizzarlo insieme cercando di perfezionare lo schema con tutti i suoi contenuti e passaggi.

    Alla fine di questo lavoro, che si chiama Analisi, sviluppare il Database sarà un gioco veloce, divertente e assai facile. In pratica inizierai a scrivere il codice tutto di un fiato senza intoppi, con chiarezza e senza sotterfugi per realizzare delle cose che all'origine non sono state previste.

    Questo te lo posso garantire e sono pronto a mettere la mano sul fuoco. 

    ;-)


    P.S.

    Ho preso visione del tuo file se sei neofita ti faccio i complimenti per alcune cose che apprezzo moltissimo.
    Come vedi e come hai detto sopra si deve lavorare sulle relazioni tra le tabelle, quante e che tipo di tabelle occorrono e questo dipende dalla profondità dell'informazioni da trattare.
    Per adesso mi sento di dirti …. Brava !!! 
    C'è molto da lavorare come ti accennavo sopra, penso tu abbia l'atteggiamento giusto per farcela facilmente e qui, i tanti esperti sono in grado di darti le giuste dritte per arrivare a meta.
    Brava !!!

Devi accedere o registrarti per scrivere nel forum
28 risposte