[VB/VBA/VBS] Afficher des valeurs en fonction des données d'un champ

Afficher des valeurs en fonction des données d'un champ [VB/VBA/VBS] - VB/VBA/VBS - Programmation

Marsh Posté le 02-04-2008 à 14:19:11    

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 :
  1. REM  *****  BASIC  *****
  2. Sub AfficheChamp 
  3.    dim oDoc as object
  4.    dim oForm as object
  5.    dim oclient as string
  6.    dim otelephone as string
  7.    dim ocontact as string
  8.    dim otelecopie as string
  9.    dim oattache as string
  10.    dim oRet as object
  11.    oDoc = ThisComponent
  12.    oForm  = oDoc.DrawPage.Forms.getByName("MainForm" )
  13.    oNom = oForm.getByName("ComboBox" ).Text
  14.      
  15.    ' Creation d'une jeu de lignes pour la requête SQL
  16.    oRet = createUnoService("com.sun.star.sdb.RowSet" )
  17.       oRet.DataSourceName = "OFFRES"
  18.       oRet.CommandType = com.sun.star.sdb.CommandType.COMMAND
  19.      
  20.       req = "SELECT telephone, telecopie, attache, contact FROM clients WHERE client = '"+ oNom + "'"
  21.    oRet.SetPropertyValue("Command",req)
  22.     oRet.Execute()
  23.    if oRet.RowCount > 0 then
  24.       oRet.next()
  25.       oForm.getByName("txttelephone" ).text = oRet.getString(1)
  26.       oForm.getByName("txttelecopie" ).text = oRet.getString(2)
  27.       oForm.getByName("txtattache" ).text = oRet.getString(3)
  28.       oForm.getByName("txtdestinataire" ).text = oRet.getString(4)
  29.    endif
  30.    oDoc.drawpage.forms
  31. 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

Reply

Marsh Posté le 02-04-2008 à 14:19:11   

Reply

Marsh Posté le 04-04-2008 à 14:21:54    

Le code que tu postes ne ressemble pas à du VB.
Si je te lis bien il s'agit de la gestion de bases de OpenOffice, dont le langage de programmation n'est pas compatible avec VBA.
Je ne suis pas sûr que quelqu'un ici pourra te répondre.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed