Duplicare maschera e sottomaschera Access2010

di
Anonimizzato12280
il
3 risposte

Duplicare maschera e sottomaschera Access2010

Salve a tutti,

ho un problema con il mio Access che sto sviluppando per una piccola azienda.

Vorrei poter duplicare i dati contenuti in una maschera e una sottomaschera, in modo da ottenere una nuova versione su cui poter modificare dati senza però perdere i dati della versione precedente.

La maschera fa capo alla tabella tblPreCalcolo mentre la sottomaschera fa capo alla tabella tblRigaPre.

Non pretendo che mi diate una risposta bella e pronta anche perché vorrei poter imparare ad utilizzare bene Access, però vi chiedo di venrimi in aiuto per indirizzarmi e farmi capire la strada giusta per la risoluzione.

Grazie mille in anticipo.

3 Risposte

  • Re: Duplicare maschera e sottomaschera Access2010

    La cosa che mi lascia perplesso, ma per ignoranza suo tuo progetto, è la necessità di REPLICARE sia la situazione lato1(Form-tblPreCalcolo) che quella lato Molti(SubForm-tblRigaPre).
    In realtà quella lato Molti(SubForm-tblRigaPre) ha un senso... ma quella lato 1........?

    In tutti i casi, per non entrare in un dettaglio forse non necessario, rimane evidente che per farlo devi creare 2 Tabelle con la medesima struttura, salvo la PK lato1(tblPreCalcolo) che non dovrà ovviamente essere COUNTER, ma Intero Lungo.

    A questo punto devi inserire il dato della tblPreCalcolo, nella tabella CLONE, ed anche i relativi Records della tblRigaPre nella relativa CLONE, ed esattamente in questo ordine per non violare le regole della Relazione.

    L'inserimento si ottiene con 2 semplici Queries INSERT
    
    INSERT INTO Clone_tblPreCalcolo SELECT * FROM tblPreCalcolo WHERE ID=TuoID
    Quindi farai la medesima cosa sulla Clone Sub
    
    INSERT INTO Clone_tblRigaPre SELECT * FROM tblRigaPre WHERE FK=TuoID
    Gli ID sono sempre quelli della tblPreCalcolo, come vedi uno è PK e l'altro FK...
    Ciao
  • Re: Duplicare maschera e sottomaschera Access2010

    @Alex ha scritto:


    La cosa che mi lascia perplesso, ma per ignoranza suo tuo progetto, è la necessità di REPLICARE sia la situazione lato1(Form-tblPreCalcolo) che quella lato Molti(SubForm-tblRigaPre).
    In realtà quella lato Molti(SubForm-tblRigaPre) ha un senso... ma quella lato 1........?
    La maschera e la sotto maschera in questione servono per calcolare un preventivo di lavoro,
    la maschera contiene un ID con il contatore, una data, un FK della tabella Oggetto (scelta tramite menu a tendina) di conseguenza scelto l'oggetto alcuni campi della maschera si completano con alcuni dati della tabella oggetto. Inoltre sulla maschera sono presenti due campi con dei valori che verranno presi e per essere moltiplicati nella sotto maschera.
    La sotto maschera invece è una maschera continua in cui su ogni riga vengono inseriti dati presi da altre tabelle sempre tramite menu a tendina o da inserire manualmente. inseriti i dati essi vengono calcolati. (ogni riga è destinata ad un singolo materiale, quindi è necessario avere più righe)
    nel footer della sotto maschera sono presenti i sub totali e i totali del preventivo.
    Il mio bisogno è quello di poter duplicare più volte (senza dover riempire manualmente tutti i dati) un preventivo per effettuare delle modifiche senza però intaccare la versione precedente (in quanto al cliente verranno proposti diversi preventivi e solo una volta scelto si procede con tale preventivo).
    spero sia più chiaro ora.

    Tabella "tblPreCalcolo" : ID_PreCalcolo (counter), Data (data/time), FK_Oggetto (intero lungo), PZink (valuta), POber (valuta)

    Tabella "tblRigaPre" : ID_RigaPre (counter), Denom (testo), FK_Profilo (testo), FK_Materiale (testo), lunghezza (num), pezzi (num), prezzo/kg (valuta), FK_Tariffa (byte), FK_Precalcolo (intero lungo)
  • Re: Duplicare maschera e sottomaschera Access2010

    Sono riuscito a fare ciò che volevo.
    Ho seguito le tue istruzioni
    In tutti i casi, per non entrare in un dettaglio forse non necessario, rimane evidente che per farlo devi creare 2 Tabelle con la medesima struttura, salvo la PK lato1(tblPreCalcolo) che non dovrà ovviamente essere COUNTER, ma Intero Lungo.
    Poi ho creato le due query di accodamento per inserire i dati mettendo l'ID proprio quello presente nella maschera al momento della duplicazione.
    Poi collegandoli ad un bottone ho fatto in modo che si duplichi appunto solo i dati della maschera attualmente aperta.
    Dopodiché ho clonato la struttura della maschera e sottomaschera modificando le query di inserimento dati prendendoli dalla tabella clone così funziona tutto senza problemi.

    Grazie @Alex
Devi accedere o registrarti per scrivere nel forum
3 risposte