Re: [prog] Macro Phyton
Bonjour Est ce normal ? N'y a t'il que Basic sous Windows ? Editable oui, comme sous Linux. il devrait y avoir, en version 2.x, du java avec beanshell et du javascript Mais, je confirme, il n'y a pas d'EDI pour python, meme si c'est évoqué quelquefois celà reste un travail à faire Neanmoins, en utoilisant un editeur externe pointant au bon endroit, ca marche Python est vraiment un langage tre sinterressant et son implementation pyUNO est tres puissante puique allie la simplicite de OOoBasic avec les aspects OOP Laurent -- Laurent Godard <[EMAIL PROTECTED]> - Ingénierie OpenOffice.org Indesko >> http://www.indesko.com Nuxeo CPS >> http://www.nuxeo.com - http://www.cps-project.org Livre "Programmation OpenOffice.org", Eyrolles 2004 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [prog] Déclaration/Suppression d'une SDD au format CSV en dynamique
Bonjour Bruno Merci pour ce partage Je te propose de mettre cet exemple sous la forme de code snippet http://codesnippets.services.openoffice.org/Database/oobasic.xml Paolo e ecrit un addon te permettant de preparer le terrain http://www.paolo-mantovani.org/downloads/SnippetCreator/ Il te suffit d'indiquer ta macro et un fichier sera alors créé il suffira ensuite d'envoyer ce fichier sur [EMAIL PROTECTED] Neanmoins le code et les commentaires devraient etre en anglais Je peux t'aider sur certaines etapes si tu le désires, n'hesites pas mais tu va voir, c'est facile Laurent -- Laurent Godard <[EMAIL PROTECTED]> - Ingénierie OpenOffice.org Indesko >> http://www.indesko.com Nuxeo CPS >> http://www.nuxeo.com - http://www.cps-project.org Livre "Programmation OpenOffice.org", Eyrolles 2004 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [prog] Ecrire dans un fichier
Bonjour Didier Dorange-Pattoret Message du 2006-04-12 18:03: 1 ) Peut-on écrire à l'intérieur d'un fichier texte, en dehors de l'écriture d'une bibliothèque, d'un module ou d'une macro ? Par exemple y écrire un fichier contenant des données ou des données. Si tu veux mettre un sous-document à l'intérieur du zip qui constitue un document OpenOffice il faudrait qu'il soit décrit dans le sous-document manifest.xml. Sinon je pense qu'il disparaîtra à la première sauvegarde. L'autre problème est de savoir lire ce sous-document par programmation. Peut-être qu'on peut y arriver en 2.0, avec les méthodes du document .getDocumentSubStoragesNames() et .getDocumentSubStorage(). Pour modifier le sous-document, je ne sais pas. 2) Comment écrire un script python dans un document ? J'ai un module de scripts python dans mon dossier user. J'ai créé un fichier nommé essai.odt, aussitot renommé en essai.zip J'ai ouvert le zip et ajouté dedans le dossier contenant mon module de scripts : /user/Scripts/python/module1 J'ai renommé essai.zip en essai.odt ET : les scripts python sont reconnus dans le fichier essai.odt et actifs. Je crois que c'est incomplet, il faut modifier le manifest. Voir http://udk.openoffice.org/python/scriptingframework/index.html Et si le script fait appel à un dialogue c'est encore plus complexe, voir la même page. Le support actuel de Python est minimal (faute de développeurs). Bernard - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[prog] Déclaration/Suppression d'une SDD au format CSV en dynamique
Title: Déclaration/Suppression d'une SDD au format CSV en dynamique Bonjour, J'ai été confronté au problème suivant, utiliser des données issues d'un fichier au format CSV, ce fichier étant modifié par une application externe entre chaque utilisation. La première solution consistait à fermer OpenOffice entre chaque traitement pour autoriser la réécriture du fichier CSV, solution contraignante pour l'utilisateur. La macro ci dessous permet de déclarer une source de données au format CSV dans OOo puis de la supprimer en dynamique. L'attente liée à la fermeture puis à l'ouverture d'OOo est supprimée. Sub Creation_Base Dim Chemin as string, NomSource as String, ODB_URL as String Dim oNewSource as Object, oDbContext as Object Dim flatProp(7) as new com.sun.star.beans.PropertyValue Dim props(0) as new com.sun.star.beans.PropertyValue Dim Context as Object Dim Reponse as Variant Chemin = "c:\fpm\trt2\" NomSource = "TRT2" oDBContext=createUnoService("com.sun.star.sdb.DatabaseContext") > ' Création du fichier ODB ODB_URL = ConvertToURL("c:\fpm\trt2\trt34.odb") props(0).Name = "Overwrite" props(0).value = True oNewSource.databaseDocument.StoreAsURL(ODB_URL, props()) ' Définition des paramètres du filtre flatProp(0).Name = "Extension" flatProp(0).Value = "dat" flatProp(1).Name = "CharSet" flatProp(1).Value = 0 flatProp(2).Name = "FixedLenght" flatProp(2).Value = True flatProp(3).Name = "HeaderLine" flatProp(3).Value = True flatProp(4).Name = "FieldDelimiter" flatProp(4).Value = chr(9) flatProp(5).Name = "StringDelimiter" flatProp(5).Value = "" flatProp(6).Name = "Decimaldelimiter" flatProp(6).Value = "," flatProp(7).Name = "ThousandDelimiter" flatProp(7).Value = "." oNewSource.Info = flatProp() oNewSource.databaseDocument.store() oNewSource.databaseDocument.URL(ODB_URL, props()) ' Création de la source de données Reponse = oDbContext.hasByName(NomSource) If Reponse then MsgBox "La source de données " & NomSource & " existe déjà, ajout impossible" Else oNewSource.URL = "" & Chemin oNewSource.databaseDocument.store() oDbContext.RegisterObject(NomSource, oNewSource) CreationDataSource = oNewSource End If ' Suppression de la base de données NomSource = "TRT2" If oDbContext.hasByName(NomSource) then oDbContext.revokeObject(NomSource) ' Fermeture du document odb oNewSource.databaseDocument.close(True) End If End Sub La macro ci dessous qui fonctionne "à vide" et plante systématiquement dés que l'on utilise une requête ou que l'on ouvre un document utilisant la source de données. Pour remédier au problème il suffit de fermer la requête et/ou le fichier: Pour un Rowset : oRowset.close oRowSet.dispose Pour une requête SQl : ' Fermeture de la source de données TRT ConnexionTRT.close ConnexionTRT.dispose Et enfin fermeture du document utilisé pour le publipostage. oDocument.close(True) MABILLE Bruno SZSIC METZ [EMAIL PROTECTED]
Re: [prog] Macro Phyton
Bonsoir, Conteur de Licorne a écrit : Bonjour, Je suis sous Windows et OOo 2.0.2. Je voudrai faire des macro en Python dans l'interface de OOo. Comment puis je activer Python qui reste inaccessible. Je n'arrive pas à ouvrir le code des modules présent par défaut. A ma connaissance, les scripts python ne sont pas édtable avec l'éditeur de OOo. Ils se trrouvent ici: /user/Scripts/python et doivent être édités avec un autre EDI. Est ce normal ? N'y a t'il que Basic sous Windows ? Editable oui, comme sous Linux. Faut il télécharger un addon ? Je ne pense pas. -- Didier Dorange-Pattoret http://www.dmaths.org http://sesamath.net S'inscrire à la liste de diffusion de dmaths: [EMAIL PROTECTED] Ses archives: http://listes.dmaths.org/wws/arc/users Les Forums: http://www.dmaths.org/modules.php?name=Forums Mailing List in english: http://www.dmaths.org/modules.php?name=Content&pa=showpage&pid=9 Le livre de référence pour OpenOffice.org2 : http://www.amazon.fr/exec/obidos/ASIN/2212116381/dmaths-21 Programmation OpenOffice.org2 : http://www.amazon.fr/exec/obidos/ASIN/2212117639/dmaths-21 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[prog] Macro Phyton
Bonjour, Je viens de rejoindre la liste et déjà une question me brûle. Je suis sous Windows et OOo 2.0.2. Je voudrai faire des macro en Python dans l'interface de OOo. Comment puis je activer Python qui reste inaccessible. Je n'arrive pas à ouvrir le code des modules présent par défaut. Est ce normal ? N'y a t'il que Basic sous Windows ? Faut il télécharger un addon ? Merci - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [prog] Ecrire dans un fichier
Rebonjour, Didier Dorange-Pattoret a écrit : Bonjour à tous, 1 ) Peut-on écrire à l'intérieur d'un fichier texte, en dehors de l'écriture d'une bibliothèque, d'un module ou d'une macro ? Par exemple y écrire un fichier contenant des données ou des données. 2) Comment écrire un script python dans un document ? Je me réponds à moi-même. Cela fait avancer. Voila ce que j'ai fait. J'ai un module de scripts python dans mon dossier user. J'ai créé un fichier nommé essai.odt, aussitot renommé en essai.zip J'ai ouvert le zip et ajouté dedans le dossier contenant mon module de scripts : /user/Scripts/python/module1 J'ai renommé essai.zip en essai.odt ET : les scripts python sont reconnus dans le fichier essai.odt et actifs. Cela peut sans doute se programmer. Le pb : cela suppose que le fichier est fermé, renommé, puis rerenommé... Il y a peut être plus simple ? Merci pour vos réponses. -- Didier Dorange-Pattoret http://www.dmaths.org http://sesamath.net S'inscrire à la liste de diffusion de dmaths: [EMAIL PROTECTED] Ses archives: http://listes.dmaths.org/wws/arc/users Les Forums: http://www.dmaths.org/modules.php?name=Forums Mailing List in english: http://www.dmaths.org/modules.php?name=Content&pa=showpage&pid=9 Le livre de référence pour OpenOffice.org2 : http://www.amazon.fr/exec/obidos/ASIN/2212116381/dmaths-21 Programmation OpenOffice.org2 : http://www.amazon.fr/exec/obidos/ASIN/2212117639/dmaths-21 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [prog] PB mise à jour de base de donnée BASE
Bonjour BOTTIN Laurence - DGMT/SG/AG2 Message du 2006-04-12 16:51: Bonjour, Je n'arrive pas à résoudre un problème dans la mise à jour de ma base de donnée à partir d'un tableau : Les "update" et les "insert into" semblent fonctionner tant que OOo est ouvert. Si j'ouvre la base de donnée après que la macro MajDonnees ait fonctionnée, elle a bien pris les modifications. Si je ferme complètement OOo, alors je retrouve la base de données dans son état initial. Vu que tu utilises le moteur interne HSQLDB, la base de données est dans le document odb. Essaie de sauver ce document avant de terminer. monDocBase = oDataSource.DatabaseDocument monDocBase.store Si ça marche, dis-le nous. Base est vraiment spécial... Bernard - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [prog] Comment supprimer une valeur dans la base de registre?
Bernard Marcelly a écrit : Bonjour pac Message du 2006-04-12 15:14: Je dois être fort bête car je n'ai pas réussi à trouver comment regarder la bibli avec l'EDI. L'EDI est bien OpenOffice.org Basic ? Puisque tu as l'ed.1 du livre, voir le chapitre 3, en particulier la figure 3-2 ;) Bernard Salut Bernard, grâce à toi, je viens enfin de comprendre comment ouvrir les fichiers du type API.xba et aussi que dans la liste des macros, dans Macros OpenOffice.org, il y avait tout plein de macros déjà faites et réutilisables. :-[ Sinon, pour revenir à la suppression d'une valeur, ça n'y était quand même pas dedans, alors je m'en veux pas trop de ne pas l'avoir trouvé avant. :-P Merci, ++. Pascal. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [prog] Ecrire dans un fichier
Bonjour, Matmeca a écrit : Didier Dorange-Pattoret a tapote avec ces petits doigts boudines pour exprimer des choses tres interessantes dont voici un extrait le 12.04.2006 13:49: Je goute peu à ce type d'humour ... :-\ Bonjour à tous, 1 ) Peut-on écrire à l'intérieur d'un fichier texte, en dehors de l'écriture d'une bibliothèque, d'un module ou d'une macro ? Par exemple y écrire un fichier contenant des données ou des données. J'ai écris à l'intérieur, donc de façon "invivible pour l'utilisateur ( pas sur la page de traitement de texte) :-) 2) Comment écrire un script python dans un document ? Facile, dans oowriter, il suffit de faire nouveau, tu écris, et tu sauves. -- Didier Dorange-Pattoret http://www.dmaths.org http://sesamath.net S'inscrire à la liste de diffusion de dmaths: [EMAIL PROTECTED] Ses archives: http://listes.dmaths.org/wws/arc/users Les Forums: http://www.dmaths.org/modules.php?name=Forums Mailing List in english: http://www.dmaths.org/modules.php?name=Content&pa=showpage&pid=9 Le livre de référence pour OpenOffice.org2 : http://www.amazon.fr/exec/obidos/ASIN/2212116381/dmaths-21 Programmation OpenOffice.org2 : http://www.amazon.fr/exec/obidos/ASIN/2212117639/dmaths-21
Re: [prog] Comment supprimer une valeur dans la base de registre?
Bonjour pac Message du 2006-04-12 15:14: Je dois être fort bête car je n'ai pas réussi à trouver comment regarder la bibli avec l'EDI. L'EDI est bien OpenOffice.org Basic ? Puisque tu as l'ed.1 du livre, voir le chapitre 3, en particulier la figure 3-2 ;) Bernard - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: [prog] PB mise à jour de base de do nnée BASE
En mode saisie, est-ce que les modifications sont bien prises en compte, même si Ooo est fermé puis réouvert ? Jean-Claude - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [prog] PB mise à jour de base de donnée BASE
Bonjour laurence Je n'arrive pas à résoudre un problème dans la mise à jour de ma base de donnée à partir d'un tableau : Les "update" et les "insert into" semblent fonctionner tant que OOo est ouvert. Si j'ouvre la base de donnée après que la macro MajDonnees ait fonctionnée, elle a bien pris les modifications. Si je ferme complètement OOo, alors je retrouve la base de données dans son état initial. ca ressemble fortement a un probleme de commit, rollback utilises tu des transactions ? Laurent -- Laurent Godard <[EMAIL PROTECTED]> - Ingénierie OpenOffice.org Indesko >> http://www.indesko.com Nuxeo CPS >> http://www.nuxeo.com - http://www.cps-project.org Livre "Programmation OpenOffice.org", Eyrolles 2004 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [prog] Ecrire dans un fichier
Didier Dorange-Pattoret a tapote avec ces petits doigts boudines pour exprimer des choses tres interessantes dont voici un extrait le 12.04.2006 13:49: > Bonjour à tous, > > 1 ) Peut-on écrire à l'intérieur d'un fichier texte, en dehors de > l'écriture d'une bibliothèque, d'un module ou d'une macro ? > Par exemple y écrire un fichier contenant des données ou des données. > > 2) Comment écrire un script python dans un document ? Facile, dans oowriter, il suffit de faire nouveau, tu écris, et tu sauves. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[prog] PB mise à jour de base de donnée BASE
Bonjour, Je n'arrive pas à résoudre un problème dans la mise à jour de ma base de donnée à partir d'un tableau : Les "update" et les "insert into" semblent fonctionner tant que OOo est ouvert. Si j'ouvre la base de donnée après que la macro MajDonnees ait fonctionnée, elle a bien pris les modifications. Si je ferme complètement OOo, alors je retrouve la base de données dans son état initial. tailleinitabSignataires est une variable globale tabSignataires est initialisé par une boîte de dialogue Voici le code : ' Sub ConnecterSource() Dim oDBSource As String, login As String, password As String, dbURL As String Dim oDataSource As Object, oDBContext As Object dim mondocbase as object dbURL=ConvertToUrl("c:\modeles\dgmt\courrier.odb") If NOT FileExists(dbURL) Then Msgbox "Problème de disponibilité de la base de données..." & chr(13) & "Alerte!!!" End If REM Use the DatabaseContext to get a reference to the database. oDBContext = CreateUnoService("com.sun.star.sdb.DatabaseContext") oDataSource = oDBContext.getByName(dbURL) 'Les paramètres de connexion login = "" password = "" maConnexion = oDataSource.getConnection(login, password) 'xray maconnexion if IsNull(maConnexion) then MsgBox("Connexion impossible", 16) Stop end if End Sub '== Sub DeconnecterSource() maConnexion.close maConnexion.dispose End Sub '= Sub majDonnees() On Error GoTo Erreurs dim maRequete As Object, resuQuery As Object dim mesRows as long, monRow as long dim mesColonnes as long, maColonne as long dim nbColonnes as long, nbre dim instrSQL As String, monSignet As Variant dim i as integer dim monType as string ConnecterSource maRequete = maConnexion.createStatement() maRequete.ResultSetConcurrency=1008 'Mise à jour des signataires for i = 1 to ubound(tabSignataires(),1) if i <= tailleinitabSignataires then instrSQL="UPDATE " & """signataires""" instrSQL=instrSQL & " SET " instrSQL=instrSQL & """civilite""" & " = '" & tabSignataires (i, 1 ) & "', " instrSQL=instrSQL & """nom""" & " = '" & tabSignataires (i, 2 ) & "', " instrSQL=instrSQL & """prenom""" & " = '" & tabSignataires (i, 3 ) & "', " instrSQL=instrSQL & """service""" & " = '" & tabSignataires (i, 4 ) & "', " instrSQL=instrSQL & """telephone""" & " = '" & tabSignataires (i, 5 ) & "', " instrSQL=instrSQL & """telecopie""" & " = '" & tabSignataires (i, 6 ) & "', " instrSQL=instrSQL & """email""" & " = '" & tabSignataires (i, 7 ) & "', " instrSQL=instrSQL & """grade""" & " = '" & tabSignataires (i, 8 ) & "', " instrSQL=instrSQL & """fonction""" & " = '" & tabSignataires (i, 9 ) & "' WHERE " & """ID_signataires""" & " =" & tabSignataires (i, 0 ) else if tabSignataires (i, 0 )<>"" or _ tabSignataires (i, 1 )<>"" or _ tabSignataires (i, 2 )<>"" or _ tabSignataires (i, 3 )<>"" or _ tabSignataires (i, 4 )<>"" or _ tabSignataires (i, 5 )<>"" or _ tabSignataires (i, 6 )<>"" or _ tabSignataires (i, 7 )<>"" or _ tabSignataires (i, 8 )<>"" or _ tabSignataires (i, 9 )<>"" then instrSQL="INSERT INTO " & """signataires""" & "( " instrSQL=instrSQL & """civilite""" & ", " instrSQL=instrSQL & """nom""" & ", " instrSQL=instrSQL & """prenom""" & ", " instrSQL=instrSQL & """service""" & ", " instrSQL=instrSQL & """telephone""" & ", " instrSQL=instrSQL & """telecopie""" & ", " instrSQL=instrSQL & """email""" & ", " instrSQL=instrSQL & """grade""" & ", " instrSQL=instrSQL & """fonction""" & ") " instrSQL=instrSQL & " VALUES ( "
Re: [prog] Comment supprimer une valeur dans la base de registre?
Bernard Marcelly a écrit : Curieux que tu n'aies pas avancé sur le sujet. Si tu relis le texte présentant l'exemple, tu peux lire : "utilise des fonctions situées dans la bibliothèque ImportWizard de soffice". L'étape suivante est de regarder cette bibli avec l'EDI. Tu y trouves OpenRegKey, et tu cherches à comprendre comment ça marche. Tu verras qu'elle utilise des routines de DLL MS-Windows permettant de lire les clés. Sans doute existe-t-il d'autres routines pour écrire, voir l'API de MS-Windows. Quant à XRegistryKey, rien à voir. Ce sont les clés de configuration d'OpenOffice, stockées dans /share/config et user/config. Bernard Je dois être fort bête car je n'ai pas réussi à trouver comment regarder la bibli avec l'EDI. L'EDI est bien OpenOffice.org Basic ? En faisant une recherche dans les fichiers du SDK, j'ai trouvé de l'aide mais je n'ai pas réussi à l'utiliser pour ce que je voulais faire. Finalement, je n'utilise pas ImportWizard, mais un exemple trouvé sur le net fait en VBA que j'ai migré en OOoBasic, utilisant les API Windows. Voici le code si ça peut aider des personnes : Const HKEY_CURRENT_USER = &H8001 Const KEY_ALL_ACCESS = &H3F Dim lHKey As Long RegOpenKeyEx( HKEY_CURRENT_USER, "Software\MonAppli\MaCle\", 0, KEY_ALL_ACCESS, lHKey ) RegDeleteValue( lHKey, "ValeurName" ) RegCloseKey lHKey Cordialement, pac. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[prog] Ecrire dans un fichier
Bonjour à tous, 1 ) Peut-on écrire à l'intérieur d'un fichier texte, en dehors de l'écriture d'une bibliothèque, d'un module ou d'une macro ? Par exemple y écrire un fichier contenant des données ou des données. 2) Comment écrire un script python dans un document ? Merci pour vos réponses. -- Didier Dorange-Pattoret http://www.dmaths.org http://sesamath.net S'inscrire à la liste de diffusion de dmaths: [EMAIL PROTECTED] Ses archives: http://listes.dmaths.org/wws/arc/users Les Forums: http://www.dmaths.org/modules.php?name=Forums Mailing List in english: http://www.dmaths.org/modules.php?name=Content&pa=showpage&pid=9 Le livre de référence pour OpenOffice.org2 : http://www.amazon.fr/exec/obidos/ASIN/2212116381/dmaths-21 Programmation OpenOffice.org2 : http://www.amazon.fr/exec/obidos/ASIN/2212117639/dmaths-21 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [prog] Entete et pieds de page
Re J’ai l’impression que mon problème réside dans les curseurs sinon je ne vois pas pourquoi il existe les fonctions … /FooterTextRight et FooterTextleft/ c'est pour les pages de droites et de gauches si les Footer sont differents et non, la gauche et droite de la page Laurent -- Laurent Godard <[EMAIL PROTECTED]> - Ingénierie OpenOffice.org Indesko >> http://www.indesko.com Nuxeo CPS >> http://www.nuxeo.com - http://www.cps-project.org Livre "Programmation OpenOffice.org", Eyrolles 2004 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: [prog] Entete et pieds de page
Mon problème réside justement aux longueurs de chaines … l’ensemble des trois parties ne tiens pas dans la majorité des cas sur une ligne … Puis cela pose un problème de mise en forme du document ! Si la chaine est trop courte la partie droite se retrouvera au milieu du document et non collée a droite !! Je suis entrain également de chercher pour insérer des champs prédéfinis tels que les N° de page / Nb Pages dates …. J’ai l’impression que mon problème réside dans les curseurs sinon je ne vois pas pourquoi il existe les fonctions … FooterTextRight et FooterTextleft Merci pour votre aide ! De : [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Envoyé : mercredi 12 avril 2006 10:18 À : prog@fr.openoffice.org Objet : RE: [prog] Entete et pieds de page Bonjour, D'après ce que j'ai vu dans un entête et un pied de page, je pense que la solution consiste à utiliser les tabulations. Celle-ci sont d'ailleurs pré-définies lorsque l'on insère un entête ou un pied de page (il suffit de regarder dans la règle pour les voir). Pour appliquer cela à ton besoin, tu devrais créer une seule chaîne de texte et séparer simplement chaque partie (gauche, centre et droite) par une tabulation (c'est-à-dire un \t ). Cela ne marchera que si les chaînes ne sont pas trop longues et ne viennent pas empiêter au delà de chaque partie (comme pour toute tabulation). Cordialement, Emmanuel De : Cezame Concept [mailto:[EMAIL PROTECTED] Bonjour ... Tout d'abord merci pour tes informations ... J'ai appliqué les infos trouvées sur les liens que tu m'a envoyé ... J'ai progressé puisque sous oOWriter j'arrive a créer un pied de page. Cependant je n'arrive pas a gérer les parties du pied de page a savoir droite gauche et centre ... comme je pourrais la faire sous Office ... Ci-dessous le code que j'utilise ... Je pense qu'il s'agit d'un problème de curseur mais je ne trouve pas la solution : Sub InsererUnPiedDePage(ByVal sTexteCentre As String, ByVal sTexteDroite As String, ByVal sTexteGauche As String) Dim monTexte As Object, monCurseur As Object Dim TexteCentre As Object, CurseurCentre As Object Dim TexteDroite As Object, CurseurDroite As Object Dim TexteGauche As Object, CurseurGauche As Object Dim nomStyleMaPage As String, StyleMaPage As Object Dim lesStylesPage As Object monTexte = oDocument.Text monCurseur = monTexte.createTextCursor ' récupérer le nom du style de page en cours nomStyleMaPage = monCurseur.PageStyleName 'print "Cette page est du style : " & nomStyleMaPage ' récupérer la collection de styles de pages lesStylesPage = oDocument.StyleFamilies.getByName("PageStyles") ' récupérer le style de la page en cours StyleMaPage = lesStylesPage.getByName(nomStyleMaPage) With StyleMaPage .FooterIsOn = True ' insérer un pied de page .FooterBodyDistance = 1000 ' 10 mm .FooterHeight = 2500 ' 25mm TexteCentre = .FooterText ' zone de texte centre du pied de page TexteDroite = .FooterTextRight ' zone de texte droite du pied de page TexteGauche = .FooterTextLeft ' zone de texte gauche du pied de page End With CurseurCentre = TexteCentre.createTextCursor ' curseur centre dans le pied de page CurseurDroite = TexteCentre.createTextCursor ' curseur centre dans le pied de page CurseurGauche = TexteCentre.createTextCursor ' curseur centre dans le pied de page ' écrire un texte dans le pied de page TexteCentre.insertString(CurseurCentre, sTexteCentre, False) TexteDroite.insertString(CurseurDroite, sTexteCentre, False) TexteGauche.insertString(CurseurGauche, sTexteCentre, False) End Sub Sous oOCalc par contre lorsque j'utilise cette m^^eme fonction aucun message d'erreur par contre aucune action non plus ? Merci d'avance pour votre aide ... PS : Je pense qu'enfin mon patron va acheter le fameux guide de programmation !!! -Message d'origine- De : Laurent Godard [mailto:[EMAIL PROTECTED] Envoyé : mardi 11 avril 2006 16:04 À : prog@fr.openoffice.org Objet : Re: [prog] Netiquette Bonjour Cezame Concept Cezame, c'est ton prenom ? Je vais parler pour moi : Et oui, il se trouve que ton attitude peut etre a l'origine du manque d'ardeur a te repondre. Dire bonjour au moins ... Mettre la pression dans les tittre de mail URGENT et autres qualificatifs temporels me rappel egalement que j'ai aussi de choses urgentes à faire Tu es sous pression, ca peut s'excuser ... une fois Mais le probleme est que l'arrogance recurrente ne rentre plus dans cette circonstance attenuante Donc oui, une communaute est là pour l'entraide mais il faut considerer cette aide donnée com
RE: [prog] Netiquette
Au vue de la doc je pensais que l'on pouvait séparer les parties droites centre et gauche non ? Cela est très pratique pour éviter les sauts de lignes intempestifs si la chaine est trop longue pour tenir sur une seule ligne ! A quoi servent donc les fonctions FooterTextLeft et FooterTextRight? Sous oOCalc j'ai vu qu'il est possible de gérer les trois parties mais je ne trouve pas comment y accéder par programmation ... Mon patron a fini par commander le fameux manuel de programmation !!! Je te retransmets mon code en texte brut : Sub InsererUnPiedDePage(ByVal sTexteCentre As String, ByVal sTexteDroite As String, ByVal sTexteGauche As String) Dim monTexte As Object, monCurseur As Object Dim TexteCentre As Object, CurseurCentre As Object Dim TexteDroite As Object, CurseurDroite As Object Dim TexteGauche As Object, CurseurGauche As Object Dim nomStyleMaPage As String, StyleMaPage As Object Dim lesStylesPage As Object monTexte = oDocument.Text monCurseur = monTexte.createTextCursor ' récupérer le nom du style de page en cours nomStyleMaPage = monCurseur.PageStyleName 'print "Cette page est du style : " & nomStyleMaPage ' récupérer la collection de styles de pages lesStylesPage = oDocument.StyleFamilies.getByName("PageStyles") ' récupérer le style de la page en cours StyleMaPage = lesStylesPage.getByName(nomStyleMaPage) With StyleMaPage .FooterIsOn = True ' insérer un pied de page .FooterBodyDistance = 1000 ' 10 mm .FooterHeight = 2500 ' 25mm TexteCentre = .FooterText ' zone de texte centre du pied de page TexteDroite = .FooterTextRight ' zone de texte droite du pied de page TexteGauche = .FooterTextLeft ' zone de texte gauche du pied de page End With CurseurCentre = TexteCentre.createTextCursor ' curseur centre dans le pied de page CurseurDroite = TexteCentre.createTextCursor ' curseur centre dans le pied de page CurseurGauche = TexteCentre.createTextCursor ' curseur centre dans le pied de page ' écrire un texte dans le pied de page TexteCentre.insertString(CurseurCentre, sTexteCentre, False) TexteDroite.insertString(CurseurDroite, sTexteCentre, False) TexteGauche.insertString(CurseurGauche, sTexteCentre, False) End Sub Merci pour votre aide ! -Message d'origine- De : Laurent Godard [mailto:[EMAIL PROTECTED] Envoyé : mercredi 12 avril 2006 11:09 À : prog@fr.openoffice.org Objet : Re: [prog] Netiquette Bonjoru > J'ai progressé puisque sous oOWriter j'arrive a créer un pied de page. > Cependant je n'arrive pas a gérer les parties du pied de page a savoir > droite gauche et centre ... comme je pourrais la faire sous Office ... > voir les tabulations proposéees dans un autre mail > > > /Sub InsererUnPiedDePage(ByVal sTexteCentre As String, ByVal > sTexteDroite As String, ByVal sTexteGauche As String)/ > essaye de ne pas poster en HTML ton code est illisible chez moi car apparait en gris pale probablement du au / encadrant chaque ligne > Sous oOCalc par contre lorsque jutilise cette m^^eme fonction aucun > message derreur par contre aucune action non plus ? > je ne pense pas que calc utilise les meme fonction il faut surement passer par les zones d'impression (print areas a confirmer) Laurent -- Laurent Godard <[EMAIL PROTECTED]> - Ingénierie OpenOffice.org Indesko >> http://www.indesko.com Nuxeo CPS >> http://www.nuxeo.com - http://www.cps-project.org Livre "Programmation OpenOffice.org", Eyrolles 2004 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --- Wanadoo vous informe que cet e-mail a ete controle par l'anti-virus mail. Aucun virus connu a ce jour par nos services n'a ete detecte. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [prog] Netiquette
Bonjoru J'ai progressé puisque sous oOWriter j'arrive a créer un pied de page. Cependant je n'arrive pas a gérer les parties du pied de page a savoir droite gauche et centre ... comme je pourrais la faire sous Office ... voir les tabulations proposéees dans un autre mail /Sub InsererUnPiedDePage(ByVal sTexteCentre As String, ByVal sTexteDroite As String, ByVal sTexteGauche As String)/ essaye de ne pas poster en HTML ton code est illisible chez moi car apparait en gris pale probablement du au / encadrant chaque ligne Sous oOCalc par contre lorsque j’utilise cette m^^eme fonction aucun message d’erreur par contre aucune action non plus ? je ne pense pas que calc utilise les meme fonction il faut surement passer par les zones d'impression (print areas a confirmer) Laurent -- Laurent Godard <[EMAIL PROTECTED]> - Ingénierie OpenOffice.org Indesko >> http://www.indesko.com Nuxeo CPS >> http://www.nuxeo.com - http://www.cps-project.org Livre "Programmation OpenOffice.org", Eyrolles 2004 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [prog] Entete et pieds de page
Bonjour Pour appliquer cela à ton besoin, tu devrais créer une seule chaîne de texte et séparer simplement chaque partie (gauche, centre et droite) par une tabulation (c'est-à-dire un \t ). Cela ne marchera que si les chaînes voir la fonction chr() chr(9) insere une tabulation Laurent -- Laurent Godard <[EMAIL PROTECTED]> - Ingénierie OpenOffice.org Indesko >> http://www.indesko.com Nuxeo CPS >> http://www.nuxeo.com - http://www.cps-project.org Livre "Programmation OpenOffice.org", Eyrolles 2004 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: [prog] Entete et pieds de page
Bonjour, D'après ce que j'ai vu dans un entête et un pied de page, je pense que la solution consiste à utiliser les tabulations. Celle-ci sont d'ailleurs pré-définies lorsque l'on insère un entête ou un pied de page (il suffit de regarder dans la règle pour les voir). Pour appliquer cela à ton besoin, tu devrais créer une seule chaîne de texte et séparer simplement chaque partie (gauche, centre et droite) par une tabulation (c'est-à-dire un \t ). Cela ne marchera que si les chaînes ne sont pas trop longues et ne viennent pas empiêter au delà de chaque partie (comme pour toute tabulation). Cordialement, Emmanuel De : Cezame Concept [mailto:[EMAIL PROTECTED] Bonjour ... Tout d'abord merci pour tes informations ... J'ai appliqué les infos trouvées sur les liens que tu m'a envoyé ... J'ai progressé puisque sous oOWriter j'arrive a créer un pied de page. Cependant je n'arrive pas a gérer les parties du pied de page a savoir droite gauche et centre ... comme je pourrais la faire sous Office ... Ci-dessous le code que j'utilise ... Je pense qu'il s'agit d'un problème de curseur mais je ne trouve pas la solution : Sub InsererUnPiedDePage(ByVal sTexteCentre As String, ByVal sTexteDroite As String, ByVal sTexteGauche As String) Dim monTexte As Object, monCurseur As Object Dim TexteCentre As Object, CurseurCentre As Object Dim TexteDroite As Object, CurseurDroite As Object Dim TexteGauche As Object, CurseurGauche As Object Dim nomStyleMaPage As String, StyleMaPage As Object Dim lesStylesPage As Object monTexte = oDocument.Text monCurseur = monTexte.createTextCursor ' récupérer le nom du style de page en cours nomStyleMaPage = monCurseur.PageStyleName 'print "Cette page est du style : " & nomStyleMaPage ' récupérer la collection de styles de pages lesStylesPage = oDocument.StyleFamilies.getByName("PageStyles") ' récupérer le style de la page en cours StyleMaPage = lesStylesPage.getByName(nomStyleMaPage) With StyleMaPage .FooterIsOn = True ' insérer un pied de page .FooterBodyDistance = 1000 ' 10 mm .FooterHeight = 2500 ' 25mm TexteCentre = .FooterText ' zone de texte centre du pied de page TexteDroite = .FooterTextRight ' zone de texte droite du pied de page TexteGauche = .FooterTextLeft ' zone de texte gauche du pied de page End With CurseurCentre = TexteCentre.createTextCursor ' curseur centre dans le pied de page CurseurDroite = TexteCentre.createTextCursor ' curseur centre dans le pied de page CurseurGauche = TexteCentre.createTextCursor ' curseur centre dans le pied de page ' écrire un texte dans le pied de page TexteCentre.insertString(CurseurCentre, sTexteCentre, False) TexteDroite.insertString(CurseurDroite, sTexteCentre, False) TexteGauche.insertString(CurseurGauche, sTexteCentre, False) End Sub Sous oOCalc par contre lorsque j'utilise cette m^^eme fonction aucun message d'erreur par contre aucune action non plus ? Merci d'avance pour votre aide ... PS : Je pense qu'enfin mon patron va acheter le fameux guide de programmation !!! -Message d'origine-De : Laurent Godard [mailto:[EMAIL PROTECTED] Envoyé : mardi 11 avril 2006 16:04À : prog@fr.openoffice.orgObjet : Re: [prog] Netiquette Bonjour Cezame Concept Cezame, c'est ton prenom ? Je vais parler pour moi : Et oui, il se trouve que ton attitude peut etre a l'origine du manque d'ardeur a te repondre. Dire bonjour au moins ... Mettre la pression dans les tittre de mail URGENT et autres qualificatifs temporels me rappel egalement que j'ai aussi de choses urgentes à faire Tu es sous pression, ca peut s'excuser ... une fois Mais le probleme est que l'arrogance recurrente ne rentre plus dans cette circonstance attenuante Donc oui, une communaute est là pour l'entraide mais il faut considerer cette aide donnée comme un cadeau et non un dû Pour ton probleme regarde de ce coté pour debuter http://api.openoffice.org/docs/common/ref/com/sun/star/text/TextPageStyle.html#HeaderText http://api.openoffice.org/docs/common/ref/com/sun/star/text/TextDocument.html http://api.openoffice.org/docs/DevelopersGuide/Text/Text.xhtml#1_4_5_Page_Layout Pour ce qui est de la mise a disposition de ton travail, n'hesites pas a demander pour les aspects licence et autres. de meme tu peux venir contribuer au projet Extensions si tu le desires Laurent ps: Ni
RE: [prog] Netiquette
Bonjour ... Tout d'abord merci pour tes informations ... J'ai appliqué les infos trouvées sur les liens que tu m'a envoyé ... J'ai progressé puisque sous oOWriter j'arrive a créer un pied de page. Cependant je n'arrive pas a gérer les parties du pied de page a savoir droite gauche et centre ... comme je pourrais la faire sous Office ... Ci-dessous le code que j'utilise ... Je pense qu'il s'agit d'un problème de curseur mais je ne trouve pas la solution : Sub InsererUnPiedDePage(ByVal sTexteCentre As String, ByVal sTexteDroite As String, ByVal sTexteGauche As String) Dim monTexte As Object, monCurseur As Object Dim TexteCentre As Object, CurseurCentre As Object Dim TexteDroite As Object, CurseurDroite As Object Dim TexteGauche As Object, CurseurGauche As Object Dim nomStyleMaPage As String, StyleMaPage As Object Dim lesStylesPage As Object monTexte = oDocument.Text monCurseur = monTexte.createTextCursor ' récupérer le nom du style de page en cours nomStyleMaPage = monCurseur.PageStyleName 'print "Cette page est du style : " & nomStyleMaPage ' récupérer la collection de styles de pages lesStylesPage = oDocument.StyleFamilies.getByName("PageStyles") ' récupérer le style de la page en cours StyleMaPage = lesStylesPage.getByName(nomStyleMaPage) With StyleMaPage .FooterIsOn = True ' insérer un pied de page .FooterBodyDistance = 1000 ' 10 mm .FooterHeight = 2500 ' 25mm TexteCentre = .FooterText ' zone de texte centre du pied de page TexteDroite = .FooterTextRight ' zone de texte droite du pied de page TexteGauche = .FooterTextLeft ' zone de texte gauche du pied de page End With CurseurCentre = TexteCentre.createTextCursor ' curseur centre dans le pied de page CurseurDroite = TexteCentre.createTextCursor ' curseur centre dans le pied de page CurseurGauche = TexteCentre.createTextCursor ' curseur centre dans le pied de page ' écrire un texte dans le pied de page TexteCentre.insertString(CurseurCentre, sTexteCentre, False) TexteDroite.insertString(CurseurDroite, sTexteCentre, False) TexteGauche.insertString(CurseurGauche, sTexteCentre, False) End Sub Sous oOCalc par contre lorsque j’utilise cette m^^eme fonction aucun message d’erreur par contre aucune action non plus ? Merci d’avance pour votre aide … PS : Je pense qu’enfin mon patron va acheter le fameux guide de programmation !!! -Message d'origine- De : Laurent Godard [mailto:[EMAIL PROTECTED] Envoyé : mardi 11 avril 2006 16:04 À : prog@fr.openoffice.org Objet : Re: [prog] Netiquette Bonjour Cezame Concept Cezame, c'est ton prenom ? Je vais parler pour moi : Et oui, il se trouve que ton attitude peut etre a l'origine du manque d'ardeur a te repondre. Dire bonjour au moins ... Mettre la pression dans les tittre de mail URGENT et autres qualificatifs temporels me rappel egalement que j'ai aussi de choses urgentes à faire Tu es sous pression, ca peut s'excuser ... une fois Mais le probleme est que l'arrogance recurrente ne rentre plus dans cette circonstance attenuante Donc oui, une communaute est là pour l'entraide mais il faut considerer cette aide donnée comme un cadeau et non un dû Pour ton probleme regarde de ce coté pour debuter http://api.openoffice.org/docs/common/ref/com/sun/star/text/TextPageStyle.html#HeaderText http://api.openoffice.org/docs/common/ref/com/sun/star/text/TextDocument.html http://api.openoffice.org/docs/DevelopersGuide/Text/Text.xhtml#1_4_5_Page_Layout Pour ce qui est de la mise a disposition de ton travail, n'hesites pas a demander pour les aspects licence et autres. de meme tu peux venir contribuer au projet Extensions si tu le desires Laurent ps: Nicolas, heureux papa, tu as gagné un quadri-papa abonné RSS à ton blog ;) -- Laurent Godard <[EMAIL PROTECTED]> - Ingénierie OpenOffice.org Indesko >> http://www.indesko.com Nuxeo CPS >> http://www.nuxeo.com - http://www.cps-project.org Livre "Programmation OpenOffice.org", Eyrolles 2004 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --- Wanadoo vous informe que cet e-mail a ete controle par l'anti-virus mail. Aucun virus connu a ce jour par nos services n'a ete detecte.
Re: [prog] Comment supprimer une valeur dans la base de registre?
Bonjour pac Message du 2006-04-12 08:29: Bonjour, je relance le sujet. Personne n'a dû supprimer des valeurs dans la base de registre ? Salut, dans le (très bon) livre de Bernard Marcelly version 1.1.4, page 599 Traitements spécifiques pour MS-Windows, il est indiqué d'utiliser : OpenRegKey pour ouvrir une clé, QueryValue pour récupérer une valeur. Mais il n'est pas indiqué comment supprimer une valeur, j'ai essayé quelques méthodes comme DeleteRegValue et d'autres dans le même style mais aucune n'a été reconnue. Dans l'API, http://api.openoffice.org/docs/common/ref/com/sun/star/registry/XRegistryKey.html il est fait état de deleteKey pour supprimer une clé complète et deleteLink pour supprimer un lien (je n'ai pas encore bien compris ce que c'était), mais rien pour supprimer une valeur. Comment peut-on faire ? Curieux que tu n'aies pas avancé sur le sujet. Si tu relis le texte présentant l'exemple, tu peux lire : "utilise des fonctions situées dans la bibliothèque ImportWizard de soffice". L'étape suivante est de regarder cette bibli avec l'EDI. Tu y trouves OpenRegKey, et tu cherches à comprendre comment ça marche. Tu verras qu'elle utilise des routines de DLL MS-Windows permettant de lire les clés. Sans doute existe-t-il d'autres routines pour écrire, voir l'API de MS-Windows. Quant à XRegistryKey, rien à voir. Ce sont les clés de configuration d'OpenOffice, stockées dans /share/config et user/config. Bernard - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]