Grazie per aver cercato di interpretare il mio lessico inappropriato... Approfittando della tua cortesia, inizio da capo e cerco di essere più chiaro. Allora, ho una serie di tabelle in questo DB, quelle che mi interessano in questo caso sono la tabella DATI CLIENTI e REGISTRO CORRISPONDENZA.
in DATI CLIENTI ho numerosi campi, quelli importanti sono RIF, che è un contatore automatico incrementale univoco, poi il campo COGNOME ed il campo COGNOME, ovviamente ad ogni RIF è abbinato un COGNOME ed un NOME. per essere piu chiaro ho 320 RIF abbinati a 320 clienti diversi.
in REGISTRO CORRISPONDENZA, che gestisce la corrispondenza di tutti i 320 clienti, ho i seguenti campi:
ID con chiave (non so se sia necessaria la chiave) credo sia un campo superfluo, potrei eliminarlo
RIF - come sopra
COGNOME - come sopra
NOME - come sopra
PRATICA - ad ogni cliente ho associato un numero di pratica (es. 007 - ROSSI - MARIO pratica nr 239/123 anno 2013)
PROGRESSIVO - contatore incrementale che assegna il progressivo appunto ad ogni lettera inviata o ricevuta ad un dato cliente (se. Con ROSSI ho scambiato 15 lettere , la prossima avrà il PROGRESSIVO 16, quindi il mio numero di riferimento della lettera da spedire a ROSSI sarà 239/123-16)
DATA - data della missiva
OGGETTO - oggetto della missiva
SCRITTA DA- impiegato che ha trattato o scritto la lettera.
Dal momento che i clienti sono 320 e gli impiegati che trattano il carteggio sono 5, cercavo una soluzione per tenere ordinato il carteggio della ditta. Non essendo pratiche le Tabelle per gli inserimenti, ho creato due maschere riportando i dati delle tabelle sopra citate per rendere più pratico l inserimento dei dati, quindi ho la Maschera DATI CLIENTE e la maschera REGISTRÒ CORRISPONDENZA.
Ora ti faccio un esempio pratico, io apro la Maschera DATI CLIENTI, dove ho tutta una serie di informazioni da inserire, quantitativi, colli, prodotti ecc ecc. Vado al record inerente il cliente 007, cioè ROSSI MARIO, una volta che ho aggiornato i campi relativi all ordine, ho la necessita di scrivere una lettera al cliente ROSSI per avere dei chiarimenti. Per sapere qual'è l ultima lettera che è stata scritta al cliente ROSSI, che io individuo nelle due tabelle con lo stesso RIF, cioè 007, ho creato la query QUERY REGISTRO CORRISPONDEZA, che ha gli stessi campi della omonima Tabella, nella quale ho impostato, come parametro di ricerca Like [RIF], in questo modo, inserendo il RIF di riferimento, 007 per ROSSI, la query mi filtra tutte le pratiche già registrate e relative al solo cliente ROSSI. Passo successivo, ho modificato le proprietà della Maschera REGISTRÒ CORRISPONDENZA, impostando che tale maschera deve essere abbinata non più alla tabella REGISTRO CORRISPONDENZA, ma alla QUERY REGISTRO CORRISPONDENZA. Quindi, ho creato una macro, azionabile con un tasto funzione presente nella Maschera DATI CLIENTE, con la quale vado ad aprire la maschera REGISTRO CORRISPONDENZA, a questo punto mi si apre tale maschera e mi appare il riquadro che mi chiede di inserire il RIF (richiesta della query) di interesse, 007 x ROSSI, quindi nella maschera vedrò, nella parte superiore, i tre campi importanti di riferimento, cioè RIF (007) COGNOME (ROSSI) NOME (MARIO), nel resto della maschera gli altri campi che l utente deve modificare e nel contatore il numero totale dei record filtrati inerenti quel cliente, che corrispondono al numero di lettere corrisposte con lo stesso, infine la macro mi manderà all ultimo record, mostrandomi l ultimo progressivo usato per quel cliente ( es. 16). L utente ora sa che dovrà usare il progressivo 17. Da qui iniziano i problemi e te li vado a spiegare. Nel momento in cui l utente va a registrare il nuovo progressivo, allo stato attuale va a riscrivere, manualmente, anche i campi RIF COGNOME E NOME, col rischio di sbagliare un dato o una lettera, che diventa poi un problema quando io devo effettuare, per altre esigenze, delle ricerche, se mi sbagliano il RIF, ad esempio, la prossima volta io quel progressivo non lo vedrò più perché è stato registrato come 0007 invece di 007, quindi perdo il dato. Ora se il DB lo usavo solo io, avrei copiato tutti i campi della maschera REGISTRO CORRISPONDENZA, selezionando la barra di sinistra e quindi copia, sarei andato al nuovo record, incolla, e poi modificato solo i dati da cambiare. Però alcuni miei colleghi sono avversi al PC, quindi io avevo pensato a questa soluzione:
In struttura maschera REGISTRO CORRISPONDENZA, nelle proprietà dei campi RIF COGNOME E NOME, li disabilitavo, in modo non erano né selezionabili con il tabulatore ne col mouse, però come fare a inserire i dati del nuovo record?
Quindi, arriviamo alla mia richiesta... Una volta che sono arrivato, sulla maschera REGISTRO CORRISPONDENZA, all ultimo report inerente al cliente ROSSI, c e un modo, un comando, una macro o altro che mi permette di passare al nuovo record, copiando, in automatico, il contenuto dei campi RIF, COGNOME, NOME , prendendoli dal report che sto visionando? Questa procedura eviterebbe gli errori di battitura che mi hanno creato un bel po' di problemi.
Ora, quando mi parli di sotto maschere, io non so di cosa parliamo, scusami ma avevo anticipato che non sono molto ferrato, diciamo alle prime armi per quelle che sono le potenzialità di ACCESS. Spero che questo poema non ti dissuada dal volermi aiutare ulteriormente, ma ho cercato di darti tutte le informazioni possibili. PS: non lasciarsi impressionare, la ditta non ha tutti quei clienti, sono solo potenziali clienti, perché se fossero tutti clienti, avrei un collega ingegnere informatico che mi risolverebbe il problema ahahahah....
Io ti ringrazio ancora per la disponibilità, in attesa di una tua dritta, ti saluto.