Bonjour,
je réalise actuellement un base de données mysql couplé a un système déjà bien mis en place d'accès via Base ( Access version Openoffice )
Je me bute à un problème:
A l'aide d'un formulaire, je permet a l'utilisateur de créer une offre pour un services.
Quand l'utilisateur rentre une client, les données de son client vont automatiquement ce mettre dans les champs en question ( en affichage )
grâce à cette macro :
Code :
- REM ***** BASIC *****
- Sub AfficheChamp
- dim oDoc as object
- dim oForm as object
- dim oclient as string
- dim otelephone as string
- dim ocontact as string
- dim otelecopie as string
- dim oattache as string
- dim oRet as object
- oDoc = ThisComponent
- oForm = oDoc.DrawPage.Forms.getByName("MainForm" )
- oNom = oForm.getByName("ComboBox" ).Text
-
- ' Creation d'une jeu de lignes pour la requête SQL
- oRet = createUnoService("com.sun.star.sdb.RowSet" )
- oRet.DataSourceName = "OFFRES"
- oRet.CommandType = com.sun.star.sdb.CommandType.COMMAND
-
- req = "SELECT telephone, telecopie, attache, contact FROM clients WHERE client = '"+ oNom + "'"
- oRet.SetPropertyValue("Command",req)
- oRet.Execute()
- if oRet.RowCount > 0 then
- oRet.next()
- oForm.getByName("txttelephone" ).text = oRet.getString(1)
- oForm.getByName("txttelecopie" ).text = oRet.getString(2)
- oForm.getByName("txtattache" ).text = oRet.getString(3)
- oForm.getByName("txtdestinataire" ).text = oRet.getString(4)
- endif
- oDoc.drawpage.forms
- End Sub
|
Résultat obtenu: Un simple affichage dans les champs, une fois le bouton "enregistrer" enclencher, les valeurs ne sont pas conserver. Un peu comme si elle n'existait pas.
Résultat recherché: J'aimerais que ces valeurs s'inscrivent dans la base de données et ne s'affichent pas simplement. Le simple affichage de données n'est d'aucune utilité.
Serait t-il possible de rajouter des liens dans cette macro pour qu'elle inscrivent les données ou permettent qu'elles soit enregistrables?
Merci d'avance pour votre précieuse aide