Newsgroup: it.comp.appl.access
Titolo: ERR Impossibile creare o modificare...

Ciao a tutti !
sono due giorni che sto impazzendo per un problema che mi accade con un 
semplice database access.
Ho letto su alcuni testi e cercato in google, anche nei gruppi, senza 
riuscire a capire la causa.
Descrizione problema: ho creato questo database per memorizzare la lista 
delle viste mediche di idoneità agonsitiche e alcuni test prestazionali di 
alcuni atleti
Ho dapprima riempito la tabella atleti con i relativi record
Poi, tramite la FRM VISITE e FRM TEST, ho cercato di inserire i record delle 
visite sostenute e dei test effettuati
Purtroppo non appena termino di inserire il primo record, quando vado a 
salvare o a cercare di inserire il secondo record, mi appare l'errore che mi 
sta facendo impazzire !
"IMPOSSIBILE CREARE O MODIFICARE IL RECORD, NELLA TABELLA ATLETI OCCORRE UN 
RECORD CORRELATO..."
Senza relazioni ciò non accade, ovviamente presumo il problema stia in un 
errore nel generare le relazioni
Vi descrivo il tutto per chiarezza: ecco il mio DB:
TABELLA ATLETI (Tabella degli atleti che poi appaiono nella maschera FRM 
VISITE tramite CAS COM)
C a m p i :
----------
ID ATLETA            Campo Chiave e Contatore   (Quindi Campo univoco per 
questa tabella)
Cognome e nome     Testo
Data di nascita          Data
Luogo di nascita       Testo
Provincia di nascita    Data
ecc... ecc..
TABELLA VISITE (Tabella delle visite di idoneità agonistica sostenute dagli 
Atleti con i relativi risultati)
C a m p i :
----------
ID VISITE                Campo Chiave e Contatore    (Quindi Campo univoco 
per questa tabella)
ID ATLETA              Numerico lungo       (Creato per la relazione uno a 
molti con la tabella ATLETI)
Atleta                        Testo (Nella maschera FRM VISITE ho creato una 
CAS COM i cui dati reperisce dal campo Cognome e nome della TAB ATLETI)
Data Visita                Data
Istituto accertatore     Testo (Nella maschera FRM VISITE ho creato una CAS 
COM con lista, visto che le voci sono solo due, degli istituti accertatori)
TABELLA TEST (Tabella dei vari test effettuati dagli Atleti, come test di 
soglia, plicometria, max consumo di O2 ecc...)
C a m p i :
----------
ID TEST                   Campo Chiave e Contatore (Qindi Campo univoco per 
questa tabella)
ID ATLETA              Numerico lungo       (Creato per la relazione uno a 
molti con la tabella ATLETI)
Atleta                        Testo (Nella maschera FRM VISITE ho creato una 
CAS COM i cui dati reperisce dal campo Cognome e nome della TAB ATLETI)
Data Visita                Data
Istituto accertatore     Testo (Nella maschera FRM VISITE ho creato una CAS 
COM con lista, visto che le voci sono solo due, degli istituti accertatori)
ecc... ecc...
FORM VISITE (Maschera i cui controlli hanno origine dati dai campi delle 
tabelle Visite e Test, alcune CAS COM presenti con liste immesse 
manualmenmte [poche voci], il controllo ATLETA invece prende i dati dal 
campo Cognome e Nome della TAB ATLETI)
RELAZIONI:  (Nelle scelte delle relazioni ho applicato sia l'integrità 
referenziale che spuntato le voci "aggiorna" che quella "elimina" riferita 
ai relativi record correlati)
-------------
TAB ATLETA
ID ATLETA (Campo chiave e contatore)
LATO 1 della relazione 1 a molti con :
TAB VISITE
ID ATLETA (Campo numerico lungo creato per la relazione)
LATO MOLTI della relazione
TAB TEST
ID TEST (Campo numerico lungo creato per la relazione)
LATO MOLTI della relazione
Cosa diavolo sto sbagliando ???
Grazie 1000 per l'eventuale aiuto, dalla descrizione spero si possa capire 
bene.
Ciao, Corrado

 ha scritto nel messaggio 
news:d0mYh.17676$281....@tornado.fastwebnet.it...

Mhmm...
Mi suona strano la relazione tra l'atleta e il test invece della visita con 
i test effettuati.
Io la vedevo in questo modo:
[tabAtleti]
- id, contatore, univoco (duplicati non ammessi)
- nome
- cognome
...
[tabVisite]
- id, contatore, univoco (duplicati non ammessi)
- idAtleta, numerico, intero lungo (duplicati ammessi)
- (descrizione visita)
[tabTest]
- id, contatore, univoco (duplicati non ammessi)
- idTest, numerico, intero lungo (duplicati ammessi)
- (dati test)
Questo per quanto riguarda le tabelle e le relazioni; sempre che siano 
giuste per te.
Poi non hai bisogno di inserire altri campi riferiti all'anagrafica 
dell'atleta nelle tabVisite/tabTest; sono in relazione e riesci comunque ad 
ottenerle.
La form delle Visite la vedrei così:
- Maschera principale associata alla tabAtleti con i dati dell'atleta
- sottomaschera associata alla tabVisite e collegata con la principale 
tramite le proprietà "Collega campi secondari/master" (tabAtleta.id -> 
tabTest.idAtleta)
- (su maschera principale) casella di testo non associata chiamata (idTest)
- (altra) sottomaschera associata alla tabTest collegata tramite le 
proprietà "collega campi secondari/master" (idTest->tabTest.idTest)
gestisci l'evento "su corrente" della sottomaschera tabTest inserendoci il 
codice:
Parent!idTest = Me!idTest
Questo ti serve per sincronizzare le due sottomaschere.
Ora puoi navigare tra gli alteti, le visite associate e i test associati; 
puoi inserire i dati solo dopo avere creato/selezionato un atleta...
Ciao.
-- 
Sergio MAZZA 

 - (dati test)
Scusate l'intromissione, ma ho una situazione del tutto simile.
Io ho "abbandonato" un progetto perchè nonostante avessi impostato 
delle relazioni come Sergio mi esce fuori questo errore:
http://img134.imageshack.us/img134/1005/snap1dr1.jpg
- Tab Anagrafica
PazienteID PK (Contatore, Intero Lungo, Indicizzato (Duplicati non 
ammessi))
(Dati vari)
- Tab Esame1
Esame1ID PK (Contatore, Intero Lungo, Indicizzato (Duplicati non 
ammessi))
PazienteID (Numerico, Intero Lungo, Richiesto, Indicizzato (Duplicati 
ammessi))
Relazione:
Lato UNO: Tab Anagrafica
Lato MOLTI: Tab Esame1
Campi collegati: PazienteID-PazienteID
Un consiglio per "resettare" tutto e ripartire da capo?
Grazie per la collaborazione e scusate l'intromissione.

Nulla le ho provate tutte, compresa quella di inserire tutti le anagrafiche 
degli atleti nella relativa tabella (lato 1 nella relazione) per poi creare 
i record nella tabella visite attraverso FRM Visite
Niente da fare
Verificato anche i campi che siano ID Numerico lungo per quelli designati 
come chiavi esterne, niente da fare
L'errore mi compare sempre
Quando torno (1 maggio), proverò a fare quanto mi ha descritto nella seconda 
parte del tuo post
Grazie ancora
Ciao
Corrado 

 errore nel generare le relazioni
Una situazione simile mi e' capitata un po di tempo fa. La mia sorellina
mi ha dato un db su cui non riusciva piu' a lavorare. Gli ho eliminato 
un 3/4 delle relazioni impostate (superflue. Era un vero "mess") e per 
magia tutto ha cominciato a "ri"funzionare mantenendo, ovviamente, le 
regole di integrita' necessarie.
-- 
ac
y-1=x

 Grazie per la collaborazione e scusate l'intromissione.
Non è un problema di tabelle ma di come hai poi strutturato le maschere...
Ciao.
-- 
Sergio MAZZA 

 Non è un problema di tabelle ma di come hai poi strutturato le maschere...
Capisco la difficoltà senza avere il db tra le mani, ma puoi darmi 
un'idea?
Oggi posso rimetterci mano... vorrei cercare di risolvere il problema.
Ciao e grazie.

 Ciao e grazie.
Fammi sapere...
Ciao.
-- 
Sergio MAZZA 

 Anagrafica].PazienteID->[Tab Esame1].PazienteID
Qui mi sorge un dubbio. Io ho la necessità che le due maschere siano 
separate. Come mi hai detto tu la sottomaschera mi apparirà dentro la 
maschera Anagrafica?
Ciao

 Ciao
E' una necessità che potrebbe non avere senso.
Se pensi che non può esistere un risultato di esame se non è associato a 
nessun paziente, vedrai che la cosa più comoda è:
- cercare il paziente
- associargli l'esame
tutto nella stessa maschera.
Diverso è il caso per:
- inserire i nuovi pazienti o modificare il loro dati Anagrafici
- inserire la descrizione (e costo e altre informazioni) dell'esame
Allora sì che ti servono due maschere diverse perché in quel caso le due 
tabelle: Anagrafica e Esami non necessitano di relazioni.
Occhio che per tabella Esami non intendo la tabella dei risultati degli 
esami fatti dai pazienti.
Riassumendo:
[tabAnagrafica]
- id, contatore
- dati anagrafici
[tabEsami]
- id, contatore
-  descrizione esame
[tabEsamiEseguiti]
- id, contatore
- idAnagrafica, numerico intero lungo, duplicati ammessi
- idEsame, numerico intero lungo, duplicati ammessi
- dati risultati
Form necessarie:
[frmAnagrafica]
per inserire/modificare solo i dati anagrafici
[frmEsami]
per inserire/modifica solo i dati (non i risultati) degli esami
[frmEsamiEseguiti]
associata a [tabAnagrafica] solo per la ricerca/visualizzazione dei dati 
anagrafici
[(sub)formEsamiEseguiti]
associata a [tabEsamiEseguiti] tramite: [tabAnagrafica].id -> 
[tabEsamiEseguiti].idAnagrafica; la scelta dell'esame puoi farla tramite una 
casella combinata associata al campo [tabEsamiEseguiti].idEsame che 
visualizza l'elenco degli esami disponibili (es. Select id, esame from 
tabEsami;)
E' più chiaro quello che intendevo?
Ciao.
-- 
Sergio MAZZA 

 y-1=x
Caspita ma io qui ho 1 sola rrelazione:
Lato 1 Tab Atleti (Un atleta...)
Lato molti Tab Visite (.. puň effettuare piů visite)...
Ma ogni singola visita č riferita ad un solo atleta, quiandi ad un solo 
record della Tab Atleti
Eppure nn riesco a venirne fuori, ho anche , per un attimo, lasciato perdere 
la tab test , presupponiamo solo queste due tabelle Atleti e Visite.
Sulla Tab Atleti ho ID Atleta chiave primaria e contatore , no dup ammessi e 
sulla Tab Visite ho un ID Visite chiave primaria e contatore, dup non 
ammessi.
Sulla Tab Visite ho, come chiave esterna numerico lungo Dup ammessi, ID 
Atleti
Faccio la relazione sopra descritta, poi mi creo la FRM Visite ove piazzo 
una combo box che abbia origine dati dal campo Nome e Cognome della tabella 
Atleti.
Nel resto della maschera, ho anche provato a creare una sottomaschera senza 
successo: stesso errore, mi inserisco tutti i controlli relativi appunto ai 
valori originati dai campi della tabella visite, ma nulla:
come seleziono un atleta, immetto i dati nell maschera, al momento di 
salvare e/o di creare un altro record
"impossibile salvare o creare..., nell atbella atleti occorre un record 
correlato " !!!!
Cazzarola, ma se sono relazionati !!!!!!!!!!!!
Prefrisco pensare che sono io a nn capire nulla dlle relazioni, vedo piů vie 
di fuga almeno !
Basta mollo qui.
Grazie 1000 in ogni caso
Ciao
Corrado 

 E' più chiaro quello che intendevo?
Scusami Sergio ma non sono ancora riuscito a metterci mano.
Lavoro di m***a! Sorry! :(

 Lavoro di m***a! Sorry! :(
Io non ho problemi...
Ciao.
-- 
Sergio MAZZA 

 agli esami (lato molti).
Ciao Sergio,
la sottomaschera la intendi nel senso di dipendenza? Cioè comunque sono 
due maschere separate?

 due maschere separate?
Sono comunque due maschere (oggetti) distinti (li vedi nell'elenco delle 
maschere); comunque sì, intendo proprio due maschere, una dentro l'altra in 
relazione (le loro origini dati) uno a  molti (proprietà collega campi 
secondari/master)...
Ciao.
-- 
Sergio MAZZA