LibreOffice Base macro et formulaire

Résolu/Fermé
CCC94 Messages postés 13 Date d'inscription mardi 12 mars 2019 Statut Membre Dernière intervention 4 mars 2020 - Modifié le 27 mars 2019 à 14:35
CCC94 Messages postés 13 Date d'inscription mardi 12 mars 2019 Statut Membre Dernière intervention 4 mars 2020 - 6 avril 2019 à 19:42
Bonjour à vous...
Je travaille toujours sur ma base libreoffice base. Je n'arrive pas à mettre en place des macros.
Je veux réaliser sur mon formulaire des boutons qui m'ouvrent des formulaires liés à des requêtes. En cherchant, j'ai vu que c’était possible en utilisant des macros... et en principe la commande n'est pas d'une complexité folle... mais j'y suis depuis une semaine... sans résultat....
En principe le code est:
Function OpenForm( formContainer as variant, oConnection as variant, sFormName as string, optional strMode as string ) as variant
Dim aProp(1) As New com.sun.star.beans.PropertyValue
Dim openMode as string
if ismissing( strMode ) then
openMode = "open"
else
openMode = strMode
endif
aProp(0).Name = "ActiveConnection"
aProp(0).Value = oConnection
aProp(1).Name = "OpenMode"
aProp(1).Value = strMode
OpenForm = formContainer.loadComponentFromURL(sFormName,"_blank",0,aProp())
End Function

Sub onClickOuvrirR-Festival( oEvent as variant )
OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "R-Festival")
end sub


Mais je n'obtient que des messages d'erreurs type :

Erreur de syntaxe BASIC.
Symbole inattendu : -. ou End If.


J'ai essayé pas mal de formules, elles génèrent toutes des messages d'erreurs...

EDIT : Ajout des balises de code

Please... help....
Merci beaucoup... Je ne m'en sors pas....
A voir également:

5 réponses

J’ai aussi essayé ça :

REM ***** ouvrir et fermer des formulaires *****

Function OpenForm( formContainer as variant, oConnection as variant, sFormName as string, optional strMode as string ) as variant
Dim aProp(1) As New com.sun.star.beans.PropertyValue
Dim openMode as string
if ismissing( strMode ) then
openMode = "open"
else
openMode = strMode
endif
aProp(0).Name = "ActiveConnection"
aProp(0).Value = oConnection
aProp(1).Name = "OpenMode"
aProp(1).Value = strMode
OpenForm = formContainer.loadComponentFromURL(sFormName,"_blank",0,aProp())
End Function

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


Sub fermer_formulaire
ThisComponent.CurrentController.Frame.close(True)
End Sub


et j'ai cette erreur:

Erreur d'exécution BASIC.
Une exception s'est produite :
Type: com.sun.star.lang.IllegalArgumentException
Message: Invalid value type for 'OpenMode'.
Expected: string
Found: void.


Si quelqu'un peut me donner ce code pour libreOffice Base..... Merciiiiiiii
1
jordane45 Messages postés 38141 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
27 mars 2019 à 14:36
Bonjour,

As tu essayé End If (en deux mots )
0
CCC94 Messages postés 13 Date d'inscription mardi 12 mars 2019 Statut Membre Dernière intervention 4 mars 2020
27 mars 2019 à 16:43
bonjour,
Merci pour la réponse.... oui rien y fait, j'ai essayé de corriger, j'ai Que des erreurs... je pense que c'est tout le code qui n'est pas bon...
Si d’autre idée... merci
0
jordane45 Messages postés 38141 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
27 mars 2019 à 17:18
Je ne fais pas de LibreOffice.
Je n'ai fait que répondre pour une erreur qui m'a sautée aux yeux....
0
Merci ....
0
CCC94 Messages postés 13 Date d'inscription mardi 12 mars 2019 Statut Membre Dernière intervention 4 mars 2020
2 avril 2019 à 09:24
Bonjour à vous.

JE rame comme un fou depuis des semaines, tous mes essais sont des échecs.... la seule version qui ne transforme pas mon ordi en sapin de noël d'erreurs qund je clic sur le bouton "ouvrir formulaire F_GrandCOLLER" est celle que vous pouvez télécharger via ce lien :
pianodeon.free.fr/Base CCM.odb

Merci de votre aide.....
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
CCC94 Messages postés 13 Date d'inscription mardi 12 mars 2019 Statut Membre Dernière intervention 4 mars 2020
6 avril 2019 à 19:42
bonjour,
il y avait la suite des messages ici... avec plein de choses inintéressantes ....
Ou sont elles passées ???
Merci de vos retours
0