Bonjour,
 
Je cherche à charger un formulaire de base intégrée à parti d’une
requête SQL définie dynamiquement par macro. 
 
Dans les propriétés du formulaire en mode conception, j’ai inscris SQL
en type de donnée, mais je n’arrive pas a atteindre la propriété «
Contenu » par macro. J’ai essayé deux choses ( en commentaire dans le
code) :
 
-          de la définir comme argument Propertyvalue dans la méthode
LoadfromURL
-          De l’appeler une fois le formulaire chargé,
Quelqu’un aurait il une idée ? Merci d’avance … Nico
 
Mon code : 
 
dbDoc = maSource.DatabaseDocument
dbDoc = StarDesktop.loadComponentFromURL(adrOdb, "_blank", 0, OdbOpt())
 
lesFormulaires = dbDoc.FormDocuments
 
stdOpenArgs(0).Name = "ActiveConnection"
GetConnected = dbDoc.Datasource.getConnection("","")
stdOpenArgs(0).Value = getConnected
stdOpenArgs(1).Name = "OpenMode"
stdOpenArgs(1).Value = "open"
 
SQL="select * from ""Table CV"" WHERE ((""Nom"" ='Stéphane PIETRI')) " 
'stdOpenArgs(2).Name="Command"
'stdOpenArgs(2).Value=SQL
 
monform= lesFormulaires.loadComponentFromURL(nomFormulaire, "_blank", 0,
stdOpenArgs())
'monform.command=SQL
'monform.reload
End Sub
 
 
PS : Je m’appuis sur l’exemple de la macro 8 du How Too de Tony
Galmiche, celle-ci est construite sur un document formulaire extérieur a
Base.
 
Voici son code : 
Sub Selectionner_Enregistrement(oEvt as object)
            dim oControl as object
            dim oForm as object
            dim LaSelection as string
            dim SQL as string
 
            'Le controle qui appel la macro
            oControl=oEvt.source
            
            'Résultat de la sélection
            LaSelection=oControl.SelectedItem
            oForm=thiscomponent.drawpage.Forms.GetByName("Formulaire1")
 
            'Défini la requete SQL
            SQL="select * from biblio where Identifier='" + LaSelection
+ "' " 
            oForm.command=SQL
<= je n’arrive pas a atteindre ce command ou son equivalent
            'Recharge le formulaire avec la nouvelle requete SQL 
            oForm.reload 
End Sub          
 
 

Répondre à