Ciao a tutti
ho un nuovo quesito da porre agli esperti, ma prima devo descrivere cosa ho realizzato e sopratutto , come...
Ho un dbase , costruito in maniera "poco ortodossa " , anzi per niente ,che contiene tabelle che riguardano la documentazione dei miei interventi di manutenzione , presso vari clienti.
La sua costruzione parte nel "lontano" 2004 e prevede una sola tabella con dentro tutto, cioè "cliente;data;località;provincia;numero intervento;note;descrizione intervento
( che orrore vero ?), ogni inizio anno iniziavo con una nuova tabella da cui ricavavo una nuova maschera, con gli stessi campi
(più o meno) , l'unica differenza era il nome con cui la salvavo , per es, per il 2004 "interventi2004", per il 2005 "interventi2005" e cosi per ogni anno successivo. Tutto molto semplice ,ma mi sono reso conto che è difficile( ma non impossibile) in questo modo , riuscire ad eseguire delle interrogazioni che coinvolgano tutte le tebelle.
Leggendo delle guide in rete , apprendendo dai forum e facendo "esperimenti", ho iniziato a cercare di ordinare un pò , la mole di dati di 12 anni di attività , che sono salvati nel mio dbase (circa 6000 )
Ho iniziato a realizzare una query di UNIONE , che mi consente di unire tutte le tabelle che mi necessitano,e ci sono riuscito , ma chiaramente voglio andare avanti e interrogare il dbase attraverso altre funzioni e per questo , continuo a studiare e apprendere .
Faccio un passo indietro dicendo che parallelamente alle tabelle ho realizzato nel corso degli anni,le maschere corrispondenti , che mi servono per l'immisione dei dati e per visualizzarli un record alla volta.
Attraverso la creazione di maschere di tipo tabellare,( una per anno e solo con alcuni campi), dentro cui ho inserito dei pulsanti di comando, riesco a ricercare singoli record e leggerli nei particolari oltre che naturalmente a correggerli. Ma questa ricerca è limitata solo all'anno corrispondente alla tabella di origine.
questo è il codice del pulsante ( in questo caso per richiamare il record della maschera "interventi2004":
Private Sub Comando12_Click()
DoCmd.OpenForm "interventi2004", , , "ID = " & [ID]
End Sub
Come si vede la ricerca è per "id" che è pk di ogni tabella.
Funziona tutto bene , apro la maschera tabellare che mi interessa , clicco sul pulsante ,che ho etichettato "particolari" e mi appare il record, chiudo il record e ritorno alla maschera tabellare.
Ora però, vorrei fare la stessa cosa , non già partendo dalle singole maschere , visto che ho creato una maschera " tutti gli interventi ", bensi da questa maschera , e qui nasce il problema .Se creo una maschera tabellare di "tutti gli interventi", con inserito un pulsante che mi apra il record relativo, non posso usare più il codice precedente , in quanto l'ID ,non corrisponde più in modo UNIVOCO al record , perchè
tutti i record di tutte le maschere ,sono stati fusi in una unica maschera "tutti gli interventi" appunto e nella colonna "ID" avrò dei valori che si ripetono periodicamente di anno in anno.
L'unico dato che rimane univoco è la DATA, anche se per una certa DATA ci possono essere ( anzi ci sono) più record ( interveti). Vi chiedo come potrei fare a realizzare la ricerca del record utilizzando il campo "DATA" in abbinamento al campo "Int_n°" .che insieme rappresentano il riferimento univoco del record per tutta la maschera di unione realizzata ?
Spero di essere riuscito a spiegare bene il mio quesito , ma se manca qualche particolare fatemi sapere , io intanto continuo nella "sperimantazione" e apprendimento. grazie per l'attenzione
a presto.