

![]() | Start a set with this search |
![]() | Include this search in one of my sets |
![]() | Exclude this search from one of my sets |
![]() | Permalink to these results Paste this link in email or IM: |
| Atom feed for tracking future search results Paste this URL into your reader: |
4 messages in org.openoffice.fr.prog[prog] Filtre sur les tables d'une ba...| From | Sent On | Attachments |
|---|---|---|
| vincent pinson | Jun 29, 2005 2:23 pm | |
| Jean...@i-carre.net | Jun 30, 2005 12:11 am | |
| Thomas Coquery | Jun 30, 2005 2:30 am | |
| PINSON Vincent | Jun 30, 2005 7:19 am |

![]() | Permalink for this message Paste this link in email or IM: |
![]() | Permalink for this thread Paste this link in email or IM: |
| Atom feed for this thread Paste this URL into your reader: |
| Subject: | [prog] Filtre sur les tables d'une base de données ? | Actions... |
|---|---|---|
| From: | vincent pinson (vpin...@astek.fr) | |
| Date: | Jun 29, 2005 2:23:20 pm | |
| List: | org.openoffice.fr.prog | |
Salut , je travaille sur la version 1.1.4 de oOo et je fais mes premiers pas dans les macros BASIC. Je souhaitais créer à la volée une base de données, et j'ai donc récupérer une macro permettant de faire cela.
La macro marche parfaitement pour la création et la supression de la base à l'ouverture et à la fermeture du document sxw.
Je souhaite maintenant filtrer à l'affichage la liste des tables de cette même base. A priori, il faut que j'utilise la propriété TableFilter, mais j'ai beau la triturer dans tous les sens, je ne sais pas comment l'appliquer. J'ai essayé ça => newInstance.TableFilter.(oNomSource) ça => newInstance.TableFilter(oMyArray) ou oMyArray est défini comme 1 tableau de chaine contenant le nom de ma table. et même ça => newInstance.TableFilter = oNomSource Quelle est la bonne formulation ???
Voici le code : ' **************************************************** ' * Déclaration ' **************************************************** const TypeSource="dBase" 'Mettre Calc, dBase ou MySQL (attention à la casse) const NomSource="areama" 'Si vide -> Nom de la Lettre Type const NomBase="" 'Nom et Chemin complet de la base (attention à la casse sur Linux) 'Si vide -> Chemin et Nom de la Lettre Type ' **************************************************** ' * Creation ' **************************************************** sub Creation_Source_De_Donnees() oURL= ConvertToURL ("C:\areama.dbf") oTabURL=split(oURL,"/") oNomFichier=oTabURL(uBound(oTabURL)) if NomSource="" then oNomSource=mid(oNomFichier, 1, len(oNomFichier)-4) else oNomSource=NomSource end if if NomBase="" then oNomBase=mid(oURL, 1, len(oURL)-4) select case TypeSource case "dBase": oNomBase=oNomBase & ".dbf" case "Calc": oNomBase=oNomBase & ".sxc" end select else oNomBase=NomBase end if oDBContext=createUnoService("com.sun.star.sdb.DatabaseContext") Reponse=oDBContext.hasByName(oNomSource) If Reponse then msgbox "La source de données " & oNomSource & " existe déjà, création impossible !" exit sub end if newInstance = oDBContext.createInstance oDBContext.registerObject(oNomSource, newInstance ) select case TypeSource case "dBase": newInstance.URL = "sdbc:dbase:" & oNomBase case "Calc": newInstance.URL = "sdbc:calc:" & oNomBase case "MySQL": newInstance.URL = "sdbc:mysql:odbc:" & oNomBase end select msgbox "Source de Données " & oNomSource & " (" & TypeSource & ") créée." newInstance.TableFilter.(oNomSource) end sub
-- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.323 / Virus Database: 267.8.6/33 - Release Date: 28/06/2005







