Concatenare valori da record correlati

di il
28 risposte

Concatenare valori da record correlati

Come suggerito apro questo nuovo trhead:
ho una tabella dipendenti:(ID_dipendente, cognome, nome, ecc), una tabella elenco_rischi: (ID_rischio, tipo_rischio), ed una tabella di appoggio rischi_dipendenti: ID_dipendente (lookup da tabella dipendenti), ID_rischio (lookup da elenco_rischi) quantità_rischio (testo dove inserire il valore del rischio ES: 85 Decibel per rischio rumore); Se in una query volessi inserire un campo calcolato in cui raggruppare in un unico campo tutti i rischi per ciascun dipendente come devo fare?? In pratica una query di selezione mi darebbe questo risultato:
ID_dipendente ID_rischio quantità_rischio
Tizio rumore 85 dB
Tizio vibrazioni 5 m/s2
Caio rumore 87 dB
Caio posture 8 h/die
L'obiettivo è ottenere una query che raggruppando per dipendente mi dia il seguente risultato:
ID_dipendente rischi complessivi
Tizio rumore 85 dB, vibrazioni 5m/s2
Caio rumore 87 dB, posture 8 h/die
Ringrazio anticipatamente!

28 Risposte

  • Re: Concatenare valori da record correlati

    Philcattivocarattere mi ha dato il seguente suggerimento: " Comunque credo che questa funzione possa esserti utile: http://allenbrowne.com/func-concat.htm" ho cercato di applicarlo al mio caso ma senza risultati! prbabilmente anzi sicuro non ciò capito nulla!
  • Re: Concatenare valori da record correlati

    Blueyes ha scritto:


    Philcattivocarattere mi ha dato il seguente suggerimento: " Comunque credo che questa funzione possa esserti utile: http://allenbrowne.com/func-concat.htm" ho cercato di applicarlo al mio caso ma senza risultati! prbabilmente anzi sicuro non ciò capito nulla!
    Beh il suggerimento di Phil è coerente... e plausibile, ora puoi e devi studiare tu la Funzione e capire, anche cercando di studiare con il DEBUG come agisce, se è adattabile alle tue esigenze... e poi vedi se tu sei in grado di farlo...!

    Il fatto che tu dica di non averci capito nulla... è un modo per dire che non ti ci sei dedicato, e nessuno lo farà al tuo posto in un Forum.
    Alternativa è comprendere che è troppo avanzata... l'esigenza e la soluzione, quindi puoi pensare di farlo quando avrai più competenza.
  • Re: Concatenare valori da record correlati

    Non pretendo di avere la soluzione pronta ...ci mancherebbe altro! sono un medico e non un programmatore e cerco di industriarmi per autocostruirmi un database utile per la mia professione.... qui cerco suggerimenti semplici adatti al mio livello basico.. ...cmq grazie per il tuo suggerimento...mi applicherò di piu (spiriamo di risolvere!!!)
  • Re: Concatenare valori da record correlati

    Blueyes ha scritto:


    Non pretendo di avere la soluzione pronta ...ci mancherebbe altro! sono un medico e non un programmatore e cerco di industriarmi per autocostruirmi un database utile per la mia professione....
    Io non sono medico, e come te nemmeno programmatore... e uso Access come te solo per agevolare il mio lavoro, quindi partiamo pari.

    Blueyes ha scritto:


    qui cerco suggerimenti semplici adatti al mio livello basico.. ...cmq grazie per il tuo suggerimento...mi applicherò di piu (spiriamo di risolvere!!!)
    Qui riceverai SUGGERIMENTI che risolvono il problema che hai posto... perchè penso sia tu a dover fare un passettino verso il suggerimento e non viceversa.

    L'errore che commetti, probabilmente per inesperienza, è quello di provare ad adattarlo alla tua esigenza senza aver capito cosa fa quella funzione e come lavora...!
    Hai fatto DEBUG sulla funzionalità dell'esempio...?
    Hai seguito PASSO-PASSO la funzione e verificato ad ogni riga i valori delle variabili e come agiscono...?
    Questo è l'unico modo per capire...!

    Se la risposta alle domande precedenti è SI, allora siamo quì e vediamo insieme DOVE non funziona e dove genera errore in modo specifico...!
    Se le risposte sopra sono negative, fatico a capire in cosa si può tradurre concretamente la tua richiesta "cerco suggerimenti semplici adatti al mio livello basico"...
  • Re: Concatenare valori da record correlati

    Io obietto l'idea di CONCATENARE. E se i QuantitàRischio di un Dipendente dovessero essere 10 o più...ti conviene? Dove li vai a scrivere/leggere? È vero che la semplice query di selezione ti restituisce i MOLTI record di IDDipendente rendendo il colpo d'occhio "confusionabile". Di conseguenza io costruirei un REPORT basato su quella query dove ogni Dipendente avrà una propria elencazione verticale di tutti i suoi QuantitàRischio. Il tutto più chiaro e facilmente leggibile.
  • Re: Concatenare valori da record correlati

    E' vero osvaldo! è quello che faccio attualmente sul programma ossia l'elencazione verticale dei (molti) rischi in un report (che è una cartella clinica); solo che così facendo mi ci vuole quasi una pagina intera per elencare i rischi dei dipendenti e ho necessità di accorpare in un unico campo; l'alternativa che avevo pensato è il campo "multivalore" che se da un lato mi permette questa soluzione, dall'altro mal si adatta alle statistiche che devo generare e non mi permette di inserire per ogni rischio il relativo valore.
  • Re: Concatenare valori da record correlati

    In genere queste problematiche si risolvono con una query PIVOT:
    per cui ti suggerisco di cercare TRANSFORM nella guida di Access.
  • Re: Concatenare valori da record correlati

    Hai pensato a tenere distinta la parte di VISUALIZZAZIONE e gestione dati, quindi la FORM, dalla parte di STAMPA...?

    Io nella gestione dei rischi, uso nella stampa delle Schede un Report MULTICOLONNA... come SottoReport, quindi mi vedo i Rischi sostanzialmente distribuiti su 4 o 5 colonne(per n righe, quelle che servono)... il tutto senza 1 Riga di codice in quanto la relazione Lavoratore(Rischi Correlati) è vincolata da 1-M(in realtà Molti-Molti) ma va bene...

    In una maschera invece usata per l'interfaccia, la rappresentazione dei Rischi correlati è e deve essere in verticale perforza, se serve ad associare ad un Lavoratore un determinato Rischio.
    In questo caso la gestione relazionale Molti-Molti la faccio con le ListBox e dei campi Testo a completamento.

    Anche perchè, ad esempio un lavoratore esposto a rischio Chimico, probabilmente andranno individuate anche le sorgenti di rischio associate al fine di stabilire sia i DPI da usare che i rischi correlati...
    Vengono poi introdotte anche l'indice di rischio o fattore o magnitudo al fine di redarre la corretta valutazione, così come il Rumore che hai esposto ha la permanenza ed il livello sonoro in DBA... ecc...!

    Riassumendo è vero che devi visualizzare le informazioni Necessarie, ma prima devi preoccuparti di STRUTTURARLE in modo adeguato, non puoi pensare di usare dei Campi di testo e mettere dentro tutto... poi come fai a fare statistiche, che, nel tuo lavoro credo siano Fondamentali...?
  • Re: Concatenare valori da record correlati

    Il mio obiettivo è inserire un campo calcolato (proveniente da una query) in un report di stampa (che è rappresentato da una cartella clinica) nel quale inserire in "orizzontale" l'insieme dei rischi del dipendente evitando la creazione di un sottoreport che se da un lato mi "semplifica la vita" dall'altro mi fa occupare molto spazio in "verticale" sul foglio A4 causandomi di conseguenza troppe pagine in stampa.
  • Re: Concatenare valori da record correlati

    Blueyes ha scritto:


    Il mio obiettivo è inserire un campo calcolato (proveniente da una query) in un report di stampa (che è rappresentato da una cartella clinica) nel quale inserire in "orizzontale" l'insieme dei rischi del dipendente evitando la creazione di un sottoreport che se da un lato mi "semplifica la vita" dall'altro mi fa occupare molto spazio in "verticale" sul foglio A4 causandomi di conseguenza troppe pagine in stampa.
    Hai letto BENE quello che ti ho scritto...?
    Secondo me NO, e non dire che ti ho dato un suggerimento difficile...!
  • Re: Concatenare valori da record correlati

    Scusami Alex, perdona l'ignoranza, ma non capisco il significato di report Multicolonna....è una proprietà del report? e come si ottiene ? non saprei davvero dove iniziare a cercare!
  • Re: Concatenare valori da record correlati

    La guida è una cosa che deve aiutarti...
    Nelle impostazioni di stampa... puoi impostare il report a stampare in colonne...
    Quindi se definisci la larghezza del Report a 4 cm... puoi definire fino a 5 colonne in un A4 verticale e, 8 i orizzontale... ovviamente trattandosi di un SubReport il bordo lo metti a zero e sfrutti tutta la superficie... sarà poi il Report a definire i veri margini.
    In questo modo ottieni 5 colonne di Rischi e direi che anche se passi 4 righe ... ovvero 20 rischi non è così scandaloso ed esteticamente perfetto l'allineamento.
  • Re: Concatenare valori da record correlati

    OK Alex grazie di cuore!!! mi hai insegnato altra cosa di cui non avevo affatto conoscenza "strutturare un report in colonne" ed applicata alla mia problematica direi che funziona abbastanza bene!! ho dovuto settare a 3 colonne e larghezza 6 perchè il contenuto dei campi mi veniva troncato nonostante avessi settato la proprietà del campo espandibile SI e non capisco il perchè. non so se puoi/potete darmi un suggerimento su questo aspetto; intanto Vi RINGRAZIO ANCORA!!!
  • Re: Concatenare valori da record correlati

    Hai impostato ad espandibile anche la Sezione del Corpo(o quella nella quale hai il controllo)...?
    Altrimenti ottieni l'espandibilità del Controllo, ma fino alla saturazione Verticale della sezione, se metti entrambi ad ESPANDIBILE si inseguono in espansione fino a consentire la completa leggibilità.

    Usa, in questi casi un FONT a caratteri Condensati, come Arial Narrow o simili, per ottimizzare le cose.
Devi accedere o registrarti per scrivere nel forum
28 risposte