Newsgroup: it.comp.appl.access
Titolo: Totale somma x Query...

ciao... ho una query a campi incrociati che mi elenca dei codici ed a fianco
dei totali...
e poi ancora dei totali x comune...sono 9.....
mi occorre alla fine della query un record con la somma  dei totali più la
somma dei totali x comune...è possibile....
allego il codice SQL....come si può trasformare ???
----------------------------------------------------------------------------
-
TRANSFORM Count([Anagrafe Query].Codice_ASL) AS [Il valore]
SELECT [Anagrafe Query].Codice_Esenzione, Count([Anagrafe Query].Codice_ASL)
AS [Totale di Codice_ASL]
FROM [Anagrafe Query]
GROUP BY [Anagrafe Query].Codice_Esenzione
PIVOT [Anagrafe Query].des_residenza;
----------------------------------------------------------------------------
-
Ciao e grazie....
--
SuperPippo®   [;o))

 ha scritto nel messaggio
news:GsdI7.85229$sq5.4...@news.infostrada.it...

Creati un aquery di raggruppamento basata sulla tua query a campi
incrociati, tale che ti restituisca una sola riga i cui campi conterranno
quindi i totali di colonna della query a campi incrociati.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 --------------------------------------------------------------------------
|
| Creati una query di raggruppamento basata sulla tua query a campi
| incrociati, tale che ti restituisca una sola riga i cui campi conterranno
| quindi i totali di colonna della query a campi incrociati.
| --
| Roberto
| ------------------------------
Scusa Roberto... ma non ho ben capito il procedimento che devo effettuare...
aprendo la query in modalità Struttura ... già mi appare con voci di
raggruppamento....provo a spiegarmi meglio....
nella mia query appaiono nei campi 9 rispettivi Comuni con il
conteggio di Codici di Esenzione...
alla fine di questi 9 campi vorrei il totale...
ti incollo quello che è scritto in Struttura query....
x visualizzarla bene conviene massimizzare la finestra....
----------------------------------------------------------------------------
-----------------------------------------------------
Codice_Esenzione   des_residenza              Il valore: Codice_ASL
Totale di Codice_ASL: Codice_ASL
Anagrafe Query       Anagrafe Query            Anagrafe Query
Anagrafe Query
Raggruppamento      Raggruppamento          Conteggio
Conteggio
Intestazione riga       Intestazione colonna    Valore
Intestazione riga
----------------------------------------------------------------------------
--------------------------------------------------------
Buona domenica...
Ciao e grazie...

 ha scritto nel messaggio
news:3ZwJ7.114774$sq5.5...@news.infostrada.it...

Come è fatta la tua query a campi incrociati l'avevo capito dal codice SQL
che hai postato nel tuo primo messaggio.
La prima cosa che devi fare è quella di fare in maniera che la tua query a
campi incrociati abbia sempre 9 colonne; ciò lo ottieni aprendo la sua
struttura ed impostando adeguatamente la sua proprietà Intestazione colonne
dove, scandite da punto e virgola, scriverai le 9 des_residenza.
La tua query a campi incrociati avrà un codice SQL simile:
TRANSFORM Count([Anagrafe Query].Codice_ASL) AS [Il valore]
SELECT [Anagrafe Query].Codice_Esenzione, Count([Anagrafe Query].Codice_ASL)
AS [Totale di Codice_ASL]
FROM [Anagrafe Query]
GROUP BY [Anagrafe Query].Codice_Esenzione
PIVOT [Anagrafe Query].des_residenza In
("uno","due","tre","quattro","cinque","sei","sette","otto","nove");
dove
"uno","due","tre","quattro","cinque","sei","sette","otto","nove"
li modificherai mettendoci i nove valori possibili contenuti nel campo
des_residenza.
A questo punto creati una query di raggruppamento basata sulla tua query a
campi incrociati; se la query a campi incrociati si chiama Anagrafe
Query_CampiIncrociati, quest'ultima query avrà un codice SQL simile a
questo:
SELECT Sum([Anagrafe Query_CampiIncrociati].[Totale di Codice_ASL]) AS
[SommaDiTotale di Codice_ASL], Sum([Anagrafe Query_CampiIncrociati].uno) AS
SommaDiuno, Sum([Anagrafe Query_CampiIncrociati].due) AS SommaDiDue,
Sum([Anagrafe Query_CampiIncrociati].tre) AS SommaDitre, Sum([Anagrafe
Query_CampiIncrociati].quattro) AS SommaDiQuattro, Sum([Anagrafe
Query_CampiIncrociati].cinque) AS SommaDicinque, Sum([Anagrafe
Query_CampiIncrociati].sei) AS SommaDisei, Sum([Anagrafe
Query_CampiIncrociati].sette) AS SommaDisette, Avg([Anagrafe
Query_CampiIncrociati].otto) AS MediaDiotto, Sum([Anagrafe
Query_CampiIncrociati].nove) AS SommaDinove
FROM [Anagrafe Query_CampiIncrociati];
Questa sarà la query che contiene i totali di colonna della query a campi
incrociati e ne potrai farne l'uso che preferisci all'interno di una
maschera o di un report.


 ha scritto nel messaggio
news:9tb4l6$12kq$1...@stargate1.inet.it...
[Super CUT]|
| Questa sarà la query che contiene i totali di colonna della query a campi
| incrociati e ne potrai farne l'uso che preferisci all'interno di una
| maschera o di un report.
| --
| Roberto
---------------------------
Ciao Roberto... ho eseguito quanto hai detto ma mi esce un errore...
"Il modulo di gestione di Database Microsoft Jet non è in grado di eseguire
l'istruzione SQL perchè include un campo con un tipo di dati non valido"
qundi non si apre proprio la query...
sostituendo il primo campo Codice Es. da Somma in Raggruppamento...
si apre la query ma non mi mostra i totali desiderati....
ti allego l' SQL.....
--------------------------------------------
SELECT Sum([Anagrafe Query_Campi Incrociati per Comune].Codice_Esenzione) AS
SommaDiCodice_Esenzione, Sum([Anagrafe Query_Campi Incrociati per
Comune].[Totale di Codice_ASL]) AS [SommaDiTotale di Codice_ASL],
Sum([Anagrafe Query_Campi Incrociati per Comune].Castelforte) AS
SommaDiCastelforte, Sum([Anagrafe Query_Campi Incrociati per Comune].Formia)
AS SommaDiFormia, Sum([Anagrafe Query_Campi Incrociati per Comune].Gaeta) AS
SommaDiGaeta, Sum([Anagrafe Query_Campi Incrociati per Comune].Itri) AS
SommaDiItri, Sum([Anagrafe Query_Campi Incrociati per Comune].Minturno) AS
SommaDiMinturno, Sum([Anagrafe Query_Campi Incrociati per Comune].Ponza) AS
SommaDiPonza, Sum([Anagrafe Query_Campi Incrociati per Comune].[Santi Cosma
e Damiano]) AS [SommaDiSanti Cosma e Damiano], Sum([Anagrafe Query_Campi
Incrociati per Comune].[Spigno Saturnia]) AS [SommaDiSpigno Saturnia],
Sum([Anagrafe Query_Campi Incrociati per Comune].Ventotene) AS
SommaDiVentotene
FROM [Anagrafe Query_Campi Incrociati per Comune];
---------------------------------------
--
SuperPippo®   [;o))

 ha scritto nel messaggio
news:jP9K7.128347$sq5.6...@news.infostrada.it...

Infatti devi usare il seguente codice SQL:
SELECT  Sum([Anagrafe Query_Campi Incrociati per Comune].[Totale di
Codice_ASL]) AS [SommaDiTotale di Codice_ASL],
Sum([Anagrafe Query_Campi Incrociati per Comune].Castelforte) AS
SommaDiCastelforte, Sum([Anagrafe Query_Campi Incrociati per Comune].Formia)
AS SommaDiFormia, Sum([Anagrafe Query_Campi Incrociati per Comune].Gaeta) AS
SommaDiGaeta, Sum([Anagrafe Query_Campi Incrociati per Comune].Itri) AS
SommaDiItri, Sum([Anagrafe Query_Campi Incrociati per Comune].Minturno) AS
SommaDiMinturno, Sum([Anagrafe Query_Campi Incrociati per Comune].Ponza) AS
SommaDiPonza, Sum([Anagrafe Query_Campi Incrociati per Comune].[Santi Cosma
e Damiano]) AS [SommaDiSanti Cosma e Damiano], Sum([Anagrafe Query_Campi
Incrociati per Comune].[Spigno Saturnia]) AS [SommaDiSpigno Saturnia],
Sum([Anagrafe Query_Campi Incrociati per Comune].Ventotene) AS
SommaDiVentotene
FROM [Anagrafe Query_Campi Incrociati per Comune];
Nella query di raggruppamento il campo [Anagrafe Query_Campi Incrociati per
Comune].Codice_Esenzione non deve prenderlo per niente in considerazione,
visto che stai ottenendo i totali di colonna.


 ha scritto nel messaggio
| news:jP9K7.128347$sq5.6...@news.infostrada.it...

Ok.. funziona Roberto... però mi da un solo record con i totali....
a me servirebbe la query completa composta da tutti i record
con i totali di colonna in fondo ... è possibile ??
Ciao....
--
SuperPippo®   [;o))

 SuperPippo®   [;o))


 ha scritto nel messaggio
news:9tdm4h$u9i$1...@stargate1.inet.it...

|-----------------------------------------------------
Diavolaccio.... non si apre... mi dice...
"Riferimento circolare causato da"Anagrafe Query_Campi Incrociati per
Comune".
andando a vedere nell'help dice di eliminare una dipendenza... e qual'è ???
ho cancellato anche la Query a campi incrociati pensando che potesse dargli
fastidio...come risolviamo... o meglio risolvi ???
--
SuperPippo®   [;o))

 SuperPippo®   [;o))
In effetti ho commesso qualche erroruccio. :-(
Comunque se cancelli la query a campi incrociati la query unione non ti
funzionerà.
Ripartendo da zero, prova creandoti una query a campi incrociati chiamata
Anagrafe Query_Campi Incrociati per Comune (ma nomi più corti ti fanno
schifo?) che abbia il seguente codice SQL:
TRANSFORM Count([Anagrafe Query].Codice_ASL) AS [Il valore]
SELECT [Anagrafe Query].Codice_Esenzione, Count([Anagrafe Query].Codice_ASL)
AS [Totale di Codice_ASL]
FROM [Anagrafe Query]
GROUP BY [Anagrafe Query].Codice_Esenzione
PIVOT [Anagrafe Query].des_residenza In
("Castelforte","Formia","Gaeta","Itri","Minturno","Ponza","Santi Cosma e
Damiano","Spigno Saturnia","Ventotene");
ed una query unione chiamata Pippo che abbia il seguente  codice SQL:
SELECT  "ZZTotali" AS Codice_Esenzione, Sum([Anagrafe Query_Campi Incrociati
per Comune].[Totale di Codice_ASL]) AS [SommaDiTotale di Codice_ASL],
Sum([Anagrafe Query_Campi Incrociati per Comune].Castelforte) AS
SommaDiCastelforte, Sum([Anagrafe Query_Campi Incrociati per Comune].Formia)
AS SommaDiFormia, Sum([Anagrafe Query_Campi Incrociati per Comune].Gaeta) AS
SommaDiGaeta, Sum([Anagrafe Query_Campi Incrociati per Comune].Itri) AS
SommaDiItri, Sum([Anagrafe Query_Campi Incrociati per Comune].Minturno) AS
SommaDiMinturno, Sum([Anagrafe Query_Campi Incrociati per Comune].Ponza) AS
SommaDiPonza, Sum([Anagrafe Query_Campi Incrociati per Comune].[Santi Cosma
e Damiano]) AS [SommaDiSanti Cosma e Damiano], Sum([Anagrafe Query_Campi
Incrociati per Comune].[Spigno Saturnia]) AS [SommaDiSpigno Saturnia],
Sum([Anagrafe Query_Campi Incrociati per Comune].Ventotene) AS
SommaDiVentotene
FROM [Anagrafe Query_Campi Incrociati per Comune]
UNION TRANSFORM Count([Anagrafe Query].Codice_ASL) AS [Il valore]
SELECT [Anagrafe Query].Codice_Esenzione, Count([Anagrafe Query].Codice_ASL)
AS [Totale di Codice_ASL]
FROM [Anagrafe Query]
GROUP BY [Anagrafe Query].Codice_Esenzione
PIVOT [Anagrafe Query].des_residenza In
("Castelforte","Formia","Gaeta","Itri","Minturno","Ponza","Santi Cosma e
Damiano","Spigno Saturnia","Ventotene");
Per scrupolo questa soluzione l'ho testata e ti assicuro che a me funziona
perfettamente.
Se Access dovesse continuare a segnalarti riferimenti circolari, avendo in
mano tu il database e non avendo io il dono della chiaroveggenza, non saprei
cosa ipotizzare; ad occhio sembrerebbe che c'è qualcosa con la query
Anagrafe Query su cui è basata la query a campi incrociati, ma Access
avrebbe già dovuto segnalartelo nelle prove precedenti, quando usavi la
query a campi incrociati più la query di raggruppamento.
Sorry.


PS
Se pensi che possa aiutarti, posso postare al tuo indirizzo e-mail il
database con cui ho testato i codici SQL delle due query che ti ho postato.


 ha scritto nel messaggio
news:9te23o$3ukg$1...@stargate1.inet.it...
| PS
|
| Se pensi che possa aiutarti, posso postare al tuo indirizzo e-mail il
| database con cui ho testato i codici SQL delle due query che ti ho
postato.
|
| --
| Roberto
-------------------------
ti ho risposto in privato.......... risolto... grazie... !!!!!
--
SuperPippo®   [;o))