j'ai avancé dans mes recherches de fusions avec open office writer. En gros,
outre les fonctions de l'exemple de windev, je peux maintenant exporter en
pdf, enregistrer sous le format word. Il me manque une routine pour exécuter
des macros, pour pouvoir réellement donner une alternative à mes clients.
J'ai essayé la chose suivante :
enregistrement d'une macro qui insère une en tête . cette macro s'appelle
entete (original, non ?) et voici son code :
sub entete
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(1) as new com.sun.star.beans.PropertyValue
args1(0).Name = "PageStyle"
args1(0).Value = "Standard"
args1(1).Name = "On"
args1(1).Value = true
dispatcher.executeDispatch(document, ".uno:InsertPageHeader", "", 0,
args1())
rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Text"
args2(0).Value = "AVOWIN_V10"
dispatcher.executeDispatch(document, ".uno:InsertText", "", 0, args2())
end sub
la macro s'exécute normalement si je dis Outils..Macros..Executer..entete.
j'enregistre une nouvelle macro, nommée 'lancemacro', dans laquelle
j'exécute la macro 'entete'.
voici son code :
sub lancemacro
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:RunMacro", "", 0, Array())
end sub
je ne trouve nulle part de référence à la macro 'entete'. Il semblerait que
lorsque je lance la macro 'lancemacro', il me demande où se trouve la macro
'entete'. Si je lui donne le chemin (mes macros..standard..module1) ça
exécute bien la macro 'entete'.
ce qui ne me sert strictement à rien. :(
Est-ce que vous avez des éléments concernant ces maniplations ?
si oui, bienvenue ! ;)
merci
PS : je vais voir si je peux utiliser des boutons pour faire ça.
--
Jacques TREPP
Albygest
3, rue Jean Mermoz
81160 ST-JUERY
(enlevez 'pasdespam' pour me joindre)
j'ai avancé dans mes recherches de fusions avec open office writer. En gros, outre les fonctions de l'exemple de windev, je peux maintenant exporter en pdf, enregistrer sous le format word. Il me manque une routine pour exécuter des macros, pour pouvoir réellement donner une alternative à mes clients.
J'ai essayé la chose suivante : enregistrement d'une macro qui insère une en tête . cette macro s'appelle entete (original, non ?) et voici son code : sub entete rem ---------------------------------------------------------------------- rem define variables dim document as object dim dispatcher as object rem ---------------------------------------------------------------------- rem get access to the document document = ThisComponent.CurrentController.Frame dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") rem ---------------------------------------------------------------------- dim args1(1) as new com.sun.star.beans.PropertyValue args1(0).Name = "PageStyle" args1(0).Value = "Standard" args1(1).Name = "On" args1(1).Value = true dispatcher.executeDispatch(document, ".uno:InsertPageHeader", "", 0, args1()) rem ---------------------------------------------------------------------- dim args2(0) as new com.sun.star.beans.PropertyValue args2(0).Name = "Text" args2(0).Value = "AVOWIN_V10" dispatcher.executeDispatch(document, ".uno:InsertText", "", 0, args2()) end sub
la macro s'exécute normalement si je dis Outils..Macros..Executer..entete.
j'enregistre une nouvelle macro, nommée 'lancemacro', dans laquelle j'exécute la macro 'entete'. voici son code :
sub lancemacro rem ---------------------------------------------------------------------- rem define variables dim document as object dim dispatcher as object rem ---------------------------------------------------------------------- rem get access to the document document = ThisComponent.CurrentController.Frame dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") rem ---------------------------------------------------------------------- dispatcher.executeDispatch(document, ".uno:RunMacro", "", 0, Array()) end sub
je ne trouve nulle part de référence à la macro 'entete'. Il semblerait que lorsque je lance la macro 'lancemacro', il me demande où se trouve la macro 'entete'. Si je lui donne le chemin (mes macros..standard..module1) ça exécute bien la macro 'entete'. ce qui ne me sert strictement à rien. :( Est-ce que vous avez des éléments concernant ces maniplations ? si oui, bienvenue ! ;)
merci
PS : je vais voir si je peux utiliser des boutons pour faire ça.
-- Pierre BOUSQUET
" Ne me dites pas que ce problème est difficile. S'il n'était pas difficile, ce ne serait pas un problème. "
merci pour ce partage !
Après mûre réflexion, Jacques TREPP a écrit :
Bonjour,
j'ai avancé dans mes recherches de fusions avec open office writer. En gros,
outre les fonctions de l'exemple de windev, je peux maintenant exporter en
pdf, enregistrer sous le format word. Il me manque une routine pour exécuter
des macros, pour pouvoir réellement donner une alternative à mes clients.
J'ai essayé la chose suivante :
enregistrement d'une macro qui insère une en tête . cette macro s'appelle
entete (original, non ?) et voici son code :
sub entete
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(1) as new com.sun.star.beans.PropertyValue
args1(0).Name = "PageStyle"
args1(0).Value = "Standard"
args1(1).Name = "On"
args1(1).Value = true
dispatcher.executeDispatch(document, ".uno:InsertPageHeader", "", 0, args1())
rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Text"
args2(0).Value = "AVOWIN_V10"
dispatcher.executeDispatch(document, ".uno:InsertText", "", 0, args2())
end sub
la macro s'exécute normalement si je dis Outils..Macros..Executer..entete.
j'enregistre une nouvelle macro, nommée 'lancemacro', dans laquelle j'exécute
la macro 'entete'.
voici son code :
sub lancemacro
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:RunMacro", "", 0, Array())
end sub
je ne trouve nulle part de référence à la macro 'entete'. Il semblerait que
lorsque je lance la macro 'lancemacro', il me demande où se trouve la macro
'entete'. Si je lui donne le chemin (mes macros..standard..module1) ça
exécute bien la macro 'entete'.
ce qui ne me sert strictement à rien. :(
Est-ce que vous avez des éléments concernant ces maniplations ?
si oui, bienvenue ! ;)
merci
PS : je vais voir si je peux utiliser des boutons pour faire ça.
--
Pierre BOUSQUET
" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
j'ai avancé dans mes recherches de fusions avec open office writer. En gros, outre les fonctions de l'exemple de windev, je peux maintenant exporter en pdf, enregistrer sous le format word. Il me manque une routine pour exécuter des macros, pour pouvoir réellement donner une alternative à mes clients.
J'ai essayé la chose suivante : enregistrement d'une macro qui insère une en tête . cette macro s'appelle entete (original, non ?) et voici son code : sub entete rem ---------------------------------------------------------------------- rem define variables dim document as object dim dispatcher as object rem ---------------------------------------------------------------------- rem get access to the document document = ThisComponent.CurrentController.Frame dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") rem ---------------------------------------------------------------------- dim args1(1) as new com.sun.star.beans.PropertyValue args1(0).Name = "PageStyle" args1(0).Value = "Standard" args1(1).Name = "On" args1(1).Value = true dispatcher.executeDispatch(document, ".uno:InsertPageHeader", "", 0, args1()) rem ---------------------------------------------------------------------- dim args2(0) as new com.sun.star.beans.PropertyValue args2(0).Name = "Text" args2(0).Value = "AVOWIN_V10" dispatcher.executeDispatch(document, ".uno:InsertText", "", 0, args2()) end sub
la macro s'exécute normalement si je dis Outils..Macros..Executer..entete.
j'enregistre une nouvelle macro, nommée 'lancemacro', dans laquelle j'exécute la macro 'entete'. voici son code :
sub lancemacro rem ---------------------------------------------------------------------- rem define variables dim document as object dim dispatcher as object rem ---------------------------------------------------------------------- rem get access to the document document = ThisComponent.CurrentController.Frame dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") rem ---------------------------------------------------------------------- dispatcher.executeDispatch(document, ".uno:RunMacro", "", 0, Array()) end sub
je ne trouve nulle part de référence à la macro 'entete'. Il semblerait que lorsque je lance la macro 'lancemacro', il me demande où se trouve la macro 'entete'. Si je lui donne le chemin (mes macros..standard..module1) ça exécute bien la macro 'entete'. ce qui ne me sert strictement à rien. :( Est-ce que vous avez des éléments concernant ces maniplations ? si oui, bienvenue ! ;)
merci
PS : je vais voir si je peux utiliser des boutons pour faire ça.
-- Pierre BOUSQUET
" Ne me dites pas que ce problème est difficile. S'il n'était pas difficile, ce ne serait pas un problème. "
Jacques TREPP
"Pierre BOUSQUET" a écrit dans le message de news:
merci pour ce partage !
Sans problème. J'ai encore avancé. Ma macro fonctionne dans open office. Par contre, j'ai un problème à la traduction de la fonction Array(). Comme les codes sont très courts, je vous livre les 2 : macro OOffice : dim document as object dim dispatcher as object
dispatcher>>executeDispatch(Document,"macro;//test/Standard.Module1.entete()", "",0,m_array) ça, ça plante à cause de Array que je ne sais pas traduire.
Merci pour tout
-- Jacques TREPP Albygest 3, rue Jean Mermoz 81160 ST-JUERY (enlevez 'pasdespam' pour me joindre)
"Pierre BOUSQUET" <pb4807@hotmail.com> a écrit dans le message de
news:mn.db137d793ca1000f.47088@hotmail.com...
merci pour ce partage !
Sans problème. J'ai encore avancé. Ma macro fonctionne dans open office. Par
contre, j'ai un problème à la traduction de la fonction Array().
Comme les codes sont très courts, je vous livre les 2 :
macro OOffice :
dim document as object
dim dispatcher as object
dispatcher>>executeDispatch(Document,"macro;//test/Standard.Module1.entete()",
"",0,m_array)
ça, ça plante à cause de Array que je ne sais pas traduire.
Merci pour tout
--
Jacques TREPP
Albygest
3, rue Jean Mermoz
81160 ST-JUERY
(enlevez 'pasdespam' pour me joindre)
"Pierre BOUSQUET" a écrit dans le message de news:
merci pour ce partage !
Sans problème. J'ai encore avancé. Ma macro fonctionne dans open office. Par contre, j'ai un problème à la traduction de la fonction Array(). Comme les codes sont très courts, je vous livre les 2 : macro OOffice : dim document as object dim dispatcher as object
dispatcher>>executeDispatch(Document,"macro;//test/Standard.Module1.entete()", "",0,m_array) ça, ça plante à cause de Array que je ne sais pas traduire.
Merci pour tout
-- Jacques TREPP Albygest 3, rue Jean Mermoz 81160 ST-JUERY (enlevez 'pasdespam' pour me joindre)
Jacques TREPP
Bonsoir,
ja m'auto répond. la syntaxe suivante de plante pas. elle ne fait rien non plus ! :)
PROCEDURE Exécute_Macro(NomMacro="entete")
Document est un objet OLE dynamique dispatcher est un objet OLE dynamique
ça doit être dans le rattachement de la macro. J'avoue que j'ai du mal avec ça par rapport à word. En fait, j'ai un modèle qui contient toutes les macros. Lorsque j'ouvre word, j'associe mon modèle. 2 avantages : le modèle est sur le serveur, donc accessible à tous. le modèle étant associe, l'utilisateur ne peut pas me pourrir mes macros à moi !
J'aimerais bien faire ça avec OO.
cordialement
-- Jacques TREPP Albygest 3, rue Jean Mermoz 81160 ST-JUERY (enlevez 'pasdespam' pour me joindre)
Bonsoir,
ja m'auto répond. la syntaxe suivante de plante pas. elle ne fait rien non
plus ! :)
PROCEDURE Exécute_Macro(NomMacro="entete")
Document est un objet OLE dynamique
dispatcher est un objet OLE dynamique
ça doit être dans le rattachement de la macro. J'avoue que j'ai du mal avec
ça par rapport à word. En fait, j'ai un modèle qui contient toutes les
macros.
Lorsque j'ouvre word, j'associe mon modèle. 2 avantages :
le modèle est sur le serveur, donc accessible à tous.
le modèle étant associe, l'utilisateur ne peut pas me pourrir mes macros à
moi !
J'aimerais bien faire ça avec OO.
cordialement
--
Jacques TREPP
Albygest
3, rue Jean Mermoz
81160 ST-JUERY
(enlevez 'pasdespam' pour me joindre)
ça doit être dans le rattachement de la macro. J'avoue que j'ai du mal avec ça par rapport à word. En fait, j'ai un modèle qui contient toutes les macros. Lorsque j'ouvre word, j'associe mon modèle. 2 avantages : le modèle est sur le serveur, donc accessible à tous. le modèle étant associe, l'utilisateur ne peut pas me pourrir mes macros à moi !
J'aimerais bien faire ça avec OO.
cordialement
-- Jacques TREPP Albygest 3, rue Jean Mermoz 81160 ST-JUERY (enlevez 'pasdespam' pour me joindre)
Jacques TREPP
Bonjour,
Bon : a y est ! Pour faire simple : c'est quelquefois un peu galère de discuter avec open office. malgré tout, j'ai résolu mon problème de macros ... en ligne de commande. je me sers de la classe WdDos qui trainait sur ma machine, et que j'avais oublié jusqu'à il y a 3 jours, où je l'ai envoyé à un abonné au forum. Voici le code : PROCEDURE Exécute_Macro(NomMacro="entete") macomm est une chaîne macomm = Caract(34)+"C:Program FilesOpenOffice.org 2.2programsoffice.exe"+Caract(34)... +" -invisible "+Caract(34)+"macro:///Standard.Module1."+NomMacro+"()"+Caract(34) CMDos:CommandLine_Let(macomm) CMDos:ExecuteCommand()
D'aucuns pourront dire que c'est un tantinet "bourrin". de man fou : j'assume ;) En résumé, en plus des fonctions des classes CDocument et cOpenOffice fournies par Pc-Soft, j'ai ajouté les fonctions suivantes, dont je me fais une joie de vous donner le code : executions de macros : voir ci-dessus
enregistrer un .ODT au format MsWord : PROCEDURE Enregistrer_Sous_MsWord(NomDocumentDoc)
Document est un objet OLE dynamique dispatcher est un objet OLE dynamique
Document = :oDocument>>CurrentController>>Frame dispatcher = :oServiceManager>>createInstance("com.sun.star.frame.DispatchHelper") ParamImpression est un tableau de 3 objet Automation dynamique
-- Jacques TREPP Albygest 3, rue Jean Mermoz 81160 ST-JUERY (enlevez 'pasdespam' pour me joindre)
Bonjour,
Bon : a y est ! Pour faire simple : c'est quelquefois un peu galère de
discuter avec open office. malgré tout, j'ai résolu mon problème de macros
... en ligne de commande.
je me sers de la classe WdDos qui trainait sur ma machine, et que j'avais
oublié jusqu'à il y a 3 jours, où je l'ai envoyé à un abonné au forum.
Voici le code :
PROCEDURE Exécute_Macro(NomMacro="entete")
macomm est une chaîne
macomm = Caract(34)+"C:Program FilesOpenOffice.org
2.2programsoffice.exe"+Caract(34)...
+" -invisible
"+Caract(34)+"macro:///Standard.Module1."+NomMacro+"()"+Caract(34)
CMDos:CommandLine_Let(macomm)
CMDos:ExecuteCommand()
D'aucuns pourront dire que c'est un tantinet "bourrin". de man fou :
j'assume ;)
En résumé, en plus des fonctions des classes CDocument et cOpenOffice
fournies par Pc-Soft, j'ai ajouté les fonctions suivantes, dont je me fais
une joie de vous donner le code :
executions de macros : voir ci-dessus
enregistrer un .ODT au format MsWord :
PROCEDURE Enregistrer_Sous_MsWord(NomDocumentDoc)
Document est un objet OLE dynamique
dispatcher est un objet OLE dynamique
Document = :oDocument>>CurrentController>>Frame
dispatcher =
:oServiceManager>>createInstance("com.sun.star.frame.DispatchHelper")
ParamImpression est un tableau de 3 objet Automation dynamique
Bon : a y est ! Pour faire simple : c'est quelquefois un peu galère de discuter avec open office. malgré tout, j'ai résolu mon problème de macros ... en ligne de commande. je me sers de la classe WdDos qui trainait sur ma machine, et que j'avais oublié jusqu'à il y a 3 jours, où je l'ai envoyé à un abonné au forum. Voici le code : PROCEDURE Exécute_Macro(NomMacro="entete") macomm est une chaîne macomm = Caract(34)+"C:Program FilesOpenOffice.org 2.2programsoffice.exe"+Caract(34)... +" -invisible "+Caract(34)+"macro:///Standard.Module1."+NomMacro+"()"+Caract(34) CMDos:CommandLine_Let(macomm) CMDos:ExecuteCommand()
D'aucuns pourront dire que c'est un tantinet "bourrin". de man fou : j'assume ;) En résumé, en plus des fonctions des classes CDocument et cOpenOffice fournies par Pc-Soft, j'ai ajouté les fonctions suivantes, dont je me fais une joie de vous donner le code : executions de macros : voir ci-dessus
enregistrer un .ODT au format MsWord : PROCEDURE Enregistrer_Sous_MsWord(NomDocumentDoc)
Document est un objet OLE dynamique dispatcher est un objet OLE dynamique
Document = :oDocument>>CurrentController>>Frame dispatcher = :oServiceManager>>createInstance("com.sun.star.frame.DispatchHelper") ParamImpression est un tableau de 3 objet Automation dynamique
ça doit être dans le rattachement de la macro. J'avoue que j'ai du mal avec ça par rapport à word. En fait, j'ai un modèle qui contient toutes les macros. Lorsque j'ouvre word, j'associe mon modèle. 2 avantages : le modèle est sur le serveur, donc accessible à tous. le modèle étant associe, l'utilisateur ne peut pas me pourrir mes macros à moi !
J'aimerais bien faire ça avec OO.
cordialement
-- Bruno A
suivre ce lien pour répondre : http://cerbermail.com/?TF4s3h4ejs ;)
Bonjour,
Dans Oo, je cherche à ouvrir un document en caché, tu as ça dans tes
fonctions ?
Merci
Jacques TREPP vient de nous annoncer :
Bonsoir,
ja m'auto répond. la syntaxe suivante de plante pas. elle ne fait rien non
plus ! :)
PROCEDURE Exécute_Macro(NomMacro="entete")
Document est un objet OLE dynamique
dispatcher est un objet OLE dynamique
ça doit être dans le rattachement de la macro. J'avoue que j'ai du mal avec
ça par rapport à word. En fait, j'ai un modèle qui contient toutes les
macros.
Lorsque j'ouvre word, j'associe mon modèle. 2 avantages :
le modèle est sur le serveur, donc accessible à tous.
le modèle étant associe, l'utilisateur ne peut pas me pourrir mes macros à
moi !
J'aimerais bien faire ça avec OO.
cordialement
--
Bruno A
suivre ce lien pour répondre :
http://cerbermail.com/?TF4s3h4ejs
;)
ça doit être dans le rattachement de la macro. J'avoue que j'ai du mal avec ça par rapport à word. En fait, j'ai un modèle qui contient toutes les macros. Lorsque j'ouvre word, j'associe mon modèle. 2 avantages : le modèle est sur le serveur, donc accessible à tous. le modèle étant associe, l'utilisateur ne peut pas me pourrir mes macros à moi !
J'aimerais bien faire ça avec OO.
cordialement
-- Bruno A
suivre ce lien pour répondre : http://cerbermail.com/?TF4s3h4ejs ;)
Jacques TREPP
"Bruno" a écrit dans le message de news:
Bonjour,
Dans Oo, je cherche à ouvrir un document en caché, tu as ça dans tes fonctions ?
Bonjour Bruno, Pour l'ouverture, je me sers de la classe de pc-soft : :oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank", 0, mNoArgs) A mon avis, ça doit se trouver dans le mNoArgs.
Sinon, regarde dans le message où j'ai donné le code des méthodes que j'ai ajoutées. Dans l'exécution de macro, il y a une ligne de commande avec une option -invisible que pourrais utiliser en remplaçant la commande "macro" par un équivalent de "open".
c'est ballot : tu aurais pu me demander un truc que j'avais fait. ;)
désolé.
PS si tu trouves, par contre, ça m'intéresse ! :D
-- Jacques TREPP Albygest 3, rue Jean Mermoz 81160 ST-JUERY (enlevez 'pasdespam' pour me joindre)
"Bruno" <voir.signature@enbas.fr> a écrit dans le message de
news:mn.12de7d7a68a0ab71.62176@enbas.fr...
Bonjour,
Dans Oo, je cherche à ouvrir un document en caché, tu as ça dans tes
fonctions ?
Bonjour Bruno,
Pour l'ouverture, je me sers de la classe de pc-soft :
:oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank", 0,
mNoArgs)
A mon avis, ça doit se trouver dans le mNoArgs.
Sinon, regarde dans le message où j'ai donné le code des méthodes que j'ai
ajoutées. Dans l'exécution de macro, il y a une ligne de commande avec une
option -invisible que pourrais utiliser en remplaçant la commande "macro"
par un équivalent de "open".
c'est ballot : tu aurais pu me demander un truc que j'avais fait. ;)
désolé.
PS si tu trouves, par contre, ça m'intéresse ! :D
--
Jacques TREPP
Albygest
3, rue Jean Mermoz
81160 ST-JUERY
(enlevez 'pasdespam' pour me joindre)
Dans Oo, je cherche à ouvrir un document en caché, tu as ça dans tes fonctions ?
Bonjour Bruno, Pour l'ouverture, je me sers de la classe de pc-soft : :oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank", 0, mNoArgs) A mon avis, ça doit se trouver dans le mNoArgs.
Sinon, regarde dans le message où j'ai donné le code des méthodes que j'ai ajoutées. Dans l'exécution de macro, il y a une ligne de commande avec une option -invisible que pourrais utiliser en remplaçant la commande "macro" par un équivalent de "open".
c'est ballot : tu aurais pu me demander un truc que j'avais fait. ;)
désolé.
PS si tu trouves, par contre, ça m'intéresse ! :D
-- Jacques TREPP Albygest 3, rue Jean Mermoz 81160 ST-JUERY (enlevez 'pasdespam' pour me joindre)
Bruno
Jacques TREPP a écrit :
"Bruno" a écrit dans le message de news:
Bonjour,
Dans Oo, je cherche à ouvrir un document en caché, tu as ça dans tes fonctions ?
C'est bon d'après tes exemples pour l'imprimante, j'ai pu créer ce fameux tableau mNoArgs avec l'argument "Hidden". Dans mes recherches j'étais pas loin mais il me manquait la déclaration du tableau + la récupération avec Bridge_GetStruct.
Merci
Bruno
Bonjour Bruno, Pour l'ouverture, je me sers de la classe de pc-soft : >oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank", 0, mNoArgs) A mon avis, ça doit se trouver dans le mNoArgs.
Sinon, regarde dans le message où j'ai donné le code des méthodes que j'ai ajoutées. Dans l'exécution de macro, il y a une ligne de commande avec une option -invisible que pourrais utiliser en remplaçant la commande "macro" par un équivalent de "open".
c'est ballot : tu aurais pu me demander un truc que j'avais fait. ;)
désolé.
PS si tu trouves, par contre, ça m'intéresse ! :D
-- Bruno A
suivre ce lien pour répondre : http://cerbermail.com/?TF4s3h4ejs ;)
Jacques TREPP a écrit :
"Bruno" <voir.signature@enbas.fr> a écrit dans le message de
news:mn.12de7d7a68a0ab71.62176@enbas.fr...
Bonjour,
Dans Oo, je cherche à ouvrir un document en caché, tu as ça dans tes
fonctions ?
C'est bon d'après tes exemples pour l'imprimante, j'ai pu créer ce
fameux tableau mNoArgs avec l'argument "Hidden". Dans mes recherches
j'étais pas loin mais il me manquait la déclaration du tableau + la
récupération avec Bridge_GetStruct.
Merci
Bruno
Bonjour Bruno,
Pour l'ouverture, je me sers de la classe de pc-soft :
>oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank", 0,
mNoArgs)
A mon avis, ça doit se trouver dans le mNoArgs.
Sinon, regarde dans le message où j'ai donné le code des méthodes que j'ai
ajoutées. Dans l'exécution de macro, il y a une ligne de commande avec une
option -invisible que pourrais utiliser en remplaçant la commande "macro" par
un équivalent de "open".
c'est ballot : tu aurais pu me demander un truc que j'avais fait. ;)
désolé.
PS si tu trouves, par contre, ça m'intéresse ! :D
--
Bruno A
suivre ce lien pour répondre :
http://cerbermail.com/?TF4s3h4ejs
;)
Dans Oo, je cherche à ouvrir un document en caché, tu as ça dans tes fonctions ?
C'est bon d'après tes exemples pour l'imprimante, j'ai pu créer ce fameux tableau mNoArgs avec l'argument "Hidden". Dans mes recherches j'étais pas loin mais il me manquait la déclaration du tableau + la récupération avec Bridge_GetStruct.
Merci
Bruno
Bonjour Bruno, Pour l'ouverture, je me sers de la classe de pc-soft : >oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank", 0, mNoArgs) A mon avis, ça doit se trouver dans le mNoArgs.
Sinon, regarde dans le message où j'ai donné le code des méthodes que j'ai ajoutées. Dans l'exécution de macro, il y a une ligne de commande avec une option -invisible que pourrais utiliser en remplaçant la commande "macro" par un équivalent de "open".
c'est ballot : tu aurais pu me demander un truc que j'avais fait. ;)
désolé.
PS si tu trouves, par contre, ça m'intéresse ! :D
-- Bruno A
suivre ce lien pour répondre : http://cerbermail.com/?TF4s3h4ejs ;)
Bruno
> PS si tu trouves, par contre, ça m'intéresse ! :D
Et voilà le code
sCheminFormaté est une chaîne ldispatcher est un objet OLE dynamique
// Service manager nécessaire à OpenOffice :DémarrerService()
OPropertyValue est un tableau de 1 objet automation dynamique ldispatcher =:oServiceManager>>createInstance("com.sun.star.frame.DispatchHelper") // OPropertyValue[1] = :oServiceManager>>Bridge_GetStruct("com.sun.star.beans.PropertyValue") oPropertyValue[1]>>Name = "Hidden" oPropertyValue[1]>>Value = true //
SI fFichierExiste(psCheminComplet) ALORS
// Formatage du chemin du fichier sCheminFormaté = "file:///"+Remplace(psCheminComplet,"","/")
// Ouverture du fichier dans OpenOffice Writer :oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank", 0, OPropertyValue)
SI :oDocument<>Null ALORS RENVOYER Vrai FIN FIN
RENVOYER Faux
-- Bruno A
suivre ce lien pour répondre : http://cerbermail.com/?TF4s3h4ejs ;)
>
PS si tu trouves, par contre, ça m'intéresse ! :D
Et voilà le code
sCheminFormaté est une chaîne
ldispatcher est un objet OLE dynamique
// Service manager nécessaire à OpenOffice
:DémarrerService()
OPropertyValue est un tableau de 1 objet automation dynamique
ldispatcher
=:oServiceManager>>createInstance("com.sun.star.frame.DispatchHelper")
//
OPropertyValue[1] =
:oServiceManager>>Bridge_GetStruct("com.sun.star.beans.PropertyValue")
oPropertyValue[1]>>Name = "Hidden"
oPropertyValue[1]>>Value = true
//
SI fFichierExiste(psCheminComplet) ALORS
// Formatage du chemin du fichier
sCheminFormaté = "file:///"+Remplace(psCheminComplet,"","/")
// Ouverture du fichier dans OpenOffice Writer
:oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank",
0, OPropertyValue)
SI :oDocument<>Null ALORS
RENVOYER Vrai
FIN
FIN
RENVOYER Faux
--
Bruno A
suivre ce lien pour répondre :
http://cerbermail.com/?TF4s3h4ejs
;)
> PS si tu trouves, par contre, ça m'intéresse ! :D
Et voilà le code
sCheminFormaté est une chaîne ldispatcher est un objet OLE dynamique
// Service manager nécessaire à OpenOffice :DémarrerService()
OPropertyValue est un tableau de 1 objet automation dynamique ldispatcher =:oServiceManager>>createInstance("com.sun.star.frame.DispatchHelper") // OPropertyValue[1] = :oServiceManager>>Bridge_GetStruct("com.sun.star.beans.PropertyValue") oPropertyValue[1]>>Name = "Hidden" oPropertyValue[1]>>Value = true //
SI fFichierExiste(psCheminComplet) ALORS
// Formatage du chemin du fichier sCheminFormaté = "file:///"+Remplace(psCheminComplet,"","/")
// Ouverture du fichier dans OpenOffice Writer :oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank", 0, OPropertyValue)
SI :oDocument<>Null ALORS RENVOYER Vrai FIN FIN
RENVOYER Faux
-- Bruno A
suivre ce lien pour répondre : http://cerbermail.com/?TF4s3h4ejs ;)
Jacques TREPP
"Bruno" a écrit dans le message de news:
>
PS si tu trouves, par contre, ça m'intéresse ! :D
Et voilà le code
sCheminFormaté est une chaîne ldispatcher est un objet OLE dynamique
// Service manager nécessaire à OpenOffice :DémarrerService()
OPropertyValue est un tableau de 1 objet automation dynamique ldispatcher =:oServiceManager>>createInstance("com.sun.star.frame.DispatchHelper") // OPropertyValue[1] = :oServiceManager>>Bridge_GetStruct("com.sun.star.beans.PropertyValue") oPropertyValue[1]>>Name = "Hidden" oPropertyValue[1]>>Value = true //
SI fFichierExiste(psCheminComplet) ALORS
// Formatage du chemin du fichier sCheminFormaté = "file:///"+Remplace(psCheminComplet,"","/")
// Ouverture du fichier dans OpenOffice Writer :oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank", 0, OPropertyValue)
SI :oDocument<>Null ALORS RENVOYER Vrai FIN FIN
RENVOYER Faux
-- Bruno A
Merci Bruno ! je vais intégrer ça dans ma classe "remaniée". En clair, je dois pouvoir ouvrir un document, effectuer une fution et l'imprimer sans apercevoir open office ? C'est intéressant.
-- Jacques TREPP Albygest 3, rue Jean Mermoz 81160 ST-JUERY (enlevez 'pasdespam' pour me joindre)
"Bruno" <voir.signature@enbas.fr> a écrit dans le message de
news:mn.1a8c7d7a516745fa.62176@enbas.fr...
>
PS si tu trouves, par contre, ça m'intéresse ! :D
Et voilà le code
sCheminFormaté est une chaîne
ldispatcher est un objet OLE dynamique
// Service manager nécessaire à OpenOffice
:DémarrerService()
OPropertyValue est un tableau de 1 objet automation dynamique
ldispatcher
=:oServiceManager>>createInstance("com.sun.star.frame.DispatchHelper")
//
OPropertyValue[1] =
:oServiceManager>>Bridge_GetStruct("com.sun.star.beans.PropertyValue")
oPropertyValue[1]>>Name = "Hidden"
oPropertyValue[1]>>Value = true
//
SI fFichierExiste(psCheminComplet) ALORS
// Formatage du chemin du fichier
sCheminFormaté = "file:///"+Remplace(psCheminComplet,"","/")
// Ouverture du fichier dans OpenOffice Writer
:oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank", 0,
OPropertyValue)
SI :oDocument<>Null ALORS
RENVOYER Vrai
FIN
FIN
RENVOYER Faux
--
Bruno A
Merci Bruno !
je vais intégrer ça dans ma classe "remaniée". En clair, je dois pouvoir
ouvrir un document, effectuer une fution et l'imprimer sans apercevoir open
office ?
C'est intéressant.
--
Jacques TREPP
Albygest
3, rue Jean Mermoz
81160 ST-JUERY
(enlevez 'pasdespam' pour me joindre)
sCheminFormaté est une chaîne ldispatcher est un objet OLE dynamique
// Service manager nécessaire à OpenOffice :DémarrerService()
OPropertyValue est un tableau de 1 objet automation dynamique ldispatcher =:oServiceManager>>createInstance("com.sun.star.frame.DispatchHelper") // OPropertyValue[1] = :oServiceManager>>Bridge_GetStruct("com.sun.star.beans.PropertyValue") oPropertyValue[1]>>Name = "Hidden" oPropertyValue[1]>>Value = true //
SI fFichierExiste(psCheminComplet) ALORS
// Formatage du chemin du fichier sCheminFormaté = "file:///"+Remplace(psCheminComplet,"","/")
// Ouverture du fichier dans OpenOffice Writer :oDocument = :oDesktop>>LoadComponentFromURL(sCheminFormaté, "_blank", 0, OPropertyValue)
SI :oDocument<>Null ALORS RENVOYER Vrai FIN FIN
RENVOYER Faux
-- Bruno A
Merci Bruno ! je vais intégrer ça dans ma classe "remaniée". En clair, je dois pouvoir ouvrir un document, effectuer une fution et l'imprimer sans apercevoir open office ? C'est intéressant.
-- Jacques TREPP Albygest 3, rue Jean Mermoz 81160 ST-JUERY (enlevez 'pasdespam' pour me joindre)
Bruno
C'est le but en effet.
Jacques TREPP a écrit :
Merci Bruno ! je vais intégrer ça dans ma classe "remaniée". En clair, je dois pouvoir ouvrir un document, effectuer une fution et l'imprimer sans apercevoir open office ? C'est intéressant.
-- Bruno A
suivre ce lien pour répondre : http://cerbermail.com/?TF4s3h4ejs ;)
C'est le but en effet.
Jacques TREPP a écrit :
Merci Bruno !
je vais intégrer ça dans ma classe "remaniée". En clair, je dois pouvoir
ouvrir un document, effectuer une fution et l'imprimer sans apercevoir open
office ?
C'est intéressant.
--
Bruno A
suivre ce lien pour répondre :
http://cerbermail.com/?TF4s3h4ejs
;)
Merci Bruno ! je vais intégrer ça dans ma classe "remaniée". En clair, je dois pouvoir ouvrir un document, effectuer une fution et l'imprimer sans apercevoir open office ? C'est intéressant.
-- Bruno A
suivre ce lien pour répondre : http://cerbermail.com/?TF4s3h4ejs ;)