[Résolu][Base] Ouvrir un formulaire au lancement

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
jjber
Membre lOOyal
Membre lOOyal
Messages : 33
Inscription : 17 mars 2021 16:00

[Résolu][Base] Ouvrir un formulaire au lancement

Message par jjber »


La modération vous a écrit: Nous avons supprimé les termes inutiles dans le titre de votre question

Bonjour
Est-il possible, au lancement de Libre Office, de provoquer l'ouverture automatique d'un formulaire d'une BD ?
Merci d'avance
Dernière modification par jjber le 22 juin 2021 15:10, modifié 1 fois.
JJB - Libre Office 7.1.4.2 (x64) sous Windows 10
Avatar de l’utilisateur
tintin
GourOOu
GourOOu
Messages : 9341
Inscription : 18 juil. 2008 17:29
Localisation : F-Oise + F-Savoie

Re: Ouvrir directement un formulaire au lancement de Libre O

Message par tintin »

AOO 4.1.15 et LibO stable 7.6.5 / macOS Intel 13.6.5 Ventura
Adoptium-temurinJDK-jre_1.8.0_402 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles
jjber
Membre lOOyal
Membre lOOyal
Messages : 33
Inscription : 17 mars 2021 16:00

Re: Ouvrir un formulaire au lancement

Message par jjber »

Je sais comment ouvrir automatiquement un formulaire à l'ouverture d'une Base de Données par une macro.
Ma question était d'obtenir ce résultat (ouverture d'un formulaire) au lancement de Libre Office ...
Mais ce n'est peut être possible ?
JJB - Libre Office 7.1.4.2 (x64) sous Windows 10
Avatar de l’utilisateur
tintin
GourOOu
GourOOu
Messages : 9341
Inscription : 18 juil. 2008 17:29
Localisation : F-Oise + F-Savoie

Re: Ouvrir un formulaire au lancement

Message par tintin »

Voyez ici s'il il y la réponse à votre question.
AOO 4.1.15 et LibO stable 7.6.5 / macOS Intel 13.6.5 Ventura
Adoptium-temurinJDK-jre_1.8.0_402 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles
jjber
Membre lOOyal
Membre lOOyal
Messages : 33
Inscription : 17 mars 2021 16:00

[Résolu] Ouvrir un formulaire au lancement

Message par jjber »

J'apporte une réponse à cette question pour en faire profiter la communauté.

Si la base est référencée (Outils▸Options▸Base▸Base de données) tu peux associer une macro à l'ouverture de l'application par Outils▸Personnaliser▸onglet Événements▸Démarrer l'application. Il faut naturellement que la macro figure dans la librairie Standard de Mes macros (ou dans une autre librairie chargée).

Exemple de macro ouvrant un formulaire nommé "biblio" dans la source de données Bibliography

Code : Tout sélectionner

global oConnexion as object

sub PysOuvrirForm()
dim oForms as object, oForm as object
dim ptFichier(2) as new com.sun.star.beans.PropertyValue

oConnexion = ConnecterSource

oForms = oConnexion.Parent.DataBaseDocument.FormDocuments

ptFichier(0).Name = "ActiveConnection"
ptFichier(0).Value = oConnexion
ptFichier(1).Name = "OpenMode"
ptFichier(1).Value = "open"

oForm = oForms.loadComponentFromURL("biblio", "", 0, ptFichier())
oForm.CurrentController.Frame.ContainerWindow.toFront

end sub

Function ConnecterSource()
Dim sNomSource As String, sLogin As String, sPassword As String
Dim oSource As Object, oDbContext As Object

sNomSource = "Bibliography"
oDbContext = CreateUnoService("com.sun.star.sdb.DatabaseContext")
oSource = oDbContext.getByName(sNomSource)

sLogin = ""
sPassword = ""
oConnexion = oSource.getConnection(sLogin, sPassword)

if IsNull(oConnexion) then
  MsgBox("Connexion impossible", 16)
  Stop
end if
ConnecterSource = oConnexion
End Function
Merci au contributeur qui m'a fourni cette macro qui me permet de clôturer cette question
JJB - Libre Office 7.1.4.2 (x64) sous Windows 10
Avatar de l’utilisateur
rollmops
PassiOOnné
PassiOOnné
Messages : 665
Inscription : 20 déc. 2017 15:45

Re: [Résolu] Ouvrir un formulaire au lancement

Message par rollmops »

Bonjour,

Juste une précision
jjber a écrit : Il faut naturellement que la macro figure dans la librairie Standard de Mes macros (ou dans une autre librairie chargée).
Il faut également autoriser les macros dans Outils▸Options▸OpenOffice▸Sécurité
Sans quoi tu auras irrémédiablement ce symptôme :
https://forum.openoffice.org/fr/forum/v ... =8&t=64207
OpenOffice 4.1.15 - Windows 10
Verrouillé