Newsgroup: it.comp.appl.access
Titolo: calcolare totali progressivi per mese

sto cercando di inventarmi un modo semplice per ottenere i totali 
progressivi per mese di una serie di registrazioni
 
in pratica ho questi 5000+ record che partono dal 2017 e vorrei ottenere, 
per ognuno dei 9-10 codici che vi compaioni, i totali progressivi
 
esempio:
 
il primo codice aaaaaa ha parziali di  15,  3,  7,   -6
il secondo bbbbbb comincia con         -6,  2,  15,  -4
l'ultimo cccccc ha                     10, 21, -20, -13
 
Codice/periodo  2021-06 2021-07 2021-08 2021-09 etc
aaaaaa             15      18      25      19
bbbbbb             -6      -4      11       7
cccccc             10      31      11      -2
 
ci ragionavo sopra prima di pranzo senza riuscire a semplificare una query 
mostruosamente complicata e tutta da verificare
 
adesso ci riprovo a panza piena
 
-- 
/-\ /\/\ /\/\ /-\ /\/\ /\/\ /-\ T /-\
-=- -=- -=- -=- -=- -=- -=- -=- - -=-
........... [ al lavoro ] ...........

 
 
 
forse ho capito male quello che vuoi ottenere ma mi pare una 
normalissima pivot
 
se lavori con sql server
 
https://docs.microsoft.com/it-it/sql/t-sql/queries/from-using-pivot-and-unpivot?view=sql-server-ver15
 
 
 
BFS
 
-- 
Questa email è stata esaminata alla ricerca di virus da AVG.
http://www.avg.com
 
 

 
 
none, la pivot in excel mi da i totali di ogni mese, ma non me li somma 
progressivamente :)
 
a meno che ci sia qualche parametro che non conosco... :/


 in pratica ho questi 5000+ record che partono dal 2017
 
ecco: il primo passo è stato quello di accorparli per periodo/descrizione, 
sommando gli importi. Ho ottenuto così poco più di 280 righe.
 
Ai fini pratici avrò poi bisogno di usare solo i periodi dell'anno in corso 
(ma i totali dovranno comunque partire dalla prima registrazione)
 
il risultato non deve essere necessariamente una "tabella pivot", va bene 
anche una semplice tabella
 
riprendendo l'esempio:
 
esempio:
 
il primo codice aaaaaa ha parziali di  15,  3,  7,   -6
il secondo bbbbbb comincia con         -6,  2,  15,  -4
l'ultimo cccccc ha                     10, 21, -20, -13
 
Codice/periodo  2021-06 2021-07 2021-08 2021-09 etc
aaaaaa             15      18      25      19
bbbbbb             -6      -4      11       7
cccccc             10      31      11      -2
 
va bene anche una tabella finale tipo:
 
aaaaaa     2021-06    15
aaaaaa     2021-07    18
aaaaaa     2021-08    25
aaaaaa     2021-09    19
bbbbbb     2021-06    -6
bbbbbb     2021-07    -4
bbbbbb     2021-08    11
bbbbbb     2021-09    7
cccccc     2021-06    10
cccccc     2021-07    31
cccccc     2021-08    11
cccccc     2021-09    -2
 
 
 
 
 
qui sotto un file di esempio, con descrizioni e importi fittizi
un primo risultato in excel, combinando una tabella pivot e una con formule 
è qui:
 
https://i.imgur.com/KU7MEgq.png
 
 
(mi serviva giusto per verificare che i totali quadrassero)
 
periodo	descr	 EUR 
2017-12	Mele	-3.80 
2018-01	Mele	 1.86 
2018-02	Mele	 0.63 
2018-03	Mele	 41.23 
2018-04	Mele	 22.01 
2018-05	Mele	 25.41 
2018-06	Mele	 0.04 
2018-07	Mele	 0.26 
2018-08	Mele	-2.94 
2018-09	Mele	-38.16 
2018-10	Mele	 27.33 
2018-11	Mele	 11.69 
2018-12	Mele	-2.65 
2019-01	Mele	-11.61 
2019-02	Mele	 0.44 
2019-03	Mele	-72.53 
2019-04	Mele	-0.21 
2019-05	Mele	 14.28 
2019-06	Mele	 7.77 
2019-07	Mele	-0.84 
2019-08	Mele	 0.30 
2019-09	Mele	 1.12 
2019-10	Mele	-1.12 
2019-11	Mele	 13.40 
2019-12	Mele	 28.46 
2020-01	Mele	-19.45 
2020-02	Mele	 18.79 
2020-03	Mele	 1.90 
2020-04	Mele	 15.80 
2020-05	Mele	-5.47 
2020-06	Mele	-11.90 
2020-07	Mele	 14.90 
2020-08	Mele	 1.24 
2020-09	Mele	-0.91 
2020-10	Mele	 9.68 
2020-11	Mele	-13.05 
2020-12	Mele	-5.69 
2021-01	Mele	 2.88 
2021-02	Mele	 30.16 
2021-03	Mele	-1.14 
2021-04	Mele	-0.00 
2021-05	Mele	 1.55 
2021-06	Mele	 0.61 
2021-07	Mele	 48.38 
2021-08	Mele	 2.40 
2021-09	Mele	-0.18 
2021-10	Mele	-133.75 
2021-11	Mele	 1.41 
2021-12	Mele	 1.46 
2022-01	Mele	-0.56 
2022-02	Mele	 1.17 
2020-10	Pere	 32.01 
2020-11	Pere	-0.06 
2020-12	Pere	-32.82 
2021-01	Pere	-12.13 
2021-02	Pere	 67.38 
2021-03	Pere	-5.82 
2021-04	Pere	 99.62 
2021-05	Pere	-50.45 
2021-06	Pere	-0.92 
2021-07	Pere	-226.43 
2021-09	Pere	 0.10 
2021-10	Pere	 2.59 
2021-11	Pere	 81.09 
2021-12	Pere	 1.35 
2022-01	Pere	 24.71 
2022-02	Pere	-36.13 
2020-01	Banane	-2.42 
2020-02	Banane	-31.91 
2020-03	Banane	-0.13 
2020-04	Banane	 4.90 
2020-05	Banane	 0.48 
2020-06	Banane	 280.74 
2020-07	Banane	-6.51 
2020-08	Banane	-0.17 
2020-09	Banane	-384.94 
2020-10	Banane	-27.07 
2020-11	Banane	 0.57 
2020-12	Banane	 16.55 
2021-01	Banane	 0.47 
2021-02	Banane	 78.97 
2021-03	Banane	-0.23 
2021-04	Banane	-25.00 
2021-05	Banane	-47.81 
2021-06	Banane	 2.27 
2021-07	Banane	 39.10 
2021-08	Banane	 1.97 
2021-09	Banane	-3.95 
2021-10	Banane	 71.05 
2021-11	Banane	 0.60 
2021-12	Banane	 240.54 
2022-01	Banane	 25.94 
2022-02	Banane	-149.23 
2017-12	Pesche	-174.56 
2018-01	Pesche	-3.75 
2018-02	Pesche	-136.23 
2018-03	Pesche	 3.41 
2018-04	Pesche	 4.21 
2018-05	Pesche	-52.41 
2018-06	Pesche	 0.04 
2018-07	Pesche	 85.18 
2018-08	Pesche	-3.79 
2018-09	Pesche	 132.83 
2018-10	Pesche	-3.14 
2018-11	Pesche	 0.81 
2018-12	Pesche	-19.43 
2019-01	Pesche	 1.65 
2019-02	Pesche	 9.52 
2019-03	Pesche	-44.67 
2019-04	Pesche	-0.13 
2019-05	Pesche	-16.93 
2019-06	Pesche	-13.30 
2019-07	Pesche	-2.39 
2019-08	Pesche	-91.96 
2019-09	Pesche	 0.02 
2019-10	Pesche	-26.53 
2019-11	Pesche	 1.76 
2019-12	Pesche	 8.46 
2020-01	Pesche	-19.96 
2020-02	Pesche	-0.10 
2020-03	Pesche	 22.49 
2020-04	Pesche	-33.95 
2020-05	Pesche	 5.83 
2020-06	Pesche	-0.11 
2020-07	Pesche	 121.73 
2020-08	Pesche	-0.27 
2020-09	Pesche	 9.46 
2020-10	Pesche	 10.17 
2020-11	Pesche	 9.04 
2020-12	Pesche	-51.41 
2021-01	Pesche	-0.97 
2021-02	Pesche	-247.25 
2021-03	Pesche	-6.38 
2021-04	Pesche	 6.78 
2021-05	Pesche	 117.15 
2021-06	Pesche	-1.69 
2021-07	Pesche	 10.13 
2021-08	Pesche	-92.57 
2021-09	Pesche	-2.07 
2021-10	Pesche	-20.26 
2021-11	Pesche	 6.76 
2021-12	Pesche	-84.64 
2022-01	Pesche	 1.08 
2022-02	Pesche	 2.80 
2022-03	Pesche	-7.37 
2017-12	Susine	-1.47 
2018-01	Susine	-16.88 
2018-02	Susine	-35.19 
2018-03	Susine	 2,735.11 
2018-04	Susine	 323.54 
2018-05	Susine	-298.54 
2018-06	Susine	-607.38 
2018-07	Susine	 112.30 
2018-08	Susine	 984.83 
2018-09	Susine	 357.71 
2018-10	Susine	-199.27 
2018-11	Susine	-297.08 
2018-12	Susine	-3.43 
2019-01	Susine	 4,509.12 
2019-02	Susine	-5,756.30 
2019-03	Susine	 4,876.63 
2019-04	Susine	 1,617.99 
2019-05	Susine	-1,307.70 
2019-06	Susine	-1,081.47 
2019-07	Susine	 4,115.78 
2019-08	Susine	 54.03 
2019-09	Susine	-510.27 
2019-10	Susine	 1,250.25 
2019-11	Susine	-4,131.94 
2019-12	Susine	 560.34 
2020-01	Susine	-223.24 
2020-02	Susine	-381.62 
2020-03	Susine	-545.77 
2020-04	Susine	 2,900.26 
2020-05	Susine	-3,477.37 
2020-06	Susine	-840.22 
2020-07	Susine	 1,696.42 
2020-08	Susine	-1,632.76 
2020-09	Susine	 4,022.37 
2020-10	Susine	 3,954.66 
2020-11	Susine	 247.28 
2020-12	Susine	 4,046.76 
2021-01	Susine	 5,279.71 
2021-02	Susine	 1,760.00 
2021-03	Susine	-3,155.37 
2021-04	Susine	 8,088.66 
2021-05	Susine	-65.54 
2021-06	Susine	-4,323.94 
2021-07	Susine	-1,064.28 
2021-08	Susine	-5,769.07 
2021-09	Susine	 0.38 
2021-10	Susine	-1,048.16 
2021-11	Susine	 2,945.78 
2021-12	Susine	-1,115.20 
2022-01	Susine	-2,956.83 
2022-02	Susine	-311.72 
2022-03	Susine	 709.99 
2017-12	Castagne	-787.03 
2018-01	Castagne	-165.32 
2018-02	Castagne	-1,871.42 
2018-03	Castagne	-955.04 
2018-04	Castagne	-8.54 
2018-05	Castagne	 2,033.85 
2018-06	Castagne	-346.32 
2018-07	Castagne	-4,048.95 
2018-08	Castagne	-81.76 
2018-09	Castagne	-6,691.75 
2018-10	Castagne	-596.65 
2018-11	Castagne	 2,284.05 
2018-12	Castagne	 -   
2019-01	Castagne	 261.38 
2019-02	Castagne	 491.83 
2019-03	Castagne	-2,607.35 
2019-04	Castagne	-277.77 
2019-05	Castagne	 272.31 
2019-06	Castagne	-27.16 
2019-07	Castagne	-12.30 
2019-08	Castagne	-8,284.40 
2019-09	Castagne	 5,157.21 
2019-10	Castagne	-55.19 
2019-11	Castagne	 1,257.30 
2019-12	Castagne	-65.27 
2020-01	Castagne	-118.79 
2020-02	Castagne	-224.25 
2020-03	Castagne	 5.40 
2020-04	Castagne	 936.07 
2020-05	Castagne	 139.44 
2020-06	Castagne	-890.61 
2020-07	Castagne	 515.61 
2020-08	Castagne	 521.52 
2020-09	Castagne	 27.61 
2020-10	Castagne	 101.86 
2020-11	Castagne	-476.62 
2020-12	Castagne	-141.44 
2021-01	Castagne	 353.00 
2021-02	Castagne	 7.67 
2021-03	Castagne	-18.35 
2021-04	Castagne	 304.14 
2021-05	Castagne	 740.00 
2021-06	Castagne	-2,713.46 
2021-07	Castagne	 647.62 
2021-08	Castagne	 867.22 
2021-09	Castagne	 372.49 
2021-10	Castagne	 391.31 
2021-11	Castagne	-1,499.84 
2021-12	Castagne	 1,352.52 
2022-01	Castagne	-209.09 
2022-02	Castagne	 732.90 
2022-03	Castagne	 132.55 
2020-09	Uva	 -   
2020-10	Uva	 323.58 
2020-12	Uva	 -   
2021-03	Uva	 2,956.88 
2021-04	Uva	-1,694.65 
2021-07	Uva	 1,173.11 
2021-11	Uva	-67.45 
2021-12	Uva	-34.67 
2017-12	Melanzane	-908.00 
2018-02	Melanzane	-238.70 
2018-05	Melanzane	-96.51 
2018-11	Melanzane	-286.12 
2018-12	Melanzane	 971.33 
2019-03	Melanzane	-106.25 
2019-04	Melanzane	 738.67 
2019-06	Melanzane	-84.19 
2019-09	Melanzane	-332.93 
2019-12	Melanzane	 -   
2020-03	Melanzane	 565.36 
2020-06	Melanzane	 263.22 
2020-09	Melanzane	-1,714.41 
2020-12	Melanzane	-3,418.65 
2021-03	Melanzane	-21.56 
2021-06	Melanzane	 164.65 
2021-07	Melanzane	-17.96 
2021-09	Melanzane	-314.40 
2021-12	Melanzane	 303.19 
2019-08	Piselli	-47.66 
2019-09	Piselli	-469.05 
2019-10	Piselli	 802.80 
2019-11	Piselli	 -   
2019-12	Piselli	 146.73 
2020-12	Piselli	-379.52 
2021-12	Piselli	 1,274.27 


 adesso ci riprovo a panza piena
 
È il solito giochino facile, facile.
Ma finché non ti spieghi bene con un esempio...
 
Bruno


ci riprovo
 
data la tabella vendite:
 
dataV   nvarchar(7)
prodotto nvarcahr(20)
importoV  money
ID  int chiave primaria
 
 
https://i.imgur.com/rUarfW3.png
 
 
mi creo una vista
 
SELECT        DataV, prodotto,
                              (SELECT        SUM(importov) AS Expr1
                                FROM            dbo.Vendite AS A
                                WHERE        (prodotto = 
vendite.prodotto) AND (DataV <= vendite.datav)) AS prog
FROM            dbo.Vendite
 
 
che mi restituisce il progressivo per mese di ogni articolo:
 
https://i.imgur.com/jTTFfvT.png
 
 
 
a questo punto ti basta pivotarla con le date sulle colonne e i prodotti 
sulle righe


> aaaaaa             15      18      25      19
 
carico esistenza iniziale 15 a giugno
 
poi 15+3 = 18 a fine luglio
 
poi 18+7 = 25 a fine agosto
 
infine 25-6 = 19 a fine settembre


 
 
ok, i dati quadrano, la metterò alla prova sui record di totale (oggi 
circa 280) che essendo comunque pochini non dovrebbero rallentare più di 
tanto



anche pivotando il tutto non vedo problemi di prestazioni
ho testato con circa 2000 righe


Ammammata was thinking very hard :

10-15 record completi della tabella originale sono così complicati
e segreti da non poter essere messo online?
 
Si tratta poi di un raggruppamemnto dei codici e per ciascun codice
della somma per ciascun mese.
 
Parliamo lingue diverse.
Bruno

 
 
BFS ha già scritto poche righe di SQL che fanno quel che mi serve per cui, 
se vuoi comunque cercare una soluzione alternativa, i dati sono là



con i tuoi dati del file
neppure un secondo di elaborazione
 
https://i.imgur.com/Cz1sTSD.png
 
