Newsgroup: it.comp.appl.access
Titolo: Copia record da una tabella ad un'altra

Buongiorno a tutti e....vengo al dunque:
Dato un db avente una tblprodotti ed una maschera in visualizzazione
continua basata su di essa,
vorrei poter copiare uno o più record a scelta in un'altra tabella uguale
alla precedente, che contenga dunque di volta in volta, la lista dei
prodotti occorrenti; mi spiego meglio:
se viene un cliente e mi ordina i dieci oggetti con i codici 2,4,5,8,12,
ecc. io vorrei, partendo dalla maschera di cui sopra, poter semplicemente
cliccere sui codici, ed automaticamente trovarmi un report con gli oggetti
scelti....
avevo pensato di operare sull'evento doppio clic del campo codice, ma non
saprei da dove iniziare per il codice visual basic...
Ringraziandovi per l'aiuto che senz'altro mi darete, vi auguro un buon
lavoro!!

 wrote in message
news:FuX5b.16241$
hE5.5...@news1.tin.it

Premetto che se ho compreso correttamente la tua esigenza hai preso
la strada sbagliata.
Di fatto quando un Cliente fa un'ordine viene associato un Codice
Cliente e il progressivo CodiceOrdine.
Il tutto deve essere legato in questo modo.
Questo ti da la possibilità di stampare il tuo Report non solo in base
al Cliente, in quanto se il cliete fa 2 ordini stamperesti
anche il precedente, ma anche in base al numero d'ordine, insieme
formano la chiave univoca per indirizzare i Record alla stampa.
Credo che questo significhi approfondire la gestione dei DATI
e del Database usando le regole fondamentali per la NORMALIZZAZIONE.
@Alex.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ha scritto nel messaggio
news:37a83966373bfde7c7...@mygate.mailgate.org...

Hai ragione...mi sono spiegato malissimo....
nell'ottica di un ordine fatto da un cliente avviene tutto quello che tu
dici....
ma io mi pongo un altro problema che proverò ad esporre meglio...
supponiamo che debba allestire una fiera nella quale portare alcuni
prodotti...
non essendoci alcun ordine ne di acquisto ne di vendita, io vorrei
semplicemente un report che mi indicasse i prodotti da portare, in base ad
una scelta che farei guardando le loro caratteristiche a video sulla
maschera di cui parlavamo prima....
in effetti la soluzione più logica sarebbe quella di aggiungere un campo
si/no nella tblprodotti, e spuntare quindi il prodotto da inserire nella
lista, quindi filtrare la tbl tramite una query su cui basare il report...ma
io volevo sapere se esiste un modo per fare la stessa cosa senza aggiungere
un campo, ma tramite un pulsante o qualche altro modo...

 un campo, ma tramite un pulsante o qualche altro modo...
Potresti pensare ad una ListBox a selezione Multipla, con la quale
selezioni i prodotti e quando vuoi stampare il REPORT generi
una QRY leggendo dalla ListBox gli ItemSelected.
E' realmente molto semplice da realizzare e, secondo me estremamente
funzionale nel tuo caso.....!
Ciao.


 Ciao.
Ottimo, ma ho un altro problema.....
avendo i miei prodotti una chiave univoca (denominata rif) del tipo x/nnnn
dove x è una lettera e nnnn dei numeri (a volte 2 o 4) quando cerco di
aprire il report con un pulsante di comando dalla listbox, mi chiede di
definire x.....
ti posto il codice inserito sull'eento click del pulsante (tra l'altro
copiato dall'esempio su sitocomune:
Private Sub Comando5_Click()
On Error GoTo Err_Comando5_Click
    Me!Lista = Null
    Dim strLista As String
    Dim strCriteri As String
    Dim varItem As Variant
    If Me!Elenco.ItemsSelected.Count = 0 Then Exit Sub
    For Each varItem In Me!Elenco.ItemsSelected
        strLista = strLista & _
            Me!Elenco.Column(0, varItem) & ","
        Me!Lista = Me!Lista & _
            Me!Elenco.Column(1, varItem) & ", "
    Next varItem
    strLista = Left$(strLista, Len(strLista) - 1)
    Me!Lista = Left$(Me!Lista, Len(Me!Lista) - 2)
    strCriteri = "[Rif] IN (" & strLista & ")"
    Dim stDocName As String
    stDocName = "ReportLista"
    DoCmd.OpenReport stDocName, acPreview, , strCriteri
    Dim Cont As Integer
    For Cont = 0 To Me!Elenco.ListCount - 1
        Me!Elenco.Selected(Cont) = False
    Next Cont
Exit_Comando5_Click:
    Exit Sub
Err_Comando5_Click:
    MsgBox Err.Description
    Resume Exit_Comando5_Click
End Sub
dove ovviamente lista è una csella di testo non visualizzata che dovrebbe
contenere la scelta effettuata...
Spero di essere stato chiaro e che riesca ancora ad aiutarmi... Grazie!!!

 Spero di essere stato chiaro e che riesca ancora ad aiutarmi... Grazie!!!
Il tuo problema credo sia dovuto al fatto che l'esempio di Roberto
prevede Primary_Key di tipo Numerico, tu invece utilizzi TESTO.
Di conseguenza devi utilizzare la corretta sintassi per generare
la STRINGA....!
Prova a sostituire  questa riga con la seguente:
strLista = strLista & chr(34) & _
             Me!Elenco.Column(0, varItem) & chr(34) & ","
Vediamo se funziona....!



Perfetto.....sei un genio!!!!!!
Ma ne approfitto per altro....
in una listbox come quella in oggetto, è possibile avere ad esempio colori
diversi per ogni colonna visualizzata, o anche righe a colori alternate, un
po' come in excel????

 po' come in excel????
He, He, He......!
Ti piacerebbe.......!!!!
NO, non si puň.
Ci sono perň Activex a pagamento che fanno anche la pizza.
Il mio consiglio perň č di non imbarcarti in INUTILI vezzi
estetici, quello che stai usando č ottimi, funzionale e
ERROR_FREE.
