Le 06-06-15, à 08:20, Xavier XGE. GUILLEMINE a écrit :

Bonjour

Je  rencontre des soucis avec l'API  openOffice 2.0.1

Je souhaite transformer un document word contenant des champs de fusions en document office .odt via l'API

Premièrement, passe à OOo 2.02, la fusion ne fonctionne pas très bien sur 2.01.

Pour ton problème, il est bien simple, les champs de fusion venant de Word sont bien vu, mais OOo ne peut les utiliser et les relier à la source de données que Word utilisait. Pour que le tout fonctionne, tu dois :

- convertir ton document Word en document OOo

- créer une nouvelle source de données dans OOo Base

- relier les champs de fusion avec la nouvelle source de données

- exécuter la fusion

C'est justement le genre d'opération que j'ai dû faire pour éliminer une solution Word (qui utilisait COM et la JVM de Microsoft, beurk).

je réalise le code suivant :

/**
* Transform the documentUrl (Normally a .doc, perhaps any document support by
* Open Office)into a odt document
*
* @param xMSF
* @param documentURL as <code>/path/template.doc</code>
* @return
*/

public void transform(XMultiServiceFactory xMSF, String documentURL)throws OOException {
        if ( logger.isDebugEnabled() ){
logger.debug(new StringBuffer(128).append("Transform to .odt : ").append(documentURL).toString());
        }

                // Transformation into .odt
XTextDocument docWord = OOFactory.createXTextDocument(xMSF, documentURL);
                // Saugegarde du document
String nomDocSortie = new StringBuffer(128).append(documentURL).append(OOFileManager.getDocExtens ion()).toString();
        OORegistration reg = new OORegistration();
reg.storeDocument(docWord, documentURL, "StarOffice XML (Writer)", nomDocSortie);
        if ( logger.isDebugEnabled() ){
logger.debug(new StringBuffer(128).append("End transformation to .odt : ").append(documentURL).toString());
        }
}


--
Pascal Robert
Spécialiste en informatique/IT Specialist
OS communications informatiques inc.
+1 450 676-1238 x28
http://www.os.ca

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à