5 messages in org.openoffice.fr.progRe: [prog] Prog Une erreur dans une m...
FromSent OnAttachments
Jean SympaJul 1, 2009 2:22 am 
Thibault VataireJul 1, 2009 3:00 am 
Jean SympaJul 1, 2009 8:15 am.jpg
Jean SympaJul 2, 2009 1:21 am 
Francois GattoJul 2, 2009 4:06 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: [prog] Prog Une erreur dans une macroActions...
From:Jean Sympa (jsy@free.fr)
Date:Jul 2, 2009 1:21:35 am
List:org.openoffice.fr.prog

Merci Thibault,

Mon exemple se trouve ici:

http://www.cijoint.fr/cjlink.php?file=cj200906/cij0oOkNzL.odb

J'ai placé le code sur une seule ligne et j'ai compilé la macro.

Quand j'ouvre le formulaire et clique sur le bouton Client:

- en mode Ouvrir: Il ne se passe rien. - en mode Modifier: j'accède aux propriétés du bouton.

Quand je veux exécuter la macro, j'ai le message:

Pour des raisons de sécurité, il est impossible d'exécuter cette macro.

Pour plus d'information, vérifiez les paramètres de sécurité.

J'y perds mon latin

Cordialement

Papy

Thibault Vataire a écrit :

Problème de mise en forme de mon message.

Les deux lignes

OpenForm( thisComponent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, et thisComponent.ActiveConnection, "FmTbClients")

correspondent en fait à une seule et même ligne de code.

Cordialement,

T. Vataire

----- Mail Original ----- De: "Jean Sympa" <jsy@free.fr> À: pr@fr.openoffice.org Envoyé: Mercredi 1 Juillet 2009 17h16:10 GMT +02:00 Harare / Pretoria Objet: Re: [prog] Prog Une erreur dans une macro

Merci Thibault,

J'ai effectué le remplacement. A la compilation il y a une erreur

Cordialement

Papy

Thibault Vataire a écrit :

Bonjour,

Lorsque l'on associe l'exécution d'une macro à un évènement de l'application en
passant par le menu Outils > Personnaliser > Événements, l'évènement à l'origine
du déclenchement de la macro n'est pas passé en paramètre.

Il faut donc remplacer :

Sub onClickOuvrirFmTbClients( oEvent as variant ) OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbClients") end sub

par :

Sub onClickOuvrirFmTbClients() OpenForm( thisComponent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, thisComponent.ActiveConnection, "FmTbClients") end sub

Cordialement,

T. Vataire

----- Mail Original ----- De: "Jean Sympa" <jsy@free.fr> À: "Prog" <pr@fr.openoffice.org> Envoyé:
Mercredi 1 Juillet 2009 11h23:18 GMT +02:00 Harare / Pretoria Objet: [prog] Prog Une erreur dans une macro

Bonjour à toutes et à tous,

Prog Une erreur dans une macro

Je voudrais, au démarrage d'une application, afficher un menu avec trois options. Je voudrais associer à chaque option un bouton qui me permettrait d'ouvrir un sous formulaire. Le retour d'un sous formulaire au menu ferait appel à un deuxième bouton.

Jean-Michel Pierre et François Gatto m'ont proposé un exemple. Il y a une erreur dans le formulaire, ouverture des formulaires. Je n'arrive pas à la corriger

REM ***** BASIC *****

' ouverture des formulaires

' se fait par appel d'une fonction

Sub onClickOuvrirFmTbClients( oEvent as variant )

OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbClients")

end sub

*Erreur d'exécution BASIC*

*L'argumentt n'est pas facultatif*

Sub onClickOuvrirFmTbRegion( oEvent as variant )

OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbRegion")

end sub

Sub onClickOuvrirFmTbDestinataires( oEvent as variant )

OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbDestinataires")

end sub

Sub onClickOuvrirFmTbProduits( oEvent as variant )

OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbProduits")

end sub

Sub onClickOuvrirFmTbLivraisonProduits( oEvent as variant )

OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbLivraisonProduits")

end sub

function OpenForm( formContainer as variant, oConnection as variant, sFormName as string) as variant

Dim aProp(1) As New com.sun.star.beans.PropertyValue

aProp(0).Name = "ActiveConnection"

aProp(0).Value = oConnection

aProp(1).Name = "OpenMode"

aProp(1).Value = "open"

OpenForm = formContainer.loadComponentFromURL(sFormName,"_blank",0,aProp())

end function

Avec mes remerciements

Cordialement

Papy