Newsgroup: it.comp.appl.access
Titolo: Riportare dati di un determinato record

Premetto che ho provato a cercare sul sito comune il mio problema,  ma non 
sono riuscito ad individuare un suggerimento adatto.
Ho una maschera che va a popolare una tabella con: id, data, creditore ecc.. 
Quando inserisco un nuovo record vorrei che potessi copiare i dati da un 
determinato record precedente inserendo l�id del record da copiare oppure 
qualcos�altro, se voi avete qualche idea.
Grazie tante.

Non conoscendo ne i campi che vuoi copiare ne i nomi su due piedi
potresti usare questo codice che ti copia un'intero record e relativi
valori
creati un pulsante e inserisci
'''''''''
DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 2, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 5, , acMenuVer70
MsgBox "OK, record duplicato"
'''''''''''
Portati sul record che vorrai duplicare e premi il pulsante
Ciao
Alex


v.a. 
http://groups.google.com/group/it.comp.appl.access/msg/57ada362919109d4
-- 
HTH
Karl
*********
Access FAQ: 
www.donkarl.com/it
 


Potrebbe andare bene, per� non so dove mettere i nomi mi potreste aiutare ?
Ti serve il nome di "origine controllo" oppure "nome elemento" ?
Grazie 

Forse non hai letto bene le risposte suggerite, con il codice che ti è
stato postato non serve sapere i nomi campo
perchè copia e incolla l'intero record.
Ciao
Alex

 schrieb im Newsbeitrag 
news:088a63cb-4a0b-448d...@p36g2000vbn.googlegroups.com...
Forse non hai letto bene le risposte suggerite, con il codice che ti �
stato postato non serve sapere i nomi campo
perch� copia e incolla l'intero record.
Ciao
Alex
Ho provato ma non va, nel senso che la maschera che uso per inserire i dati 
in tabella � associata ad una query di selezione che prende i dati da 2 
tabelle diverse. Cosa posso fare?
Grazie. 

 dati da 2 tabelle diverse. Cosa posso fare?
Creati una query di accodamento con tutti campi che vuoi riempire.
Origine e destinazione � la stessa tabella.
Come criterio nel campo id scrivi:
Forms!NomeDellaMaschera!Id
per copiare il record attuale, o
Forms!NomeDellaMaschera!NomeControllo
se vuoi inserire l'id da copiare in un controllo diverso.
Salva la query p.e. con il nome "qryCreditore".
Poi come codice di un bottone o dove lo vuoi usi:
' se il record corrente non � ancora salvato
' Me.Dirty = False
Currentdb.Execute "qryCreditore", dbFailOnError


 schrieb im Newsbeitrag 
news:7cbpmkF...@mid.individual.net...

Esatto scrivo dalla Germania, e sto cercando di sviluppare un database 
access per mio padre in Italia, solo che sto sbattendo la testa sullo stesso 
problema da diversi giorni. Grazie della pazienza ora provo ad applicare il 
consiglio che mi hai suggerito. 

> Origine e destinazione � la stessa tabella.
Il problema che la maschera che visualizza i dati, li prende da due tabelle. 
Mi spiego meglio:
Ho la tabella "Copertura" e la tabella "determine". La tabella determine 
contiene un campo "tipo" dove scrivo 4 tipi di determine: impegno, 
liquidazione, impegno liquidazione, altro. Ho creato 4 query differenti 
dipendenti dalle stesse tabelle ("copertura" "determine") ed hanno una 
relazione id(copertura) idcopertura(determine) e nel criterio del campo 
"tipo" per ogni query ho scritto impegno, liquidazione, impegno 
liquidazione, altro. Ho creato 4 maschere, dove  "determine impegno" 
"determine liquidazione" "determine impegno liquidazione" "determine altro" 
e sul campo "tipo" di ognuna mascera ho dato come valore predefinito 
"impegno" "liquidazione" "impegno liquidazione" "altro" in modo tale che 
quando apro una determinata maschera va a scrivere in automatico nel campo 
"tipo" il tipo di determina e la query visualizza solo le determine del tipo 
scelto.La relazione id delle tabelle mi serve perch� quando apro la maschera 
scrivo l�id copertura ed in automatico mi scrive i dati associati. Il mio 
problema � questo: Quando creo una "determina impegno" vorrei duplicare il 
record nella "determina liquidazione" chiaramente con un id diverso, quello 
successivo.  Spero di essermi spiegato bene. Grazie. 

 schrieb im Newsbeitrag 
news:4a619e00$0$32680$9b4e...@newsspool2.arcor-online.net...

 Ho dimenticato, ma forse � ininfluente, che invece di utilizzare un 
id(contatore) per le tabelle, ho usato questo codice 
=Nz(DMax("[numero]";"[copertura]");0)+1.
Grazie. 

Ho creato la query di accodamento ma se metto in criteri della query del 
campo id
Forms!impegno!id
nel momento che avvio la query non mi riporta nessun rigo da copiare mi esce 
l�errore:
Impossibile accodare i record.. Numeri di campi
impostati a NULL per un errore di conversione tra tipi: 0; numero di record
non aggiunti alla tabella a causa di violazioni di chiave: 1; a causa di
violazioni di di condivisione: 0; ...ect.
Se invece tolgo quel rigo in criteri mi copia tutti i record. Come posso 
copiare solo il record selezionato?

 ha scritto nel messaggio 
news:4a62e893$0$30223$9b4e...@newsspool1.arcor-online.net...

L'errore � abbastanza esplicativo, cerchi di accodare dei dati che nella 
tabella di destinazione devono essere univoci.
Non � che per caso cerchi di accodare anche l'id?
l'id non loo devi inserire nella query di accoamento.
-- 
Ciao
Geppo 

"Geppo" <c...@tin.it.invalid> schrieb im Newsbeitrag 
news:zYC8m.38293$1s6...@twister2.libero.it...

Se non metto nessun criterio nel campo id della query mi va a copiare tutti 
i record mentre a me serve che ne copi solo uno quello corrente. grazie 

 ha scritto nel messaggio 
news:4a636011$0$30238$9b4e...@newsspool1.arcor-online.net...

Si � chiaro, io volevo farti solo notare che quell'errore si ottiene in quel 
caso oppure se si cerca di copiare un dato non conforme ad es. del testo in 
un campo numerio o tipo data.
Adesso solo tu puoi capire dov'� il problema, controllando la strutture 
della tabella ed i titpi di dati che vai ad accodare.
-- 
Ciao
Geppo
-- 
Ciao
Geppo 

 quello corrente.
Il problema non � che usi l'id come criterio ma molto probabile
che tenti di aggiungerlo alla tabella. Vai in vis. SQL della query
e copia/incolla l'enunciato SQL qui.
-- 
cu
