Bonjour Pascal Robert
Message du 2006-07-13 17:49:
Il semble que mon problème soit relié à l'impression, si je commentes le bout de code qui utilise XPrintable, les documents se ferment correctement.

J'ai quelques difficultés à fermer le résultat d'une fusion, lors de l'appel à XCloseable.close(), on me répond « Controller disagree » :-/ Et si je vais sur le serveur OOo, le document n'a pas été sauvegardé (malgré un appel à .store()) et il est encore ouvert dans Writer. Voici le code :

// Ouverture des documents fusionnés pour les imprimer, nous supprimeons les fichiers à mesure qu'ils sont imprimés.
try {
    fichiers = repertoireDocumentsFusion.listFiles();
    for (int iterateur = 0; iterateur < fichiers.length; iterateur++) {
        File fichier = fichiers[iterateur];
        if (fichier.getName().endsWith(_ExtensionDocument)) {
            PropertyValue[] loadProps = new PropertyValue[0];
XComponent xComponent = mxComponentLoader.loadComponentFromURL(_url(fichier), "_blank", 0, loadProps); XTextDocument xDoc = (XTextDocument) UnoRuntime.queryInterface(XTextDocument.class, xComponent); XPrintable xPrintable = (XPrintable)UnoRuntime.queryInterface(XPrintable.class, xDoc);
            PropertyValue[] printerDesc = new PropertyValue[1];
            printerDesc[0] = new PropertyValue();
            printerDesc[0].Name = "Name";
            printerDesc[0].Value = nomImprimante;
            xPrintable.setPrinter(printerDesc);
            PropertyValue[] printOpts = new PropertyValue[0];
            PropertyValue[] props = xPrintable.getPrinter();
xPrintable.print(printOpts);

Rajouter dans printOpts la propriété Wait avec la valeur True.

(ref : Livre Programmation OpenOffice.org 2 page 204)

 Bonne journée
   Bernard

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

Répondre à