Re: [prog] fonctionnement du ServiceManager et du StarDesktop

2005-05-12 Par sujet Thomas Coquery
Tout d'abord merci beaucoup de ta réponse...
Si tu affiches Thunderbird en groupement des fils de discussion, tu 
comprendras pourquoi je m'énerve parfois.
Ah je ne connais pas cette option mais elle m'interesse beaucoup...
Quand Delphi execute ConnectOpenOffice il envoie un message à Windows 
qui lance OpenOffice s'il n'est pas déjà chargé, puis il utilise la 
connexion logicielle ainsi établie.
Si l'utilisateur interfère dans le travail on ne peut plus rien 
garantir. Même avec une macro, si l'utilisateur modifie le document 
pendant l'exécution de la macro, tout peut arriver.
Si l'utilisateur n'utilise pas le démarrage rapide, la fermeture du 
dernier document ouvert va arrêter OpenOffice. Et bien sûr la 
connexion logicielle sera brisée.
Je pense qu'il faut revoir le principe de ton application pour éviter 
des interventions utilisateur. Cela me semble anormal que 
l'application ouvre un document et demande à l'utilisateur de le 
fermer : celui qui a ouvert un document en est responsable, et ce 
n'est pas l'utilisateur.
Je comprends ton objection de principe sur cette ouverture par l'appli 
et fermeture par l'utilisateur mais je ne peut malheureusement pas me 
permettre de modifier cela à moins de savoir comment bloquer la 
fermeture d'un document... et encore car l'application était déjà écrite 
et je ne suis chargé que de la compatibilité avec OOo donc il faut que 
je garde son fonctionnement antérieur.

L'application ouvre le document en mode caché, fait son travail, ferme 
le document. L'utilisateur ne perturbe rien car il ne voit rien.
Oui dans ce cas précis cela fonctionne je traite le publipostage comme 
celà. Les plantages se produisent quand l'utilisateur ferme OOo "dans le 
dos" de l'application.

Autre solution, s'il faut laisser l'utilisateur éditer le document, 
lui demander de ne pas le fermer, et faire cela par l'application, en 
fin de travail. Mais on restera dépendant du bon vouloir (et de la 
bêtise) de l'utilisateur.
Idée à creuser... mais cela ne fait pas très pro ... Attention ne fermez 
que le document et pas OpenOffice ou les publipostages seront 
impossibles... lol

Si ConnectOpenOffice se passe bien, OpenOffice est bien lancé.
Oui je l'avais remarqué :) ... En passant j'ai vu que ConnectOpenOffice 
se contentait de vérifier l'existence("isNullEmpty") de OpenOffice (le 
ServiceManager) avant de réétablir la connexion (avec les 5 objets)... 
et si un des 4 autres a été supprimé ???
Sinon je me demandais pourquoi vérifier l'existence de OpenOffice? Celui 
ci est un singleton donc même en le réinstanciant à chaque fois cela ne 
change rien...

En passant j'aurais bien aimé savoir si le Desktop est un Singleton 
aussi (cela m'ennnuierai d'ouvrir plusieurs fois le processus openoffice).

Sinon j'ai trouvé une solution qui fonctionne à priori... je réinstancie 
le ServiceManager régulièrement ainsi que le Desktop pour l'instant cela 
semble fonctionner et ne plus occasionner de plantages... Donc je ne 
passe plus par connectOpenOffice (désolé ;) )


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


Re: [prog] Resultset non nul pour une table vide

2005-05-12 Par sujet Bernard Marcelly
Le 2005-05-12 20:35, Martin Blaizot a écrit :
Bonsoir Bernard,
Désolé, mais je ne comprend pas ta réponse.
quand je fais : Print"le libellé de mon premier champ est : 
",Resultset.getString(1)

c'est bien le résultat que je teste, non ?
et j'obtient un texte du genre "Matériel sup n° n", alors que ce 
matériel n'est pas présent dans le champ n°1 de ma table.

si first renvoie False, alors il n'a pas pu se placer sur le premier 
résultat. Dans ce cas le getString donnera n'importe quoi. A mon avis, 
si le résultat de la requête est vide, il sera difficile de se placer 
sur le premier enregistrement.

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


Re: [prog] fonctionnement du ServiceManager et du StarDesktop

2005-05-12 Par sujet Bernard Marcelly
Le 2005-05-12 14:39, Thomas Coquery a écrit :
Toutes mes excuses à Bernard ... J'étais en tort et en plus je ne le 
comprenais pas...
Si tu affiches Thunderbird en groupement des fils de discussion, tu 
comprendras pourquoi je m'énerve parfois.
Donc voici mon post concernant le ServiceManager,le Desktop et le 
serveur RPC
Quand Delphi execute ConnectOpenOffice il envoie un message à Windows 
qui lance OpenOffice s'il n'est pas déjà chargé, puis il utilise la 
connexion logicielle ainsi établie.
Si l'utilisateur interfère dans le travail on ne peut plus rien 
garantir. Même avec une macro, si l'utilisateur modifie le document 
pendant l'exécution de la macro, tout peut arriver.
Si l'utilisateur n'utilise pas le démarrage rapide, la fermeture du 
dernier document ouvert va arrêter OpenOffice. Et bien sûr la connexion 
logicielle sera brisée.
Je pense qu'il faut revoir le principe de ton application pour éviter 
des interventions utilisateur. Cela me semble anormal que l'application 
ouvre un document et demande à l'utilisateur de le fermer : celui qui a 
ouvert un document en est responsable, et ce n'est pas l'utilisateur.

Un moyen est de ne lancer l'application que sur un document déjà écrit. 
Eventuellement, demander des informations complémentaires à 
l'utilisateur avec un dialogue Delphi. L'application ouvre le document 
en mode caché, fait son travail, ferme le document. L'utilisateur ne 
perturbe rien car il ne voit rien.
Autre solution, s'il faut laisser l'utilisateur éditer le document, lui 
demander de ne pas le fermer, et faire cela par l'application, en fin de 
travail. Mais on restera dépendant du bon vouloir (et de la bêtise) de 
l'utilisateur.

Je vais préciser un peu ma question... Est ce quelqu'un a une idée de la 
façon dont je pourrais vérifier que openoffice est bien lancé... 
Si ConnectOpenOffice se passe bien, OpenOffice est bien lancé.
   Bernard
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [prog] Resultset non nul pour une table vide

2005-05-12 Par sujet Martin Blaizot
Bonsoir Bernard,
Désolé, mais je ne comprend pas ta réponse.
quand je fais : Print"le libellé de mon premier champ est : 
",Resultset.getString(1)

c'est bien le résultat que je teste, non ?
et j'obtient un texte du genre "Matériel sup n° n", alors que ce matériel 
n'est pas présent dans le champ n°1 de ma table.

Merci,
Martin 


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


Re: [prog] Resultset non nul pour une table vide

2005-05-12 Par sujet mblaizot
Bonsoir Jean-claude,
effectivement, le resultset pointe avant le premier résultat de la requête. 
C'est pourquoi j'utilise resultset.first pour me placer sur le premier 
enregistrement correspondant au critère. Je pourrais d'ailleurs faire 
Resultset.next, il me semble que le résultat serait le même.
De toute manière, cette table que j'interroge ne peux contenir qu'un seul 
enregistrement.
Ce qui est curieux, c'est que ma requête me renvoie un résultat (Print 
Resultset.getstring(1) ) alors que ma table est vide.

Amicalement,
Martin

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


Re: [prog] Recherche de parents

2005-05-12 Par sujet Laurent Godard
Bonjour Jean-Claude
Si je passe oCell en paramètre à ma procédure Toto, comment puis-je y
récupérer un objet oSheet qui pointe sur la feuille parente de la référence
passée en paramètre à ma procédure (ici ThisComponent.Sheets(0) ) ...
essaye ceci
Sub Toto(oCell As Object)
Dim oSheet As Object 'Feuille parent de la cellule recue en paramètre
print oCell.SpreadSheet.Name
End Sub
oCell.SpreadSheet contient bien l'objet feuille contenant ta cellule
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] Resultset non nul pour une table vide

2005-05-12 Par sujet Bernard Marcelly
Le 2005-05-12 15:54, Martin blaizot a écrit :
Bonjour à tous,
je crois que je suis un peu fatigué ! 

le truc suivant est en train de me rendre fou :
J'ai une table qui ne contient aucun enregistrement (table "Provisoire" de la base 
"Matériel")
avec le code suivant,
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Materiel")
Connection = DataSource.GetConnection("","")
Matable = Connection.Tables.getbyname("Provisoire")
Statement = Connection.createStatement()
Resultset = Statement.executeQuery("SELECT *  FROM "& Matable.name &"")
If Not IsNull(Resultset) Then
 Resultset.first
 Print"le libellé de mon premier champ est : ",Resultset.getString(1)
End if
Il me trouve un enregistrement alors que ma table est vide !!!
Je ne comprend plus; ça devrait pourtant être évident, mais là je fatigue; si 
une âme charitable pouvait m'éclairer !
D'avance merci,
Martin
ResultSet.first est une fonction. Elle renvoie vrai si elle a pu être 
exécutée. Testes donc le résultat.

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


Re: [prog] Recherche de parents

2005-05-12 Par sujet Bernard Marcelly
Le 2005-05-12 15:17, Thomas Coquery a écrit :
getContainer() alors ???
[EMAIL PROTECTED] a écrit :
J'ai essayé :
oSheet = oCell.getParent() ==> Propriété ou méthode introuvable...
Je suppose que tu as essayé getParent();
On peut continuer longtemps à deviner... Utilisez Xray pour inspecter 
les propriétés et fonctions disponibles sur un objet.
La réponse est dans le chapitre 5.4 du HowTo API OpenOffice (presque) 
sans peine. Et bien sûr dans le livre Programmation OpenOffice.org p287.

CoordCellule = UneCellule.CellAddress
FeuilleCourante = CoordCellule.Sheet
FeuilleCourante donne le numéro de la feuille dans le tableur.
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


RE: [prog] Resultset non nul pour une table vide

2005-05-12 Par sujet Jean-Claude . David2
Ci dessous extraits de la doc qui expliquent pour le resultset qu'un
executequery n'est jamais null, et que le curseur est positionné à l'origine
"before the first row"


Jean-Claude

=
executeQuery( [in] string sql) raises(SQLException ); 

Description  : executes a SQL statement that returns a single ResultSet. 
Parameter sql : the SQL statement which should be executed 
Returns : a ResultSet that contains the data produced by the query; never
NULL 
Throws : SQLException if a database access error occurs.  


next()  raises( SQLException ); 

Description : moves the cursor down one row from its current position. 
A ResultSet cursor is initially positioned before the first row; the first
call to next makes the first row the current row; the second call makes the
second row the current row, and so on. 

If an input stream is open for the current row, a call to the method next
will implicitly close it. The ResultSet's warning chain is cleared when a
new row is read. 

Returns : true if successful 
Throws : SQLException if a database access error occurs. 


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



RE: [prog] Resultset non nul pour une table vide

2005-05-12 Par sujet Jean-Claude . David2
De mémoire, il me semble que le pointeur du resultSet pointe sur
l'enregistrement "avant" le premier enregistrement.
Je le parcoure alors de la manière suivante :

oRst = oStatement.ExecuteQuery(strSQL) 'Exécution de la requête
'Parcoure les enregistrements
Do While oRst.Next
...
Loop

Le IsNull() doit seulement indiquer la réussite de l'ouverture du resultset.

Jean-Claude


De : Martin blaizot [mailto:[EMAIL PROTECTED]
 
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("Materiel")
Connection = DataSource.GetConnection("","")
Matable = Connection.Tables.getbyname("Provisoire")
Statement = Connection.createStatement()
Resultset = Statement.executeQuery("SELECT *  FROM "& Matable.name &"")
If Not IsNull(Resultset) Then
 Resultset.first
 Print"le libellé de mon premier champ est : ",Resultset.getString(1)
End if
 
Il me trouve un enregistrement alors que ma table est vide !!!

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



[prog] Resultset non nul pour une table vide

2005-05-12 Par sujet Martin blaizot



Bonjour à tous,
 
je crois que je suis un peu fatigué ! 
 
le truc suivant est en train de me rendre fou 
:
 
J'ai une table qui ne contient aucun enregistrement 
(table "Provisoire" de la base "Matériel")
 
avec le code suivant,
 
DatabaseContext = 
createUnoService("com.sun.star.sdb.DatabaseContext")DataSource = 
DatabaseContext.getByName("Materiel")Connection = 
DataSource.GetConnection("","")Matable = 
Connection.Tables.getbyname("Provisoire")Statement = 
Connection.createStatement()Resultset = Statement.executeQuery("SELECT 
*  FROM "& Matable.name &"")If Not IsNull(Resultset) 
Then     Resultset.first
     Print"le libellé de mon premier 
champ est : ",Resultset.getString(1)
End if
 
 
Il me trouve un enregistrement alors que ma table 
est vide !!!
 
Je ne comprend plus; ça devrait pourtant être 
évident, mais là je fatigue; si une âme charitable pouvait m'éclairer 
!
 
D'avance merci,
 
Martin


RE: [prog] Recherche de parents

2005-05-12 Par sujet Jean-Claude . David2
Pas mieux, même résultat ;-(  

-Message d'origine-
De : Thomas Coquery [mailto:[EMAIL PROTECTED]
Envoyé : jeudi 12 mai 2005 15:17
À : prog@fr.openoffice.org
Objet : Re: [prog] Recherche de parents


getContainer() alors ???

[EMAIL PROTECTED] a écrit :

>J'ai essayé :
>oSheet = oCell.getParent() ==> Propriété ou méthode introuvable...
>
>
>Je suppose que tu as essayé getParent();

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



Re: [prog] Recherche de parents

2005-05-12 Par sujet Thomas Coquery
getContainer() alors ???
[EMAIL PROTECTED] a écrit :
J'ai essayé :
oSheet = oCell.getParent() ==> Propriété ou méthode introuvable...
Je suppose que tu as essayé getParent();
 


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


[prog] Liste des barres d'outils

2005-05-12 Par sujet Arnaud POUSSIER
Bonjour à tous, 

Existe-t-il une liste reprenant les dénominations des barres d'outils existante 
 ?

Merci d'avance

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



RE: [prog] Recherche de parents

2005-05-12 Par sujet Jean-Claude . David2
J'ai essayé :
oSheet = oCell.getParent() ==> Propriété ou méthode introuvable...


Je suppose que tu as essayé getParent();

[EMAIL PROTECTED] a écrit :

>Bonjour, je cherche à récupérer en StarBasic une référence sur le parent
>d'un objet ?...
>
>Je m'explique :
>
>Sub Test
>Dim oCell As Object
>   oCell = ThisComponent.Sheets(0).getCellRangeByName("A1")
>   Toto(oCell)
>End Sub
>
>Sub Toto(oCell As Object)
>Dim oSheet As Object 'Feuille parent de la cellule recue en paramètre
>   oSheet = ... (oCell) 'A faire pointer sur la feuille container de la
>cellule : ThisComponent.Sheets(0).
>   ...
>   ...
>End Sub
>
>Si je passe oCell en paramètre à ma procédure Toto, comment puis-je y
>récupérer un objet oSheet qui pointe sur la feuille parente de la référence
>passée en paramètre à ma procédure (ici ThisComponent.Sheets(0) ) ...
> 
>

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



[prog] fonctionnement du ServiceManager et du StarDesktop

2005-05-12 Par sujet Thomas Coquery
Toutes mes excuses à Bernard ... J'étais en tort et en plus je ne le 
comprenais pas...

Donc voici mon post concernant le ServiceManager,le Desktop et le 
serveur RPC

Je suis confronté à un problème de "serveur RPC".Il s'agit du message 
d'erreur que Delphi me renvoie. 
Mon application lance des publipostages avec OpenOffice très 
correctement mais elle a aussi la possibilité d'ouvrir des documents de 
la façon habituelle (pour les éditer).
Lors de l'ouverture de ces documents, l'utilisateur peut/doit fermer 
manuellement le document.
Or dans de nombreux cas il ne se contentera pas de fermer le document 
mais fermera aussi OpenOffice (enfin le StarDesktop si j'ai bien 
compris) et le processus de démarrage rapide.
Pendant ce temps mon application continue à tourner et si je veux 
relancer un publipostage (ou réouvrir un document pour l'utiliser) il 
m'est impossible de le faire car "le serveur RPC est absent".
J'en déduis que certains des objets lancés par la fonction 
ConnectOpenOffice des OOoTools de Bernard ont été fermés ou détruits 
mais ce n'est apparemment pas le cas...
Car si je teste leur existence (isnullempty) ils sont encore là...
Pourtant je ne peux plus utiliser ni "brige_GetStruct" ni 
"loadComponentFromUrl" ni "createUnoService".
Je n'arrive pas à relancer OpenOffice avec ConnectOpenOffice non plus 
(car visiblement il croit etre toujours connecté)...

Si quelqu'un pouvait m'éclairer sur le fonctionnement de tout çà et les 
raisons de mon problème...

Je vais préciser un peu ma question... Est ce quelqu'un a une idée de la 
façon dont je pourrais vérifier que openoffice est bien lancé... 
(processServiceManager et Desktop instanciés).Autrement que par le 
"isnullempty".
Si j'utilises isActive pour le Desktop cela m'indique juste si la 
fenêtre est active...

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


Re: [prog] fonctionnement du ServiceManager - pb de serveur RPC

2005-05-12 Par sujet Thomas Coquery
A moins que tu veuilles me dire qu'il ne faut pas que j'utilises le 
bouton "Répondre" pour poster un nouveau message mais "Ecrire"... auquel 
cas le message est passé...

Thomas Coquery a écrit :
Excuses moi Bernard mais il s'agit pour moi d'un nouveau sujet... A 
moins que j'ai choisi le même titre qu'un précédent dont je n'aurais 
pas eu connaissance donc ce serait tout à fait "à l'insu de mon plein 
gré"...
La mention du serveur RPC est juste pour expliquer quel message 
d'erreur je rencontre. Et je parle du ProcessServiceManager parce que 
je pense que cela vient de là...
Et dans le deuxième message j'essayais de préciser ma question pour 
que l'on puisse me répondre de façon simple...
Je ne pensais pas avoir enfreint une règle quelconque.

Bernard Marcelly a écrit :
Le 2005-05-12 09:49, Thomas Coquery a écrit :
Je suis confronté à un problème de "serveur RPC".

Pour démarrer un nouveau sujet, merci de créer un nouveau message, au 
lieu de répondre à un message.
Explications détaillées, lire 



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


Re: [prog] fonctionnement du ServiceManager - pb de serveur RPC

2005-05-12 Par sujet Thomas Coquery
Excuses moi Bernard mais il s'agit pour moi d'un nouveau sujet... A 
moins que j'ai choisi le même titre qu'un précédent dont je n'aurais pas 
eu connaissance donc ce serait tout à fait "à l'insu de mon plein gré"...
La mention du serveur RPC est juste pour expliquer quel message d'erreur 
je rencontre. Et je parle du ProcessServiceManager parce que je pense 
que cela vient de là...
Et dans le deuxième message j'essayais de préciser ma question pour que 
l'on puisse me répondre de façon simple...
Je ne pensais pas avoir enfreint une règle quelconque.

Bernard Marcelly a écrit :
Le 2005-05-12 09:49, Thomas Coquery a écrit :
Je suis confronté à un problème de "serveur RPC".

Pour démarrer un nouveau sujet, merci de créer un nouveau message, au 
lieu de répondre à un message.
Explications détaillées, lire 


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


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


Re: [prog] Recherche de parents

2005-05-12 Par sujet Thomas Coquery
Je suppose que tu as essayé getParent();
[EMAIL PROTECTED] a écrit :
Bonjour, je cherche à récupérer en StarBasic une référence sur le parent
d'un objet ?...
Je m'explique : 

Sub Test
Dim oCell As Object
oCell = ThisComponent.Sheets(0).getCellRangeByName("A1")
Toto(oCell)
End Sub
Sub Toto(oCell As Object)
Dim oSheet As Object 'Feuille parent de la cellule recue en paramètre
oSheet = ... (oCell) 'A faire pointer sur la feuille container de la
cellule : ThisComponent.Sheets(0).
...
...
End Sub
Si je passe oCell en paramètre à ma procédure Toto, comment puis-je y
récupérer un objet oSheet qui pointe sur la feuille parente de la référence
passée en paramètre à ma procédure (ici ThisComponent.Sheets(0) ) ...
 


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


Re: [prog] Calc - Passage de paramètre de type Range

2005-05-12 Par sujet Bernard Marcelly
Le 2005-05-12 00:05, Francois Gatto (xhydrogene) a écrit :
Bonsoir Didier,
J'ai du mal comprendre l'expression de ton besoin.
Didier Laroche a écrit :
Merci françois pour la fonction UBound qui renvoit bien la limite du 
tableau.
Cependant si une seule cellule est séléctionnée alor il ne considère 
plus le paramêtre comme un tableau et la fonction UBound plante.
On peut contourner le problème avec une gestion d'erreur ;-)
Cependant cette fonction est très utile dans mon exemple, mais elle ne 
répond pas au sujet qui est le passage d'un paramètre de type objet 
afin de pouvoir le manipuler facilement dans la procédure ou fonction. 
En effet pouvoir jouer aussi avec les formats et autres propriétés des 
cellules passées en paramètre. ;-)

Je crois que ton problème est que tu souhaites écrire une fonction en 
macro pour l'utiliser dans une formule dans une cellule de Calc.
Calc transmet à la fonction un tableau de valeurs, et non pas une 
collection de cellules. L'identité des cellules n'est pas accessible 
dans les paramètres de la fonction.

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


Re: [prog] type d'un champ dans une fenêtre

2005-05-12 Par sujet Bernard Marcelly
Le 2005-05-12 10:47, [EMAIL PROTECTED] a écrit :
Bonjour tout le monde !
je suis sur la version 1.1.4 et je voudrais connaître le type d'un champ saisi
dans une fenêtre...
Pour démarrer un nouveau sujet, merci de créer un nouveau message, au 
lieu de répondre à un message.
Explications détaillées, lire 

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


Re: [prog] fonctionnement du ServiceManager - pb de serveur RPC

2005-05-12 Par sujet Bernard Marcelly
Le 2005-05-12 09:49, Thomas Coquery a écrit :
Je suis confronté à un problème de "serveur RPC".
Pour démarrer un nouveau sujet, merci de créer un nouveau message, au 
lieu de répondre à un message.
Explications détaillées, lire 

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


Re: [prog] Re: [doc-fr] Citer du code issue du livre de programmation

2005-05-12 Par sujet Bernard Marcelly
Le 2005-05-12 09:30, Laurent Godard a écrit :
Bonjour Jean-Luc,
Merci pour ta question.
Face à certaine question sur prog , je pose la question de savoir si 
l'on peut citer(ou dans quel limite) du code présent dans le livre de 
programmation.

Je viens de répondre à un post sur le forum et le code est assez 
emprunté à un exemple fourni sur le bouquin, du coups je suis partagé 
entre aider et respecter les droits d'auteur , cela serai bien d'avoir 
leur avis.

L'esprit du livre est une transmission de "savoir" et d'experience. 
C'est en ce sens que nous avons indiqué que les exemples etaient 
librement reutilisables.

Je pense que tu peux tout à fait aider en respectant le droit d'auteur. 
Ce que tu peux faire, c'est de repondre à la question en donnant une 
exemple de code et indiquant les pages du livre où trouver de plus 
amples details ainsi que des precisisons
Donc pour ma part, celà ne pose pas de problemes bien au contraire sous 
reserve d'indiquer explicitement la provenance du code pour ce qui 
concerne les macros illustrant le discours du livre. Si une quelconque 
license est appliquée à unu routine (notament dans l'annexe B),  juste 
mentionner l'auteur et cette license

Voici donc ma position. J'espere avoir repondu à ta question
Je laisse le soin à Bernard d'apporter d'eventuels commentaires
Cordialement
Laurent
Je suis tout à fait d'accord avec Laurent:)
Se servir du livre pour fournir une réponse adaptée à la question, c'est 
transmettre un savoir assimilé et non faire une simple copie de 
l'original. Ajouter une référence contribue à montrer l'utilité du livre.
Les réponses données sur les listes de diffusion sont nécessairement 
assez courtes et ciblées sur un point spécifique. Quelques coups de 
projecteur dans la nuit. Alors que le livre aborde progressivement sur 
plusieurs centaines de pages des sujets complexes ou peu/mal/non 
documentés. Finalement, un livre est le meilleur moyen de rassembler et 
rendre facilement consultable une telle somme d'information; la preuve, 
je l'utilise moi-même systématiquement!

   Bernard Marcelly

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


Re: [prog] type d'un champ dans une fenêtre

2005-05-12 Par sujet Alain Nowak
Bonjour,
Pour savoir quel est le type d'un objet UNO, on doit utiliser la méthode 
supportsService présente sur tous ces objets. Ca marche comme ça :

'exemple bete
oDesktop = createUnoService("com.sun.star.frame.Desktop")   
if oDesktop.supportsService("com.sun.star.frame.Desktop") then
 msgBox "OK"
endif

Il reste qu'à trouver le nom de la classe de tes objets, et pour ça : 
soit on cherche dans le SDK, soit on crée un objet dutype voulu, on 
utilise XRay, et on regarde dans la partis "Services supportés"

--
Alain
PS : Pour poser une question, il vaut mieux créer un nouveau mail que 
faire "Répondre " à un mail existant, afin de créer un nouveau fil de 
discussion.

[EMAIL PROTECTED] a écrit :
Bonjour tout le monde !
je suis sur la version 1.1.4 et je voudrais connaître le type d'un champ saisi
dans une fenêtre...
je récupère mon texte en faisant :
maFenetre.getControl("monChamp")
et ensuite, je voudrais etre sur que le champ saisi est bien une value et pas un
text mais je ne sais pas comment le savoir.
je vois bien la propriété "Types" mais je ne sais pas ce qu'il y a dans cette
structure... et comment l'utiliser si c'est bien cela qu'il faut utiliser...
Merci pour votre aide.
William Gotti
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
 

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


[prog] Recherche de parents

2005-05-12 Par sujet Jean-Claude . David2
Bonjour, je cherche à récupérer en StarBasic une référence sur le parent
d'un objet ?...

Je m'explique : 

Sub Test
Dim oCell As Object
oCell = ThisComponent.Sheets(0).getCellRangeByName("A1")
Toto(oCell)
End Sub

Sub Toto(oCell As Object)
Dim oSheet As Object 'Feuille parent de la cellule recue en paramètre
oSheet = ... (oCell) 'A faire pointer sur la feuille container de la
cellule : ThisComponent.Sheets(0).
...
...
End Sub

Si je passe oCell en paramètre à ma procédure Toto, comment puis-je y
récupérer un objet oSheet qui pointe sur la feuille parente de la référence
passée en paramètre à ma procédure (ici ThisComponent.Sheets(0) ) ...
__
D'avance merci
Jean-Claude


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



Re: [prog] fonctionnement du ServiceManager - pb de serveur RPC

2005-05-12 Par sujet Thomas Coquery
Je vais préciser un peu ma question... Est ce quelqu'un a une idée de la 
façon dont je pourrais vérifier que openoffice est bien lancé... 
(processServiceManager et Desktop instanciés).

Thomas Coquery a écrit :
Je suis confronté à un problème de "serveur RPC".
Voilà : mon application lance des publipostages avec OpenOffice très 
correctement mais elle a aussi la possibilité d'ouvrir des documents 
de la façon habituelle (pour les éditer).
Lors de l'ouverture de ces documents, l'utilisateur peut/doit fermer 
manuellement le document.
Or dans de nombreux cas il ne se contentera pas de fermer le document 
mais fermera aussi OpenOffice (enfin le StarDesktop si j'ai bien 
compris) et le processus de démarrage rapide.
Pendant ce temps mon application continue à tourner et si je veux 
relancer un publipostage (ou réouvrir un document pour l'utiliser) il 
m'est impossible de le faire car "le serveur RPC est absent".
J'en déduis que certains des objets lancés par la fonction 
ConnectOpenOffice des OOoTools de Bernard ont été fermés ou détruits 
mais ce n'est apparemment pas le cas...
Car si je teste leur existence (isnullempty) ils sont encore là...
Pourtant je ne peux plus utiliser ni "brige_GetStruct" ni 
"loadComponentFromUrl" ni "createUnoService".
Je n'arrive pas à relancer OpenOffice avec ConnectOpenOffice non plus 
(car visiblement il croit etre toujours connecté)...

Si quelqu'un pouvait m'éclairer sur le fonctionnement de tout çà et 
les raisons de mon problème...

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


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


Re: [prog] Vecteur comme argument ?

2005-05-12 Par sujet Martin blaizot
Bonjour François,

Désolé; compte tenu de mon faible niveau (très débutant) je ne pensais pas
que cela était susceptible d'intéresser quelqu'un !

En fait je suis passé par une nouvelle table "provisoire". cela mérite
quelques explications :

Il s'agit d'une petite appli ( lancée par un BATCH; donc pas de doc en
cours) me permettant de gérer, mes devis, mes factures, mes clients etc ...

dans mon module1, j'ouvre une première boite dialogue, Dlg1 (dans laquelle
je saisi toute une série d'infos pour la création d'un devis). Dans cette
boite, j'ai un bouton qui appelle une autre boite, Dlg2. Cette boite Dlg2
est "gérée" dans un autre module.

(J'aurais pu tout coder dans le même module, mais j'ai tendance à séparer
tout de manière à ne pas avoir de modules trop long, pour m'y retrouver plus
facilement)

Cette Dlg2 contient 8 ListBox (chacune contenant la même liste de matériel
stockée dans une table DBF) avec en face des champs numériques pour saisir
des quantités et des prix.
Si le devis est validé, les données saisies dans cette boite vont être
stockées dans une table "Matériel supplémentaire". Mais quand je ferme ma
Dlg2 par OK, je ne sais pas encore si le devis sera validé tel quel, ou si
je viendrais modifier ces enregistrements. Il fallait donc que je conserve
le contenu de ces variables dans un petit coin, pour pouvoir éventuellement
revenir les modifier avant de les enregistrer dans ma table.

J'ai donc créé une nouvelle table (Matériel supplémentaire provisoire) que
je vide à la validation du devis.

Voilà, je ne suis pas certain d'avoir été très clair, désolé.

Amicalement,

Martin


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



Re: [prog] type d'un champ dans une fenêtre

2005-05-12 Par sujet william . gotti
Bonjour tout le monde !

je suis sur la version 1.1.4 et je voudrais connaître le type d'un champ saisi
dans une fenêtre...
je récupère mon texte en faisant :
maFenetre.getControl("monChamp")
et ensuite, je voudrais etre sur que le champ saisi est bien une value et pas un
text mais je ne sais pas comment le savoir.
je vois bien la propriété "Types" mais je ne sais pas ce qu'il y a dans cette
structure... et comment l'utiliser si c'est bien cela qu'il faut utiliser...


Merci pour votre aide.

William Gotti

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



[prog] fonctionnement du ServiceManager - pb de serveur RPC

2005-05-12 Par sujet Thomas Coquery
Je suis confronté à un problème de "serveur RPC".
Voilà : mon application lance des publipostages avec OpenOffice très 
correctement mais elle a aussi la possibilité d'ouvrir des documents de 
la façon habituelle (pour les éditer).
Lors de l'ouverture de ces documents, l'utilisateur peut/doit fermer 
manuellement le document.
Or dans de nombreux cas il ne se contentera pas de fermer le document 
mais fermera aussi OpenOffice (enfin le StarDesktop si j'ai bien 
compris) et le processus de démarrage rapide.
Pendant ce temps mon application continue à tourner et si je veux 
relancer un publipostage (ou réouvrir un document pour l'utiliser) il 
m'est impossible de le faire car "le serveur RPC est absent".
J'en déduis que certains des objets lancés par la fonction 
ConnectOpenOffice des OOoTools de Bernard ont été fermés ou détruits 
mais ce n'est apparemment pas le cas...
Car si je teste leur existence (isnullempty) ils sont encore là...
Pourtant je ne peux plus utiliser ni "brige_GetStruct" ni 
"loadComponentFromUrl" ni "createUnoService".
Je n'arrive pas à relancer OpenOffice avec ConnectOpenOffice non plus 
(car visiblement il croit etre toujours connecté)...

Si quelqu'un pouvait m'éclairer sur le fonctionnement de tout çà et les 
raisons de mon problème...

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


[prog] Re: [doc-fr] Citer du code issue du livre de programmation

2005-05-12 Par sujet Laurent Godard
Bonjour Jean-Luc,
Merci pour ta question.
Face à certaine question sur prog , je pose la question de savoir si 
l'on peut citer(ou dans quel limite) du code présent dans le livre de 
programmation.

Je viens de répondre à un post sur le forum et le code est assez 
emprunté à un exemple fourni sur le bouquin, du coups je suis partagé 
entre aider et respecter les droits d'auteur , cela serai bien d'avoir 
leur avis.
L'esprit du livre est une transmission de "savoir" et d'experience. 
C'est en ce sens que nous avons indiqué que les exemples etaient 
librement reutilisables.

Je pense que tu peux tout à fait aider en respectant le droit d'auteur. 
Ce que tu peux faire, c'est de repondre à la question en donnant une 
exemple de code et indiquant les pages du livre où trouver de plus 
amples details ainsi que des precisisons
Donc pour ma part, celà ne pose pas de problemes bien au contraire sous 
reserve d'indiquer explicitement la provenance du code pour ce qui 
concerne les macros illustrant le discours du livre. Si une quelconque 
license est appliquée à unu routine (notament dans l'annexe B),  juste 
mentionner l'auteur et cette license

Voici donc ma position. J'espere avoir repondu à ta question
Je laisse le soin à Bernard d'apporter d'eventuels commentaires
Cordialement
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]