[Résolu][OXT] Sauvegarde auto avec incrément du nom

Discussions sur les projets et applications développés en liaison avec une suite bureautique libre.

Modérateur : Vilains modOOs

Avatar de l’utilisateur
Ravioli
GourOOu
GourOOu
Messages : 7610
Inscription : 18 oct. 2007 18:28

[Résolu][OXT] Sauvegarde auto avec incrément du nom

Message par Ravioli »

Bonjour,

J'ai posté en Macro ma première demande,
http://user.services.openoffice.org/fr/ ... 769#p98769
or mon objectif est le suivant :

Créer une extension afin qu'un débutant (ou presque)
puisse cliquer sur un bouton de la barre d'outils Standard
et provoquer une copie de sauvegarde avec le même nom que le document en cours
mais incrémenté de 1 à chaque clic.

Dude m'a donné une solution, mais il faut rentrer le nom du fichier, ce que je ne veux pas :
1. J'enregistre sous pour la première fois le fichier ce qui est normal.
2. A intervalle régulier, je veux cliquer sur un bouton ( c'est plus convivial qu'un raccourci pour les débutants) pour que le fichier se sauvegarde sous le même nom mais avec un chiffre incrémenté... sans rien faire d'autre et que je poursuive le travail sur le même document, ce que fait l'instruction storeToURL d'après Bernard page 222.

Je rappelle que l'avantage de cette sauvegarde incrémentée est, lors de la création d'un document important, roman, tutoriel,
non seulement d'avoir une sauvegarde
mais aussi de pouvoir retrouver dans une des copies, un élément que l'on aurait par exemple supprimé mais que finalement, au cours de l'écriture, on voudrait le rétablir par un petit copié-collé...

Cordialement,
Dernière modification par Ravioli le 26 sept. 2009 11:52, modifié 3 fois.
AOO 4.1.1 LibO 4.4.5
Vista SP2, Win7 SP1, Win7 SP1 Pro, Win 8.1.1 Pro, Mac Intel OS X 10.10.5, Ubuntu 12.04 LTS 32 bits, OpenSuse 13.2, Debian 7
& LibO 4.0.6 pour Mac PPC 10.5.8
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25143
Inscription : 03 mars 2006 08:45
Localisation : 127.0.0.1
Contact :

Re: Extension: sauvegarde auto avec incrément du nom

Message par Dude »

Re,

Le problème est de récupérer ce fameux numéro d'incrément. Je te propose d'utiliser les propriétés du document avec le numéro de révision.
prop.png
Qu'en penses-tu ?

J'ai donc modifié la macro comme ceci :

Code : Tout sélectionner

Sub SauveAutoODT
dim oDoc as object
dim sUrl as string, sNom as string
dim bMaj as boolean, bNom as boolean
dim PropFic(0) as new com.sun.star.beans.PropertyValue

oDoc = ThisComponent
bMaj = oDoc.isModified
bNom = oDoc.hasLocation
' On sauvegarde si le doc est nommé et a été modifié
if ( bMaj and bNom ) then
	oDoc.store
	sNom = Left ( oDoc.Title, Len(oDoc.Title) -4 )
	nRevision = oDoc.documentInfo.EditingCycles
	
	sURL = convertToUrl("c:\temp\"& sNom &"_"& nRevision &".odt")
	PropFic(0).name="FilterName"
	PropFic(0).value="writer: Writer8"
	
	oDoc.storeToUrl(sURL, Propfic())
end if

End Sub
8)
Avatar de l’utilisateur
Ravioli
GourOOu
GourOOu
Messages : 7610
Inscription : 18 oct. 2007 18:28

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Ravioli »

Bonjour Dude,

Je suis impressionné et avec le travail d'Alain sur le fil en Macro, :super:
http://user.services.openoffice.org/fr/ ... 884#p98884
je vous remercie de faire avancer ce projet.

Ravioli
AOO 4.1.1 LibO 4.4.5
Vista SP2, Win7 SP1, Win7 SP1 Pro, Win 8.1.1 Pro, Mac Intel OS X 10.10.5, Ubuntu 12.04 LTS 32 bits, OpenSuse 13.2, Debian 7
& LibO 4.0.6 pour Mac PPC 10.5.8
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25143
Inscription : 03 mars 2006 08:45
Localisation : 127.0.0.1
Contact :

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Dude »

Re,

Il reste à préciser où souhaites-tu enregistrer les documents sauvegardés automatiquement. Veux-tu créer un répertoire dédié ou on met cela au même niveau que le document d'origine ?
Poser une question, c'est bien. Répondre aux autres, c'est encore mieux.
Améliorez AOO et votez pour les issues
Avatar de l’utilisateur
Ravioli
GourOOu
GourOOu
Messages : 7610
Inscription : 18 oct. 2007 18:28

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Ravioli »

Re,

L'idéal serait effectivement de créer un répertoire dédié mais au même niveau que celui du fichier de travail.

Car il prend en compte au moins 2 cas possibles :

➫ cas le plus professionnel de l'organisation du travail : l'utilisateur a déjà créé un répertoire spécial pour travailler (à l'instar d'un dossier des Document-maître)
au minimum lors de son premier Enregistrer sous (création d'un nouveau dossier),
et ce répertoire dédié aux sauvegardes deviendra un élément du répertoire de travail,

➫ l'utilisateur a des habitudes qu'il convient de ne pas trop bouleverser : à partir de Documents ou sur le Bureau ( et oui !),
alors ce répertoire dédié au même niveau fera moins capharnaüm :wink:

Merci pour cette question importante,
Ravioli
AOO 4.1.1 LibO 4.4.5
Vista SP2, Win7 SP1, Win7 SP1 Pro, Win 8.1.1 Pro, Mac Intel OS X 10.10.5, Ubuntu 12.04 LTS 32 bits, OpenSuse 13.2, Debian 7
& LibO 4.0.6 pour Mac PPC 10.5.8
Avatar de l’utilisateur
Alain de La Chaume
HédOOniste
HédOOniste
Messages : 1527
Inscription : 28 sept. 2008 14:56
Localisation : ʇsǝnoo,ꞁ ɐ ʇuǝɯǝʇǝꞁdɯoↃ

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Alain de La Chaume »

Bonjour.
J'ai "commis" une nouvelle version (v2).
Elle tient compte des remarques faites au sujet du répertoire de sauvegarde.
Mais c'est du "brut de pommes". Les tests, c'est pas mon fort. Et de toute façon
il n'est pas bon d'être à la fois juge et partie.
Pièces jointes
sauvegarde_incrémentée_v2.odt
(16.53 Kio) Téléchargé 770 fois
(API-culteur et pêcheur de macros en mode loisirs occasionnels, mais toujours les pieds dans l'OO)
AOO 4.1.2 sous Linux Xubuntu Voyager 14.04 (x86_64)
Avatar de l’utilisateur
Alain de La Chaume
HédOOniste
HédOOniste
Messages : 1527
Inscription : 28 sept. 2008 14:56
Localisation : ʇsǝnoo,ꞁ ɐ ʇuǝɯǝʇǝꞁdɯoↃ

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Alain de La Chaume »

Bonjour,

Aujourd'hui, la version v2B.
Les commentaires sont dans le document joint.

Pour tester cette version (juste un peu),
j'ai placé l'unique module dans "Mes macros et boîtes..." Standard
et assigné sub acIncrementSave_v2() à un raccourci clavier.
Pièces jointes
sauvegarde_incrémentée_v2b.odt
(13.7 Kio) Téléchargé 657 fois
(API-culteur et pêcheur de macros en mode loisirs occasionnels, mais toujours les pieds dans l'OO)
AOO 4.1.2 sous Linux Xubuntu Voyager 14.04 (x86_64)
Avatar de l’utilisateur
Papayes
Membre fOOndateur
Membre fOOndateur
Messages : 4154
Inscription : 07 déc. 2005 14:55
Localisation : Vic-Fezensac dans le Gers

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Papayes »

Bonjour Alain,

Je te remercie de cette participation à ce projet que je considère comme particulièrement important,
voire capital et que tous ceux qui ont eu un jour un fichier sans sauvegarde auraient bien aimé posséder.

Je suis d'ailleurs assez étonné que cette extension n'existe pas encore.
Si elle peut paraître inutile aux yeux de certains professionnels de la sauvegarde systématique,
son usage je suis certain apportera un plus important pour OpenOffice.org Writer.

Merci encore à toux ceux qui s'y penchent.
papayes
"Tout ce qui n'est pas donné est perdu"
Avatar de l’utilisateur
Ravioli
GourOOu
GourOOu
Messages : 7610
Inscription : 18 oct. 2007 18:28

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Ravioli »

Bonjour,

Superbe macro,
Je serais désolé cependant de voir cette macro rejoindre simplement les "Suprêmes de code".

Il ne reste "plus qu" 'à créer l'extension. :oops:
Désolé, malgré la bible de Bernard Marcelly et de son programme Extension Compiler
je n'ai pas l'outrecuidance de me déclarer capable de la réaliser.

Je me répète, je pense que seule une extension permettra à un simple utilisateur de bénéficier de cette macro,
qui s'adresse à des utilisateurs qui n'ont pas acquis le réflexe professionnel de la sauvegarde systématique des documents de travail.

Cordialement,
AOO 4.1.1 LibO 4.4.5
Vista SP2, Win7 SP1, Win7 SP1 Pro, Win 8.1.1 Pro, Mac Intel OS X 10.10.5, Ubuntu 12.04 LTS 32 bits, OpenSuse 13.2, Debian 7
& LibO 4.0.6 pour Mac PPC 10.5.8
Avatar de l’utilisateur
Alain de La Chaume
HédOOniste
HédOOniste
Messages : 1527
Inscription : 28 sept. 2008 14:56
Localisation : ʇsǝnoo,ꞁ ɐ ʇuǝɯǝʇǝꞁdɯoↃ

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Alain de La Chaume »

Bonjour à tous, bonjour Ravioli,
Il ne reste "plus qu" 'à créer l'extension.
J'entends bien, mais ça je n'ai jamais fait.
L'inconnu ne m'effrayant pas plus que ça, j'ai bien essayé de créer un OXT (et réussi).
Mais, je ne sais pas comment faire pour y intégrer un appel soit par menu, soit par barre d'outil...
Quand un grand m'aura montré... peut-être que je comprendrai.
A moins qu' "une simple recherche..." :oops:

Nouvelle édition :
Dès que j'aurai un moment je verrai du côté de chez ... BasicAddonBuilder

Edit du 5/9/09, 14 h 35 :
Bon, finalement, j'ai mis le nez dedans. J'ai créé un OXT à l'aide de BasicAddonBuilder
que je soumets à vos tests.
Cet (ou cette, je ne sais pas, j'ai pas regardé) OXT propose :
- un sous-menu dans Aide, intitulé "Sauvegarde incrémentée" ;
- un bouton dans une nouvelle barre d'outils intitulée comme ci-dessus.
Ne soyez pas indulgents sous prétexte que c'est mon premier. Y'a pas de raison. :wink:
Pièces jointes
incrSav-1.0.0.oxt
(10.45 Kio) Téléchargé 599 fois
(API-culteur et pêcheur de macros en mode loisirs occasionnels, mais toujours les pieds dans l'OO)
AOO 4.1.2 sous Linux Xubuntu Voyager 14.04 (x86_64)
Avatar de l’utilisateur
Papayes
Membre fOOndateur
Membre fOOndateur
Messages : 4154
Inscription : 07 déc. 2005 14:55
Localisation : Vic-Fezensac dans le Gers

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Papayes »

Bonjour Alain,

:bravo: :bravo: :bravo: :bravo:

félicitation , chapeau bas, et pour un essai veut un coup de maître !

l'icône est très bien choisie, seul le nom du dossier de sauvegarde me chagrine car il fait appel à l'anglais,
mais il ne manque que le u ... mais après réflexion, il ne faut pas en changer sauf si tu fais une version internationale.

On laisse un peu tester et tu la mets en Extension du forum.

Je te remercie pour tous ceux qui avec ton travail ne perdront plus le leur !

Jean-Yves
"Tout ce qui n'est pas donné est perdu"
jjk
HédOOniste
HédOOniste
Messages : 1696
Inscription : 27 oct. 2008 15:30

Re: [OXT] sauvegarde auto avec incrément du nom

Message par jjk »

papayes a écrit :Je te remercie pour tous ceux qui avec ton travail ne perdront plus le leur !
+1 avec papayes

Je suppose que "zx" devant "SaveIncr" c'est pour éviter un nom de dossier qui existerait déjà ? De toute façon c'est une constante qu'il est très facile de modifier.
OpenOffice 3.1.1 sous XP-SP2 et LibreOffice 3.5.0 sous Win 7
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 19:08
Localisation : dans le Périgord

Re: [OXT] sauvegarde auto avec incrément du nom

Message par gerard24 »

Bonjour,

Je viens de tester et c'est nickel. :bravo:

Juste une remarque.
Si le fichier sur lequel je travaille se nomme test.ods ou essai.odt (l'originalité des noms de fichier, c'est juste pour faire râler),
les sauvegardes successives sont test.ods_0.ods (puis _1 etc) ou essai.odt_0.odt
Cela ne perturbe en rien le bon fonctionnement de ces fichiers, mais ne serait-il pas possible de supprimer la première extension
pour avoir test_0.ods ?
Question de neophyte, est-ce faisable, ou trop compliqué ?

Merci pour ce travail.

Gérard
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
Avatar de l’utilisateur
Alain de La Chaume
HédOOniste
HédOOniste
Messages : 1527
Inscription : 28 sept. 2008 14:56
Localisation : ʇsǝnoo,ꞁ ɐ ʇuǝɯǝʇǝꞁdɯoↃ

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Alain de La Chaume »

Bonjour jjk
"zx" devant "SaveIncr" c'est :
1. Pour éviter un nom de dossier qui existerait déjà (gagné !) ;
2. Pour que le dossier soit placé à la fin de la liste des dossiers dans l'ordre alpha,
tout en laissant la possibilité d'en ajouter après (zy, zz).
Mais bon, quand j'ai fait ce machin, je n'ai pas envisagé qu'il servirait ailleurs que sur mon bureau...

Nouvelle édition :
Bonjour gerard24
Je viens juste de voir votre message. Pas le temps tout de suite, mais dès que possible...
Il se pourrait même que je regroupe les différentes remarques pour les traiter à mon retour de (petites) vacances.
(API-culteur et pêcheur de macros en mode loisirs occasionnels, mais toujours les pieds dans l'OO)
AOO 4.1.2 sous Linux Xubuntu Voyager 14.04 (x86_64)
Avatar de l’utilisateur
DLE
SuppOOrter
SuppOOrter
Messages : 1477
Inscription : 30 déc. 2007 19:56
Localisation : Lille

Re: [OXT] sauvegarde auto avec incrément du nom

Message par DLE »

Bonjour,

Un seul mot : superbe :bravo: :bravo: :bravo: :bravo:
MacOS Sonoma 14.4.1 (iMac-Intel) : AOO 4.1.15 , LibreOffice 7.6.5.2, Adoptium-temurinJDK_1.8.0_402 -
Windows 10 64 bits :
AOO 4.1.15, Libreoffice 7.1.8.1 - FireFox, Thunderbird, ORB 1.2.1
Avatar de l’utilisateur
Alain de La Chaume
HédOOniste
HédOOniste
Messages : 1527
Inscription : 28 sept. 2008 14:56
Localisation : ʇsǝnoo,ꞁ ɐ ʇuǝɯǝʇǝꞁdɯoↃ

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Alain de La Chaume »

Bonsoir à tous,

Bien vu, gerard24. Dans la construction du nom, ce n'était pas la bonne version.
J'ai dû en cours de route changer de bibliothèque, la Standard n'étant pas exportable pour générer l'OXT.
Et ensuite je me suis pris les pieds dans l'EDI.

J'en ai profité pour faire quelques modifications :
- Le nom du sous-dossier devient "zzSauveIncr"
(le manque de "u" pour faire court l'a fait passer pour un anglicisme).
- Dans le menu, c'est dans Outils ... Add-ons ... Sauvegarde incrémentée
(pour Add-ons, je n'ai pas choisi, c'est BasicAddonBuilder qui l'impose).
- J'ai un peu bricolé les icônes.
- Pas de changement pour la barre d'outils ("Sauvegarde incrémentée")
Voici donc en pièce jointe la version corrigée.
Pièces jointes
incrSav-1.0.1.oxt
(13.44 Kio) Téléchargé 633 fois
(API-culteur et pêcheur de macros en mode loisirs occasionnels, mais toujours les pieds dans l'OO)
AOO 4.1.2 sous Linux Xubuntu Voyager 14.04 (x86_64)
Avatar de l’utilisateur
Ravioli
GourOOu
GourOOu
Messages : 7610
Inscription : 18 oct. 2007 18:28

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Ravioli »

Bonjour Alain,

J' ai testé ce matin la nouvelle mouture .
pour Writer , pas de soucis.


Avec Writer, si j'enregistre sous un document existant du Bureau vers Documents par exemple,
le répertoire est créé mais l'incrémenation ne se fait plus.

Avec un autre module {calc}, le fichier n'est pas incrémenté.
Je continuerai demain les tests.
A suivre
AOO 4.1.1 LibO 4.4.5
Vista SP2, Win7 SP1, Win7 SP1 Pro, Win 8.1.1 Pro, Mac Intel OS X 10.10.5, Ubuntu 12.04 LTS 32 bits, OpenSuse 13.2, Debian 7
& LibO 4.0.6 pour Mac PPC 10.5.8
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25143
Inscription : 03 mars 2006 08:45
Localisation : 127.0.0.1
Contact :

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Dude »

Salut,
Ravioli a écrit :Avec un autre module {calc}, le fichier n'est pas incrémenté.
Ouaip, seul Writer est pris en compte :

Code : Tout sélectionner

PropFic(0).value="writer: Writer8"
Sauf si tu veux généraliser cela à d'autres modules...
Poser une question, c'est bien. Répondre aux autres, c'est encore mieux.
Améliorez AOO et votez pour les issues
jjk
HédOOniste
HédOOniste
Messages : 1696
Inscription : 27 oct. 2008 15:30

Re: [OXT] sauvegarde auto avec incrément du nom

Message par jjk »

Je ne comprends pas ???
Chez moi, sur la v1.0.1 ça marche avec Calc.
Et je n'ai pas trouvé la chaine "PropFic..."
OpenOffice 3.1.1 sous XP-SP2 et LibreOffice 3.5.0 sous Win 7
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 19:08
Localisation : dans le Périgord

Re: [OXT] sauvegarde auto avec incrément du nom

Message par gerard24 »

+1 jjk
Même constat.
Ravioli a écrit :Avec Writer, si j'enregistre sous un document existant du Bureau vers Documents par exemple,
le répertoire est créé mais l'incrémenation ne se fait plus.
Cela me semble normal, l'extension crée un sous-répertoire zzSauveIncr pour chaque répertoire.
Donc si tu changes un fichier de place ou que tu l'enregistre dans un autre répertoire, l'incrémentation repart de 0.

A+
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
Avatar de l’utilisateur
Ravioli
GourOOu
GourOOu
Messages : 7610
Inscription : 18 oct. 2007 18:28

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Ravioli »

Bonjours les testeurs,

Oui, je suis d'accord avec vous,
Sur un document .ods nouvellement crée et en liaison avec son répertoire de zzsauveInc, l'incrémentation s'effectue correctement.
L'observation de gérard est tout à fait logique pour nous...
Donc si tu changes un fichier de place ou que tu l'enregistre dans un autre répertoire, l'incrémentation repart de 0.
Il y a un hic, dans certains cas, l'incrément reste à 0... et ne repart pas. J'essaye de bien définir ces cas qui se sont présentés pendant me essais.


Je teste afin qu'Alain délimite exactement l'usage de l'extension dans son message de présentation,
afin d'éviter de trop nombreuses questions à son propos.
Mieux vaut prévenir que guérir, non ?

A+
Dernière modification par Ravioli le 07 sept. 2009 16:41, modifié 1 fois.
AOO 4.1.1 LibO 4.4.5
Vista SP2, Win7 SP1, Win7 SP1 Pro, Win 8.1.1 Pro, Mac Intel OS X 10.10.5, Ubuntu 12.04 LTS 32 bits, OpenSuse 13.2, Debian 7
& LibO 4.0.6 pour Mac PPC 10.5.8
Avatar de l’utilisateur
Alain de La Chaume
HédOOniste
HédOOniste
Messages : 1527
Inscription : 28 sept. 2008 14:56
Localisation : ʇsǝnoo,ꞁ ɐ ʇuǝɯǝʇǝꞁdɯoↃ

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Alain de La Chaume »

Bonjour à tous,
Ravioli a écrit :Avec Writer, si j'enregistre sous un document existant du Bureau vers Documents par exemple,
le répertoire est créé mais l'incrémenation ne se fait plus.

Avec un autre module {calc}, le fichier n'est pas incrémenté.
Du coup, j'ai quand même fait quelques tests (avec Writer et Calc seulement)
et je dois dire que mon système doit faire tout ce qu'il peut pour ne pas me contrarier :lol: ...
Car voici ce que j'obtiens en faisant les manip décrite ci-dessus :
(A l'attention des vilains modos : c'est pas du code, mais c'est pour les alignements)

Code : Tout sélectionner

LISTE DES FICHIERS MODIFIES DEPUIS LE 07/09/2009		
		
*** /home/alain/Bureau ***		
07/09/2009 16:20	.~lock.tstBuro.odt#	
07/09/2009 16:27	tstOxtCalc1.ods	
07/09/2009 16:16	tstBuro.odt	
	--> 3 fichiers / 9	
		
*** /home/alain/Bureau/zzSauveIncr ***		
07/09/2009 16:20	tstBuro_1.odt	
07/09/2009 16:29	tstOxtCalc1_4.ods	
07/09/2009 16:27	tstOxtCalc1_1.ods	
07/09/2009 16:29	tstOxtCalc1_3.ods	
07/09/2009 16:27	tstOxtCalc1_2.ods	
07/09/2009 16:20	tstBuro_0.odt	
07/09/2009 16:27	tstOxtCalc1_0.ods	
	--> 7 fichiers / 7	
		
*** /home/alain/Bureau/tstOXT ***		
07/09/2009 16:28	tstOxtCalc1.ods	
07/09/2009 16:17	tstBuro.odt	
	--> 2 fichiers / 2	
		
*** /home/alain/Bureau/tstOXT/zzSauveIncr ***		
07/09/2009 16:18	tstBuro_1.odt	
07/09/2009 16:28	tstOxtCalc1_1.ods	
07/09/2009 16:28	tstOxtCalc1_3.ods	
07/09/2009 16:28	tstOxtCalc1_2.ods	
07/09/2009 16:17	tstBuro_0.odt	
07/09/2009 16:18	tstBuro_2.odt	
07/09/2009 16:28	tstOxtCalc1_0.ods	
	--> 7 fichiers / 7	
De toute façon, je n'ai plus le temps d'aller plus loin aujourd'hui.
Je verrai la suite la semaine prochaine en rentrant de vacances.
(API-culteur et pêcheur de macros en mode loisirs occasionnels, mais toujours les pieds dans l'OO)
AOO 4.1.2 sous Linux Xubuntu Voyager 14.04 (x86_64)
Avatar de l’utilisateur
Ravioli
GourOOu
GourOOu
Messages : 7610
Inscription : 18 oct. 2007 18:28

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Ravioli »

Bonnes vacances Alain,

Voila, j'ai reproduit le problème.
1. Création d'un nouveau document Texte, Enregistrer sous dans Bureau par exemple
2. Utilisation de l'extension.
3. Modification du document,
4. Utilisation de l'extension : parfait
5. Sans fermer le document Writer, ouverture d'un nouveau document Calc, Enregistrer sous dans Bureau
6. Utilisation de l'extension : OK n°0
7. Modification du document Calc
8. Utilisation de l'extension : n°0
Même en fermant le Writer, ce document calc ne s'implémentera plus jamais...ni un autre !
A+
AOO 4.1.1 LibO 4.4.5
Vista SP2, Win7 SP1, Win7 SP1 Pro, Win 8.1.1 Pro, Mac Intel OS X 10.10.5, Ubuntu 12.04 LTS 32 bits, OpenSuse 13.2, Debian 7
& LibO 4.0.6 pour Mac PPC 10.5.8
Avatar de l’utilisateur
spYre
InconditiOOnnel
InconditiOOnnel
Messages : 888
Inscription : 29 oct. 2008 20:02
Localisation : Liège, Belgique

Re: [OXT] sauvegarde auto avec incrément du nom

Message par spYre »

Bonjour à tous,
Bonjour Ravioli,

J'ai exécuté pas à pas la manip, sans parvenir à reproduire le problème ni sous XP ni sous Jaunty...
Pour le moins curieux :!:

Sinon félicitations à tous pour ce beau travail collaboratif, à Alain surtout qui allie avec magie rapidité et rigueur.

Un peu de pub quand même pour Extension Compiler. S'il est beaucoup moins convivial que BasicAddonBuilder, il est aussi, et de loin, beaucoup mieux adapté à une maintenance sur le long terme.
LibreOffice 3.3.4 + Report Builder
Windows 7 / Windows XP sp3
Ubuntu 11.10 / LMDE
Avatar de l’utilisateur
Ravioli
GourOOu
GourOOu
Messages : 7610
Inscription : 18 oct. 2007 18:28

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Ravioli »

Bonjour,

Fonctionne parfaitement sous MacIntel où l'extension incrémente également à partir d'un ancien fichier.

Oui Spyre,
curieux, car ce matin sous Vista, après la procédure d'hier, l'extension sauvegarde uniquement avec 0 les textes, même après une réinstallation de l'extension.
Y aurait-il chose de pourri dans le royaume de mon ordi ?
je télécharge de nouveau 311 et réinstalle sur Vista.
Rien de changé, ce n'est pas OOo, donc je purge le profil et l'extension fonctionne de nouveau,
je ne reproduis plus avec ma procédure ni sur XP ni sur Vista.

Par contre, sous Vista et XP, chez moi, après purge du profil et suppression du fichier zzSauveIncr ( 7 passes)
elle refuse d'incrémenter un document déjà existant même si on l'enregistre sous un nouveau nom,
alors qu'elle reprend correctement l'incrémentation d'un document déjà pris en compte.

même si le contournement est aisé, ouverture d'un Nouveau document, Enregistrer sous puis Ctrl+A et Ctrl + C de l'existant et Ctrl +V sur le nouveau,
ce comportement diffère de Unix...


Merci pour l'essai SpYre.
A+
AOO 4.1.1 LibO 4.4.5
Vista SP2, Win7 SP1, Win7 SP1 Pro, Win 8.1.1 Pro, Mac Intel OS X 10.10.5, Ubuntu 12.04 LTS 32 bits, OpenSuse 13.2, Debian 7
& LibO 4.0.6 pour Mac PPC 10.5.8
Avatar de l’utilisateur
Alain de La Chaume
HédOOniste
HédOOniste
Messages : 1527
Inscription : 28 sept. 2008 14:56
Localisation : ʇsǝnoo,ꞁ ɐ ʇuǝɯǝʇǝꞁdɯoↃ

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Alain de La Chaume »

Bonjour à tous.

Pour tenter de cerner le ou les problèmes, j'ai créé une nouvelle version qui génère une trace des différentes étapes lors de l'exécution.

A l'attention de ceux qui prendraient ce sujet en cours de route, voici un petit topo sur ce projet d'extension de sauvegarde incrémentée :

Nom du fichier : incrSav-1.0.3.oxt - date : 17/09/2009
icon-save24c.png
icon-save24c.png (715 octets) Consulté 31466 fois
Pour quoi faire ?
Effectuer des sauvegardes, numérotées automatiquement, vers un sous-dossier.

Moyens d'exécution
− Accès par la barre d'outils "Sauvegarde incrémentée"
− Accès par le menu Outils ... Add-ons ... Sauvegarde incrémentée

Principe de fonctionnement
− S'il n'existe pas déjà, un sous-dossier est créé dans le répertoire contenant le document. Actuellement son nom est zzSauveIncr.
− Le document, pour avoir un nom et une adresse, doit avoir été déjà sauvegardé au moins une fois.
− A chaque exécution, un numéro de sauvegarde est attribué automatiquement et ajouté au nom du fichier sauvegardé.
− Un message avertit que la sauvegarde a été faite et donne son adresse complète.

La version 1.0.3 est identique à la version 1.0.1 mais elle est dotée d'un système de traçage automatique des informations utiles pour comprendre pourquoi, dans certains cas, "ça ne marche pas !"

Le traçage des informations se fait dans un document Calc créé automatiquement. Une boîte de dialogue propose d'enregistrer, ou pas, cette trace.

Cette trace n'étant utile qu'en cas de problèmes pour mieux les identifier, ceux désirant la neutraliser peuvent le faire ainsi :
Rechercher dans [Mes macros et boîtes de dialogue].incrSav au début du module aMain
la ligne de code :

Code : Tout sélectionner

public const bTRACER = true	' Si bTRACER est vrai, tracer infos
et remplacer true par false

C'est parce que je n'ai pas réussi à reproduire chez moi le problème soulevé par Ravioli que je propose à ceux qui en ont la possibilité de bien vouloir tester cette nouvelle version.
D'avance, merci.
Pièces jointes
incrSav-1.0.3.oxt
(13.16 Kio) Téléchargé 585 fois
(API-culteur et pêcheur de macros en mode loisirs occasionnels, mais toujours les pieds dans l'OO)
AOO 4.1.2 sous Linux Xubuntu Voyager 14.04 (x86_64)
Avatar de l’utilisateur
Ravioli
GourOOu
GourOOu
Messages : 7610
Inscription : 18 oct. 2007 18:28

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Ravioli »

Bonjour Alain,

De retour, je ne reproduis plus le problème sur Vista.
Il faut dire que j'en ai fait voir à cette version 3.1.1, d'où un nettoyage en profondeur, y compris du Registre pour repartir sur des bases saines.
Je garde sous le coude cette version avec son traçage.

Edit : Ce matin, avec Vista et sous XP, cela recommence,
après déplacement des fichiers et dossiers,
l'extension n'incrémente plus avec un nom de fichier comportant une espace !

mais re-fonctionne parfaitement si l'on remplace l'espace par un trait d'union - ou un tiret bas _.

par contre, cela fonctionne parfaitement sous Mac, espace ou sans espace dans le nom.

A+
AOO 4.1.1 LibO 4.4.5
Vista SP2, Win7 SP1, Win7 SP1 Pro, Win 8.1.1 Pro, Mac Intel OS X 10.10.5, Ubuntu 12.04 LTS 32 bits, OpenSuse 13.2, Debian 7
& LibO 4.0.6 pour Mac PPC 10.5.8
Jeff
GourOOu
GourOOu
Messages : 9608
Inscription : 18 sept. 2006 11:40
Localisation : France

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Jeff »

Bonjour,
Ravioli a écrit :l'extension n'incrémente plus avec un nom de fichier comportant une espace
Je reproduis avec la 3.1.1 sous XP.

J'ai d'abord installé la version 1.0.1 de l'extension ; avant de m'en servir, je me suis ravisé, l'ai supprimé, puis installation de la 1.0.3 pour le suivi.

Ayant reçu un MP de Papayes, je l'ai donc enregistré sous ce nom, puis apporté 3 modifs, chacune suivie d'une sauvegarde incrémentée, j'ai généré les 3 logs suivants :
Dans les 3 logs (identiques), il y a écrit :repDoc: "file:///C:/Documents%20and%20Settings/Jeff/Mes%20documents/"
repSauv: "file:///C:/Documents%20and%20Settings/Jeff/Mes%20documents/zzSauveIncr"

Chercher numéro dernière sauvegarde parmi :
"file:///C:/Documents%20and%20Settings/Jeff/Mes%20documents/zzSauveIncr/MP%20de%20Papayes*.odt"
-> ""

Numéro dernière sauvegarde + 1 = 0

URL de la nouvelle sauvegarde :
file:///C:/Documents%20and%20Settings/Jeff/Mes%20documents/zzSauveIncr/MP%20de%20Papayes_0.odt


(j'ai renommé les fichiers log, sinon il s'écrase -1log par jour- )
C'est la version 1.0.3 qui a créé le dossier de sauvegarde.
OOo (et writer) n'ont pas été fermé depuis la création du fichier, jusqu'à la fin des 3 sauvegardes.

Peut-être que l'espace récupéré en %20, ça sème le bazar ?

A + :wink:

EDIT : m'en voulez pas, j'ai mis les 3 logs avant de m'apercevoir que ce sont strictement les mêmes. :mrgreen:
Je précise que le fichier MP de Papayes_0.odt est bien présent dans C:\Documents and Settings\Jeff\Mes documents\zzSauveIncr
Pierre-Yves Samyn
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 11276
Inscription : 02 mai 2006 10:42

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Pierre-Yves Samyn »

Bonjour

Je reproduis également... mais plus simplement : il suffit que le nom de fichier comprenne un espace.

Je n'ai pas le temps de creuser mais il semble que le problème vienne de la function Dir mise en œuvre dans la fonction acGetIncrement.

Exemple ne fonctionnant pas (ne pas se formaliser pour le nom de dossier, il s'agit de test :lol: ) :

Code : Tout sélectionner

a = convertToUrl("C:\Documents and Settings\Pierre-Yves\Mes documents\poubelle\forum\Extraire2\forum\zzSauveIncr\a b é c_0*.odt")
c = dir(a)
Exemple qui fonctionne :

Code : Tout sélectionner

a = "C:\Documents and Settings\Pierre-Yves\Mes documents\poubelle\forum\Extraire2\forum\zzSauveIncr\a b é c_0*.odt"
c = dir(a)
Autrement dit, cela ne fonctionne pas quand la chaîne est un Url comprenant espaces et *

Je n'ai pas trouvé d'issue spécifique hormis ceci assez savoureux :
Issue ancienne a écrit :The Basic Dir command supports wildcards only in a limited way since file operations are based on the UCB framework.
Par ailleurs :

Code : Tout sélectionner

a = convertToUrl("C:\Documents and Settings\Pierre-Yves\Mes documents\poubelle\forum\Extraire2\forum\zzSauveIncr\a b é c_0*.odt")
z= convertFromUrl(a)
print z
Contrairement à ce que l'on pourrait attendre, le print z affiche... un url...
Là encore je n'ai pas trouvé d'Issue...

Encore une fois je n'ai pas creusé mais plusieurs pistes pour contourner...
  • Ne pas passer d'argument sous forme d'url :)
  • Supprimer systématiquement les espaces lors de la sauvegarde incrémentée, par exemple en utilisant quelque chose comme (après chargement de la librairie Tools) :

    Code : Tout sélectionner

    If Not GlobalScope.BasicLibraries.isLibraryLoaded("Tools") then
       GlobalScope.BasicLibraries.LoadLibrary("Tools")
    End If
    
    DeleteStr(nomfic, " ")
  • Remplacer l'espace par un ? avant le dir (mais risque de trouver des noms différents sur un seul caractère...)

    Code : Tout sélectionner

    b = ReplaceString(nomfic, "?" , " ")
    
Avatar de l’utilisateur
Alain de La Chaume
HédOOniste
HédOOniste
Messages : 1527
Inscription : 28 sept. 2008 14:56
Localisation : ʇsǝnoo,ꞁ ɐ ʇuǝɯǝʇǝꞁdɯoↃ

Re: [OXT] sauvegarde auto avec incrément du nom

Message par Alain de La Chaume »

Bonsoir à tous.
Effectivement, je ne risquais pas de reproduire le problème. Deux bonnes raisons à cela :
1. Je ne mets jamais d'espaces dans les noms de fichiers (un brin vieux-jeu l'Alain).
2. Je n'utilise pas XP ni vice-tas (ou peut-être vicetas, depuis la réforme ?) que je ne possède pas.
Je vais essayer de remédier au problème (pas ce soir :wink: ) mais compte tenu du point 2, je compte sur vous pour les essais.

Je viens d'ajouter cet avertissement dans la section Extensions :
Attention ! Dans cette version 1.0.1 du 6 septembre 2009
un problème a été constaté, sous Windows, quand le nom du fichier comporte une ou des espaces.
(API-culteur et pêcheur de macros en mode loisirs occasionnels, mais toujours les pieds dans l'OO)
AOO 4.1.2 sous Linux Xubuntu Voyager 14.04 (x86_64)
Verrouillé