Problema con inserimento record in sottomaschera

di il
1 risposte

Problema con inserimento record in sottomaschera

Salve a tutti e grazie già da ora per il supporto.
Non riesco a capire l'inghippo in cui mi sono imbattuto:
ho un DB per gestione interventi tecnici, con le seguenti tabelle:

TMatricole [ID_matricola, campo1, campo2]
TClienti [ID_Cliente, campi vari..]
TInterventi [ID_interventi, campi vari..]

Voglio poter legare più clienti ad una matricola e viceversa, e così gli interventi, quindi utilizzo delle relazioni "many to many"
tramite delle tabelle di collegamento, chiamate

T_LNK_Matricola2cliente[ID_matricola,ID_cliente]
T_LNK_Matricola2Intervento[ID_matricola,ID_intervento]

Ho poi una particolare query che lega Matricole e Clienti ed una Matricole e interventi.
Ho una maschera di inserimento dati basata sulle query precedenti, e se inserisco TUTTI i dati, ovvero cliente e matricola oppure intervento e matricola
tutto funziona regolarmente, sia in inserimento che in visualizzazione, con sottomaschere report ecc.
Il problema nasce se io inserisco un cliente chiamando l'inserimento dalla maschera di riepilogo macchina (dove ho la matricola);
Il cliente lo inserisco, ma non viene referenziato alla matricola da cui lancio l'inserimento, e questo poichè non viene scritto nella tabella di collegamento il record con i due ID che dovrebbero essere collegati.
La domanda è: esiste una procedura particolare, che io evidentemente ignoro, o deve necessariamente essere scritto del codice per automatizzare questa procedura?
(se io inserisco matricola e cliente separatamente, e poi manualmente aggiorno la tabella di collegamento la struttura funziona, ovvero nei report e maschere di riepilogo i vari record sono legati correttamente)
Grazie della pazienza, vi ringrazio già per aver letto tutto il tomo....
Paolo.

1 Risposte

  • Re: Problema con inserimento record in sottomaschera

    p.pennaz ha scritto:


    La domanda è: esiste una procedura particolare, che io evidentemente ignoro, o deve necessariamente essere scritto del codice per automatizzare questa procedura?
    Sì, il tuo è un problema molto comune e si risolve con un minimo di istruzioni (puoi scegliere fra codice Visual Basic oppure macro) che servono a dire alla maschera/tabella figlia "svegliati che è arrivato un nuovo dato". Purtroppo, appena inserito un nuovo dato in tabella madre, quando le due maschere sono contemporaneamente aperte, la figlia non riesce ancora a vedere il nuovo dato che deve essere imbeccato con qualche istruzione.
    Io ho risolto con una macro sfruttando l'azione ImpostaValore che fa migrare forzatamente il nuovo dato dalla tabella madre verso la figlia.
    Altrimenti esiste lo spartanissimo stratagemma di chiudere/riaprire tutto: in questo modo la tabella figlia si aggiorna dei dati della madre.
Devi accedere o registrarti per scrivere nel forum
1 risposte