Newsgroup: it.comp.appl.access
Titolo: un dubbio meglio form associate a tabelle o non associate

partendo da una form che elenca dei record di una tabella 
 
mi sono sempre chiesto se è meglio aprire un altra form per modifica dati
con tabella già associata OPPURE con tabella non associata ed eseguire soltanto alla fine il salvataggio vero e proprio dei dati nel database
 
meglio una form con i campi già associati o con i campi non associati?
in rete ci possono essere problematiche in uno o nell'altro caso?


I campi associati soffrono sempre del problema che 'qualcun altro' 
potrebbe avere gia' modificato quello che vedi a video
Entrambe le scelte descritte sono possibili, ma io normalmente 
preferisco la schermata 'modifica' coi campi non associati, caricati 'al 
volo', e salvati solo alla fine, meglio se all'interno di una transazione

Il giorno Tue 19 Apr 2022 08:50:47a, *RobertoA* ha inviato su
it.comp.appl.access il messaggio news:t3lm47$l9b$
1...@gioia.aioe.org
.
Vediamo cosa ha scritto: 

io copio il record in una tabella uguale ma temporanea nel FE locale
 
quando la salva va a sovrascrivere quella nel BE (database SQL server)
 
se nel frattempo qualcun'altro ha modificato cose... ovviamente vanno 
perse, ma i record sono "personali", è quasi impossbile che due utenti 
vadano a lavorare sugli stessi dati. Se capita (uno su mille a stare 
larghi) sono quattro gatti (di numero) e si fa in fretta a capire cosa è 
successo.
 
-- 
/-\ /\/\ /\/\ /-\ /\/\ /\/\ /-\ T /-\
-=- -=- -=- -=- -=- -=- -=- -=- - -=-
........... [ al lavoro ] ...........

Tutte considerazioni opinabili...
 
Se non si gestisce un VERO blocco dei RECORD, la scelta è lana caprina.
 
I dati si possono gestire solo in 2 modi con Access-RDBMS.
1) BLOCCO RECORD OTTIMISTICO
2) BLOCCO RECORD PESSIMISTICO
 
Che usi Form associata o non associata, cambia poco, se popoli la Form con i dati Correnti, dopo 1 secondo non è detto siano validi, e se applichi un Blocco Record, quando vai a salvare il rischio di perdere le modifiche fatte da altri è molto grande...
La tabella di appoggio poi la trovo non porti valore aggiunto alla scelta di una Form non associata... anzi complica per nulla.
 
Va analizzato cosa si vuole fare in caso di Multiutenza, non esiste una scelta giusta ed una sbagliata, ma è il metodo che guida.
SAP R3, che non è proprio l'ultimo dei gestionali, non consente l'editazione contemporanea.... uno edita gli altri LEGGONO e leggono quanto è salvato non quanto in corso di EDIT.
 
In questo frangente è tutto da inventare in quanto nativamente Access non lo consente a livello di SINGOLO RECORD, quindi va gestito con un FLAG aggiuntivo.
 
La questione di Form Associate o meno è falsa... se si accetta la modifica contemporanea... non serve, le form già sono stransazionali, il CANCEL insegna negli Eventi BEFORE, basta usarli BENE.
 
Ovviamente ci sono scuole di pensiero distinte, ma sarebbe bello scendere nel CONCRETO operativo e capire cosa ci si trova di così SALVA DATI a gestire Form NON Associate o addirittura Tabelle Temporanee... parlando della gestione standard dei dati.
 
@Alex


La multiutenza è di per se un "rompicampo" in cui ogni strategia ha pro e contro.
Personalmente ho sempre ritenuto Access un tool abbastanza inutile rinunciando a prescindere agli oggetti Bound.
 
Saluti

 con i dati Correnti, dopo 1 secondo non è detto siano valid 
 
è un tool di calcolo prezzi, lo usano una volta ogni tanto quando il 
mercato cambia; i singoli record sono legati a un responsabile, è molto 
difficile, anzi, sarebbe un quasi errore, che qualcun'altro andasse a 
toccare i dati che non sono di sua competenza; ogni tanto lo fanno, ma con 
il benestare del primo, di conseguenza il tutto è stato scritto senza 
troppi sbattimenti  su come gestire accessi contemporanei allo stesso 
record; la tabella temporanea permette di fare e disfare, cambiando poco o 
tanto, senza correre il rischio di rovinare tutto; il salvataggio chiede 
conferma, non basta cliccare sul pulsante; il backup è quotidiano, posso 
tornare indietro (in questo caso) di quasi un anno nel caso ci si accorga 
dopo un po' di tempo che qualquadra non cosa :)
 
per il resto del pippone non posso che essere concorde, ma l'OP non ha 
specificato cosa deve fare e come, per quanto ne sappiamo potrebbe essere 
il programmino che gestisce la rubrica degli indirizzi



Ottima analisi, quindi una buona soluzione per multi utenti in rete potrebbe essere quella che pone un campo boolean a -1 se tale campo è a 0 e gli altri aprono in sola lettura finchè l'utente che ha posto il campo boolean a -1 non lo rimette a zero. agli altri uscirà un messaggio o un etichetta "sola lettura" o "modifica in corso da altro utente" immagino.
 


Oggetti Bound ovvero?

 Saluti
 
Assolutamente d'accordo.
 
@Alex