Newsgroup: it.comp.appl.access
Titolo: Tabelle: problema nella visualizzazione valori

Ciao a tutti.
Ho un problema con la visualizzazione di dati di una tabella.
Ho creato una tabella costituita da due campi: un progressivo (chiave 
primaria - contatore) e un campo Nazione.
In pratica mi serve un elenco delle nazioni del mondo, in quanto il collega 
di turno non capisce bene cosa inserire nella maschera (tralasciamo i 
dettagli per pietà).
Per risolvere il "problema" ho creato la suddetta tabella e nella maschera 
una combobox con origine quella tabella: l'operatore o digita le prime 
lettere dello stato (e poi lo seleziona) o apre l'alenco e lo seleziona. E 
fin qui tutto bene.
Però, poichè il valore registrato va visualizzato anche in un'altra scheda 
della stessa maschera, comincia il primo problema:  in questa scheda c'è un 
controllo testo con origine il campo della tabella dove il valore è stato 
poi memorizzato (cioè la tabella principale su cui è basato il DB). Mi 
succede che in questa scheda mi viene visualizzato il numero progressivo 
corrispondente a quello stato, e non il nome dello stato (mentre nella 
scheda di inserimento visualizza correttamente lo stato). Eppure nella 
tabella di base mi viene memorizzato correttamente il nome dello stato (e 
non il numero). Di conseguenza, aprendo un report da questa seconda scheda 
mi viene stampato il numero e non il nome dello stato.
A cosa è dovuto e come risolvo?
Di rimbalzo, ho un altro problema, sempre legato a questa tabella nazioni.
Poichè (come sopra scritto) è troppo difficile scrivere lo stato (in pratica 
scrivono le assurdità più assurde) ho creato questa combobox. Però mi 
succede che se apro un record in cui precedentemente lo stato era stato 
inserito a mano (cioè quando ancora non esisteva la cbx) sull'apertura del 
record mi da un messaggio d'errore: "E' stato  immesso un valore non valido 
per il campo. E' possibile che sia stato immesso del testo in un campo 
numerico o numero magiore di quello consentito per l'impostazione Fieldsize"
Eppure il valore inserito precedentemente è lo stesso (es. Italia). Mi tocca 
reinserire lo stato scegliendolo nella cbx.
Come risolvo anche questo inghippo?
Grazie a tutti
Andrea


Il tutto (leggendo velocemente) mi pare causato dal fatto che tu è
vero che nella combobox vedi il nome della nazione ma in realtà dentro
c'è il valore del contatore.
Suggerimento: visto che due nazioni non possono avere lo stesso nome,
nella tabella che hai creato non mettere Contatore (chiave) e Stato,
ma solo Stato(chiave).
F.

F.
Avevi ragione, č bastato eliminare il contatore ed ha funzionato.
A volte le soluzioni piů semplici sono quelle a cui non si pensa.
Grazie.
Andrea 

[...]
Il tutto (leggendo velocemente) mi pare causato dal fatto che tu è
vero che nella combobox vedi il nome della nazione ma in realtà dentro
c'è il valore del contatore.
Suggerimento: visto che due nazioni non possono avere lo stesso nome,
nella tabella che hai creato non mettere Contatore (chiave) e Stato,
ma solo Stato(chiave).
F.
----------------
Però, in questa maniera, va a farsi benedire la normalizzazione!
Ogni campo nazione (della tabella principale) conterrà il vero nome intero, 
mentre con il codice il risparmio in occupazione sarebbe stato notevole, ed 
è la soluzione caldamente consigliata dalla normalizzazione.
Semmai il problema era da risolvere cambiando il tipo di campo (da testo 
quale sicuramente è per contenere qualcosa di simile a ITALIA, a numerico 
lungo per contenere i nuovi codici). Poi bastava inserire nel campo 
codiceNaz della tabella collegata una specifica di ricerca per vedere 
direttamente il nome e non il codice.
Nella fase di passaggio giova creare un campo nuovo per contenere il codice 
e provare a 'recuperare' tutte le nazioni eventualmente  inserite prima 
della combo. Una volta recuperati questi valori si elimina il vecchio campo 
nazione e si rinomina il nuovo, magari ristabilendo anche eventuali 
relazioni esistenti.
IvanDaBologna