Somme su Report (Access 2013)

di il
6 risposte

Somme su Report (Access 2013)

Buongiorno,
ho bisogno di effettuare delle somme condizionate sul campo di una tabella per ottenere la valorizzazione di una cella in un report.
Le tabelle:

Laboratorio
-Id
-Nome(testo)
-qta_mese(numero)

Commesse
-Id
-Articolo(testo)
-qta(numero)
-id_laboratorio
-data_entrata(data)
-data_uscita(data)

Nel report ho creato una tabella dei mesi dell'anno (gennaio, febbraio, ecc.) ogni colonna è un mese e ogni riga è un laboratorio. Ora ogni cella (es. Lavanderia/Gennaio) deve restituire la somma delle quantità della merce data a gennaio, sommando i record del campo commesse.qta ogni volta che il mese di commesse.data_entrata è gennaio e l'id_laboratorio è uguale all'id della lavanderia.

Non sono un esperto di access, e non ho idea di come assegnare questo calcolo alle celle del report.
C'è qualche anima pia che ha un consiglio per me?

Grazie infinite

6 Risposte

  • Re: Somme su Report (Access 2013)

    Saskemoboba ha scritto:


    Laboratorio
    -Id-Nome(testo)
    -qta_mese(numero)
    Perchè hai un campo qta_mese nella tabella Laboratori (preferibilmente al plurale)?
  • Re: Somme su Report (Access 2013)

    Ciao e grazie per la risposta.
    sta ad indicare le quantità massime prodotte da quel laboratorio in un mese.
  • Re: Somme su Report (Access 2013)

    Io lavorerei prima con una query e poi farei poggiare il report sulla query. Le query con i calcoli non sono il mio forte, ma proviamo a ragionare per piccoli passi. Visualizzazione struttura query che include entrambe le tabelle:
    1. Per "filtrare" l'IDLaboratorio=Lavanderia per esempio 10, devi scrivere
    =10
    nel Criterio sotto il campo IDLaboratorio
    2. Per estrarre le commesse di gennaio, devi usare la funzione Month([data_entrata]) e usare il Criterio =1
    3. Poi dovresti cliccare in alto sul tasto Totali, lasciare Raggruppamento su tutti i campi e scegliere Somma sul campo qta

    Detto (rozzamente) così succede però che tu vai a considerare "tutti i gennaio" indipendentemente dall'Anno. Devi quindi destreggiarti con ulteriore criterio per filtrare un particolare Anno.
  • Re: Somme su Report (Access 2013)

    Ti ringrazio per il consiglio.
    dovrei effettuare una query per ogni mese... inoltre come ottengo un solo campo con la somma nel report?
  • Re: Somme su Report (Access 2013)

    Saskemoboba ha scritto:


    ...
    -data_entrata(data)
    ...
    deve restituire la somma delle quantità della merce data a gennaio, sommando i record del campo commesse.qta ogni volta che il mese di commesse.data_entrata è gennaio e l'id_laboratorio è uguale all'id della lavanderia.

    OsvaldoLaviosa ha scritto:


    ...
    2. Per estrarre le commesse di gennaio, devi usare la funzione Month([data_entrata]) e usare il Criterio =1
    ...
    Devi quindi destreggiarti con ulteriore criterio per filtrare un particolare Anno.
    Prendendo Mese ed Anno da qualche parte (immagino una maschera per l'immissione dei criteri di ricerca) sul campo data è meglio usare
    Between #mese/01/anno# AND #mese/ultimogiorno/anno#
    la differenza su molti record si nota (Microsoft Access: Queries - Criteria on calculated fields)
    L'ultimo giorno del mese si calcola mettendo a zero il giorno del mese successivo.
    Spiegazione supertelegrafica ma facilmente approfondibile con una ricerca sul web
  • Re: Somme su Report (Access 2013)

    Grazie mille a tutti!
    ho risolto aggiungendo i campi delle tabelle nel report tramite l'apposito pulsante, e così facendo sono riuscito a utilizzare le espressioni in "origine di controllo".
    =Somma(IIf(Month([data_entrata])=1;[qta];0))

    Grazie a tutti per le risposte!
Devi accedere o registrarti per scrivere nel forum
6 risposte