Newsgroup: it.comp.appl.access
Titolo: AIUTO (Sto dando i numeri)

ciao a tutti sono Paolo e ho cominciato da poco a costruirmi i miei database
in access, ho un problema che mi assilla da circa un mese e che non riesco a
risolvere:
ho creato una tabella che contiene i dati dei miei Soci:
    IDsoci;Cognome;Città,CAP,CodiceCittà.....
e una tabella Comuni che contiene i comuni della mia Provincia
    IDComune;Comune;CAP;CodiceComune.......
nella maschera di immissione/visualizzazione, basata sulla tabella Soci, ho
creato una casella combinata che preleva il Comune dalla tabella Comuni e
fin qui tutto bene
PROBLEMA
Come posso fare a visualizzare nei campi CAP e CODICE COMUNE i dati relativi
al comune automaticamente?
Grazie a tutti.
pa...@webitalia.it

 wrote in message
89g6hn$c2i$1...@pegasus.tiscalinet.it...

Supponiamo che la tua casellaCombinata sia a 4 colonne
 IDComune,Comune;CAP,CodiceComune) imposti la larghezzaColonne in modo
da visualizzare solo il comune,
poi sull'evento dopoAggiornamento gli scrivi
Me!CAP = Me![NomecontrolloCasellaCombianta].Column(2)
Me![Codice Comume] = Me![NomecontrolloCasellaCombianta].Column(3)
Ciao Marco


Aggiungi all'origine dati della casella combianata anche altre du
colonne CAP e CODICE COMUNE. Nelle impostazioni della casella
combinata, su Nr. colonne, metti 3 e su larghezza colonne scrivi
1;0;0. Dove 1 è la larghezza della casella combinata.
Sull'evento dopo aggiornamento della casella combinata, scivi:
me.CAP = me.casellacombinata.column(1)
me.CodiceComune = me.casellacombinata.column(2)
i nomi dei controlli (me.cap ...) li devi ovviamente sostituire con
quelli reali della tua maschera.
In alternativa cerca dlookup nella guida (non consiglato)
Ciao
Basjlico

Ciao Paolo,
le risposte che ti hanno dato Marco e Basilico sono perfettamente
funzionanti, peccato che non rispondono a quello che si dice un utilizzo
corretto di Access.
Access è un database relazionale (almeno così sostiene Microsoft), come tale
va strutturato nel senso che ogni tabella va normalizzata ossia deve
contenere i campi che si riferiscono in modo diretto al campo chiave. Cerco
di spiegarmi meglio.
Per una tabella "fatture" ci sarà probabilmente come campo chiave il numero
della fattura, ci saranno poi quei campi che si riferiscono in modo diretto
alla fattura ad es. la data emissione, la data scadenza, limporto totale ma
non il nome del cliente, il suo indirizzo, la sua città bensì un campo che
"punta" in modo univoco ad un'altra tabella che chiamiamo "Clienti" nella
quale ci saranno tutte le informazioni di ciascun cliente. Questa logica
permette una minore occupazione di spazio su disco, una maggiore efficienza
perchè le informazioni elementari vengono scritte una volta sola e quindi in
caso di modifica c'è un solo punto dove intervenire.
Nel tuo esempio quindi io inserirei nella tabella Soci solo un riferimento
alla tabella Comuni, quale migliore riferimento di quel campo che tu molto
diligentemente hai previsto IDComune.
Se per assurdo quel comune cambia il cap, lo modificherai solo una volta
nella tabella comuni, e la modifica sarà valida per tutti quei soci che vi
risiedono.
Ciao
--
Se dai da mangiare ad un uomo un pesce l'hai sfamato per un giorno
se gli insegni a pescare l'avrai sfamato per tutta la vita.
---------------------------------------------------------------
rimuovere NOSPAM. per mandare email
---------------------------------------------------------------

Carissimo Fish, ma e' proprio quello che gli hanno consigliato di fare,
d'accordissimo con te sulla normalizzazione della base di dati,
d'accordissimo sul fatto che il campo chiave deve riferire univocamente
tutti i campi della tabella interessata, ma i consigli riguardano le
maschere, che non c'entrano assolutamente nulla con la normalizzazione del
DB.
Quando bisogna contestare qualcosa, stiamo attenti a quelli che diciamo...
Senza offesa per nessuno, ma solo per contribuire alla creazione di un NG
sempre piu' utile...
Un grosso ciao dal Grrrava.
