La stampa unione e' uno degli strumenti

... detestati dagli sviluppatori, ma apprezzati dai clienti perche' l'idea che il CRM possa creare lettere, posta elettronica, offerte ed altro direttamente in word risulta essere accattivante.

La cosa resiste anche se per chi usa SQL Server 2008 c'e' la possibilita' di esportare in word i report.

Bisogna pero' ricordarsi che la stampa unione di word ammette un solo ciclo e quindi se ci sono delle informazioni che devono essere messe solo all'inizio e alla fine della stampa bisogna gestirle con degli if che controllino se siamo al primo o all'ultimo item del ciclo.

A volte pero' si sperimenta un altro grosso problema dovuto a un baco nel CRM o meglio nel modello di word usato dal CRM: CRMTemplate.dot.
Se ci si trova con un modello di stampa unione perfetto e poi, lanciandolo, si notano degli "a capo" che non dovrebbero esserci la co,lpa non e' nel vostro modello, ma nel CRM.
Infatti esso per inserire i dati in word usa una macro. Essa oltre a fare cio' inserisce qualche riga all'inizio del documento per spiegare all'utente come procedere, poi la macro che lo stesso fa partire cliccando sul pulsante "CRM", leva queste scritte. Peccato che essa si dimentichi un "a capo" e questo, essendo fuori dai campi della stampa unione di word, venga ripetuto per ogni item del ciclo!!! 
Dopo diverse decine di prove sono giunto alla conclusione che l'unico modo di risolvere il problema e' quello di modificare il codice della macro (attenzione quindi alle rollup) e quindi modificare il file.dot aggiungendo
ActiveDocument.Paragraphs(1).Range.Delete
al codice della macro dopo la riga 53.

A questo punto gira tutto.

Il file si trova nel sito del CRM/_static/tools/mailmerge

Dettagli...