[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 !

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

Messagepar jjber » 21 Juin 2021 10:32


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 édition par jjber le 22 Juin 2021 14:10, édité 1 fois.
JJB - Libre Office 7.1.4.2 (x64) sous Windows 10
jjber
Membre lOOyal
Membre lOOyal
 
Message(s) : 33
Inscrit le : 17 Mars 2021 16:00

Re: Ouvrir directement un formulaire au lancement de Libre O

Messagepar tintin » 21 Juin 2021 10:42

AOO 4.1.10 et LibO 7.0.6 / macOS 11.4 Big Sur.
AdoptOpenJDK_1.8.0_292 / Firefox / Safari / Thunderbird / Time Machine
Pour la sauvegarde de vos documents c'est ceinture ET bretelles
Avatar de l’utilisateur
tintin
GourOOu
GourOOu
 
Message(s) : 7483
Inscrit le : 18 Juil 2008 16:29
Localisation : F-Oise + F-Savoie

Re: Ouvrir un formulaire au lancement

Messagepar jjber » 21 Juin 2021 10:51

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
jjber
Membre lOOyal
Membre lOOyal
 
Message(s) : 33
Inscrit le : 17 Mars 2021 16:00

Re: Ouvrir un formulaire au lancement

Messagepar tintin » 21 Juin 2021 11:01

Voyez ici s'il il y la réponse à votre question.
AOO 4.1.10 et LibO 7.0.6 / macOS 11.4 Big Sur.
AdoptOpenJDK_1.8.0_292 / Firefox / Safari / Thunderbird / Time Machine
Pour la sauvegarde de vos documents c'est ceinture ET bretelles
Avatar de l’utilisateur
tintin
GourOOu
GourOOu
 
Message(s) : 7483
Inscrit le : 18 Juil 2008 16:29
Localisation : F-Oise + F-Savoie

[Résolu] Ouvrir un formulaire au lancement

Messagepar jjber » 22 Juin 2021 14:09

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   AgrandirRéduire
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
jjber
Membre lOOyal
Membre lOOyal
 
Message(s) : 33
Inscrit le : 17 Mars 2021 16:00

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

Messagepar rollmops » 23 Juil 2021 13:52

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/viewtopic.php?f=8&t=64207
OpenOffice 4.1.10 - Windows 7
Avatar de l’utilisateur
rollmops
Membre cOOnverti
Membre cOOnverti
 
Message(s) : 368
Inscrit le : 20 Déc 2017 15:45


Retour vers Macros et API

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 4 invité(s)