Newsgroup: it.comp.appl.access
Titolo: A qualcuno sembrerà facile

...e forse lo è... ma io sto impazzendo
Un saluto a tutti.zip
Il mio problema:
La tabella "personale" contiene i seguenti campi: cognome, nome, categoria,
settore, oresvolte, giorniassenza.
La tabelle "attività" : Settore1, Settore2, OreCategoriaA, OreCategoriaB,
OreCategoriaC, AssenzeCatA, AssenzeCatB, AssenzeCatC.
La domanda è: posso con un unica query accodare/aggiornare la tabella
"attività" inserendovi la somma delle oresvolte e giorniassenze
rispettivamente nel relativo campo di categoria nella tabella.
In sostanza è possibile accodare in maniera condizionale dei campi con unica
query ?
Grazie
Giuseppe DF

...

Se ho capito bene, non c'hai capito niente tu....
Nel senso che forse hai strutturato male il database.
Se tu vuoi che con una query solo determinati campi vengano riempiti, in
quel modo negli altri campi c'è Null perchè comunque il record comprende
tutti i campi.
Altrimenti dovresti fare 3 tabelle, una per categoria, e accodare solo nella
tabella giusta...
Antonio

 tabella giusta...
Provo a riproporre:
Nella tabella 1
Reparto                    Cognome    Categoria    CodiceAttività
OreAttività
Amministrazione     Rossi            AMMI1          AA805                185
Amministrazione     Bianchi         AMMI1          AA309                190
Pianificazione          Caio             PANI1           PP336
124
Amministrazione     Giallo           AMMI2           AA805
130
Amministrazione     Verde           AMMI2           AA805                170
....
posto che le categorie sono solo 3
voglio ottenere:
Tabella 2
Reparto                     CodiceAttività   Cat.AMMI1    Cat.AMMI2
Cat.PANI1
Amministrazione        AA805                       185                300
0
Amministrazione        AA309                       190                     0
0
Pianificazione             PP336                           0
0                   1
In sostanza è possibile con unica query di aggiornamento e/o accodamento
qualcosa tipo:
Se il "Cognome appartiene alla categoria AMMI1"  assegna la somma delle ore
al campo AMMI1.. ALTRIMENTI SE appartiene alla ctg AMMI2 Assegnala a AMMI2
oppure se appartiene alla ctg PANI1 assegna a tale campo. Ovviamente per
ogni CodiceAttivita; posto che quest'ultimo può essere imputato a varie
categorie.
... stò sudando:)))
Ciao Grazie
Giuseppe

>La domanda è: posso con un unica query accodare/aggiornare la tabella
forse si' ma ti incasini la vita.  perche' non vuoi fare tre query?
--
non studio non lavoro non guardo la tv
non vado al cinema non faccio sport
----------------------------------------
il sito comune di it.comp.appl.access:
http://members.xoom.it/it_db_access

...

Ok, se po' fa...
Tu fai la query d'accodamento da tabella1 a tabella2.
reparto in reparto, CodiceAttività in codiceAttività
A questo punto in CatAmm1 scriverai:
iif([Categoria] = "AMM1";[OreCategoria];0)
La stessa cosa la farai per catAmm2 e CatAmm3 chiaramente sostituendo il
valore nell'espressione condizionale...
Antonio

 --
Xchè ho lo stesso problema x altre 6 tabelle... 6 x 3 .Troppe query.
Ciao

Hai invertito le tabelle ?
Comunque non funge i criteri vengono messi in And o Or e accoda tutto a
tutti.
Temo dovrò rinunciare.
Ciao. Grazie


tutti.
NNOOOOOOOOOOO!!!!!!
Non sono criteri quelli!!!
Devi scrivere le espressioni dove normalmente compaiono i nomi dei campi da
accodare....
Il risultato dell'espressione viene accodato, non è un criterio WHERE!!!
Antonio

Xchè ho lo stesso problema x altre 6 tabelle... 6 x 3 .Troppe query.
Seeeee....
Antonio


Fa quasi piacere scontrarsi con la propria ignoranza :)))
Funge benissimo, è quello che cercavo... Grazie ... comè il segno di
"infinito" ?
Ciao.
Giuseppe

...

Prego
Antonio