Comme beaucoup, c'est le vent du désespoir qui me pousse à formuler une question car je n'ai trouvé aucune réponse dans les post existants. Je tiens d'abord à féliciter le travail qui est fait sur ce forum car 80% de mon masque provient de chez vous
Je travaille sur un masque de saisie pour des enquêtes foncières. Le masque est conçu sous OpenOffice Base et la base de données se trouve sur un serveur Postgres/PostGIS.
Je cherche à récupérer une valeur "ID_Exploitant" directement lancée au click d'un bouton du formulaire. J'ai récupéré le code suivant :
Code : Tout sélectionner
Dim databasecontext as Object
Dim base_donnee as Object
Dim base_donnee_nom as String
Dim base_donnee_noms as Object
Dim connexion as Object
Dim statement As Object
Dim resultat_requete As Object
databasecontext = createUnoService("com.sun.star.sdb.DatabaseContext")
' afficher toutes les bases de données du répertoire courant
Dim i as Integer
base_donnee_noms = databasecontext.getElementNames()
For i = 0 To UBound(base_donnee_noms())
MsgBox CurDir & "\" & base_donnee_noms(i)
Next i
' connexion
Dim login as String
Dim password as String
base_donnee_nom = "LTS01"
login = "postgres"
password = "chanel1981"
base_donnee = databasecontext.getByName(base_donnee_nom)
connexion = base_donnee.getConnection(login,password)
if IsNull(connexion) then
MsgBox("Connexion impossible", 16)
Exit Sub
end if
statement = connexion.createStatement()
'msgbox statement.Dbg_Methods
'msgbox statement.Dbg_Properties
' pour lire les données dans la table "table_personne" de la base "base_00001.odb"
' données recherchées à lire dans la table "table_personne"
Dim donnee_1 as String
Dim donnee_2 as String
donnee_1 = "porte"
donnee_2 = "pit"
' nombre de données retournées par la requête
Dim nombre_donnee_retournee as Long
nombre_donnee_retournee = 1
requete = "SELECT id_exploitant FROM LTS01.public.enquete WHERE id_enquete = ValInt1;"
'msgbox requete
resultat_requete = statement.executeQuery(requete)
Exploitant = resultat_requete.getstring(1)Je suis convaincu que mon code présente des erreurs mais fin de semaine, fatigué de chercher, vous êtes mon dernier espoir.
Merci d'avance à vous tous
