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]