Newsgroup: it.comp.appl.access
Titolo: [OT] Stampa unione (uno a molti)

Salve a tutti;
sono un po' latitante ma le ultime battute sull'argomento "stampa unione" mi
hanno dato la molla per la ricerca di altre soluzioni. In effetti c'è una
soluzione molto semplice che avevo visto utilizzare in word 2000 e pensavo
fosse una features di quel pacchetto; invece (mea culpa) la stessa soluzione
è possibile utilizzarla anche nel pacchetto '97.
Esiste in word un "codice di campo" (spulciate l'help please!) chiamato
DATABASE; iddu non fa altro che creare una connessione al database e leggere
i dati o da tabella o da stringa sql specificata nel codice di campo e
presentarli formattati come una tabella.
Quindi per realizzare un documento word di tipo fattura (dati intestazione
ed elenco dettaglio) i passi sono questi (da modificare a secondo delle
proprie necessità):
- tabella o query con i dati dell'intestazione della fattura (parte alta -
lato uno della relazione);
- creare il documento word, scrivere il documento e legarlo (stampa unione)
alla tabella/query (lato uno);
- visualizzare (sempre da word) la barra strumenti "DATABASE";
- posizionare il cursore dove vogliamo inserire la tabella dei dati riferiti
al dettaglio (lato molti) e premere il bottone "Inserisci database";
seguendo le istruzioni del wizard noi creiamo tutti i riferimenti per
leggere i dati (molti) della fattura indicando anche il campo della
condizione where che ci serve per estrarre solo quelli riferiti a quel
cliente o id. Ricordatevi di spuntare l'opzione "inserisci come campo".
Ora manca di inserire la "variabile" nella condizione where; con ALT-F9
possiamo intervenire nelle opzioni del codice di campo visualizzandone il
contenuto che dovrebbe essere simile a questo:
{DATABASE \d "C:\\dati\\fatture.mdb" \c "TABLE Dettagli" \s "SELECT
[articolo], [prezzo], [idFattura] FROM [Dettagli] WHERE (([idFattura] =
3 ))" \h}
Praticamente la condizione è preimpostata per restitutire i dettagli della
fattura con idFattura = 3; quindi bisogna inserirgli il riferimento al campo
id della fattura. Possiamo farlo perché il documento word è legato alla
tabella/query (lato uno) delle fatture.
togliamo il 3 (l'idfattura), lasciando il cursore vicino al segno
dell'uguale, dalla barra strumenti "Stampa unione" - "inserisci campo
unione"  e scegliamo "Id" (della fattura).
La situazione dovrebbe essere questa:
{DATABASE \d "C:\\dati\\fatture.mdb" \c "TABLE Dettagli" \s "SELECT
[articolo], [prezzo], [idFattura] FROM [Dettagli] WHERE (([idFattura] =
{MERGEFIELD id} ))" \h}
Ora premiamo ALT-F9 per ripristinare la visualizzazione dei codici di campo
e se facciamo la stampa unione si dovrebbe materializzare il nostro sogno...
Una fattura si word!!
Spero di essermi spiegato...
Un saluto a tutti e buon lavoro.
--
Sergio MAZZA

 Sergio MAZZA
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


Troppo buono!
--
Sergio MAZZA

Sergio MAZZA
veramente notevole, complimenti
Saluti.
Emanuele.

 Sergio MAZZA


 ha scritto nel messaggio
news:m1dpdukvbabr17ceq...@4ax.com...

Mi associo e ti invito a farne una FAQ x il SC.
--
Silvio
il sito comune di it.comp.appl.access:
http://www.sitocomune.com


Grazie a tutti; lo farň volentieri.
Se volete ho anche un piccolo mdb+doc che ho utilizzato per la prova.
--
Sergio MAZZA


Bravo!



Magari a distanza di anni ... non leggerai ... MA DEVO FARTI I MIEI COMPLIMENTI ... suggerimento valido anche per Office 2016!! GRANDE!!!