IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Ouvrir un fichier .dbf avec VBS


Sujet :

VBScript

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 5
    Par défaut Ouvrir un fichier .dbf avec VBS
    Bonjour à tous!

    Voila, j'ai comme mission de synchroniser une base de donnée (clients) au format .dbf à un logiciel de planning (planningPME)

    Cette opération ce fait par une exécution d'un script .VBS au lancement du logiciel.

    J'ai déjà réussi à effectuer une synchronisation à un fichier .xls avec le script suivant, mais j'aimerai maintenant le faire pour un fichier .dbf

    Je vois deux solutions:

    - tenter de lire directement le fichier .dbs :échec pour moi jusque là....
    - convertir le fichier .dbf en .xls avec le script VBS: cela est possible?



    Voila, merci d'avance pour ceux qui pourraient m'aider

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    ---------------------------------------------------------------
    'Connection to PlanningPME
    'Register PlanningPME.dll before -> c:\windows\system32\regsvr32 
     
    PlanningPME.dll
    Set ppme = CreateObject("PlanningPME.Application")
    ppme.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Rose\Desktop\test_import.pp"
    ppme.Connect
     
    'Connection to Excel
     
    Set Connection = CreateObject("ADODB.Connection")
    'VB
    Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\clients.dbf; Extended Properties=" & Chr(34) & "Excel 8.0;HDR=Yes;IMEX=1" & Chr(34)"
     
    'pour le fichier dbf j'ai essayé sans succès avec ça: Extended Properties=dBASE IV
     
    Set rs = CreateObject("ADODB.Recordset")
    Set search = CreateObject("ADODB.Recordset")
    rs.Open "select * from [defa0006$]", Connection
     
    'boucle pour importer les donnees
    While rs.EOF = False
        ..........................
    rs.MoveNext
    Wend

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 5
    Par défaut Le fichier .dbf ne veut toujours pas s'ouvrir....
    Bon j'en suis là pour l'instant mais j'ai toujours cette erreur 80004005
    "n'est pas un chemin d'accès valide. Assurez-vous que le nom du chemin d'accès est correct et qu'une connexion est établie avec le serveur sur lequel réside le fichier"

    Voici mon code actuel:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    'Connection to PlanningPME
    'Register PlanningPME.dll before -> c:\windows\system32\regsvr32 
     
    PlanningPME.dll
    Set ppme = CreateObject("PlanningPME.Application")
    ppme.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Rose\Desktop\test_import.pp"
    ppme.Connect
     
    'Connection to Excel
     
    Set Connection = CreateObject("ADODB.Connection")
    'VB
    Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\CLIENTS.dbf;Extended Properties=dBase III;"'     ---->>>ça bug ICI
     
     
    Set rs = CreateObject("ADODB.Recordset")
    Set search = CreateObject("ADODB.Recordset")
    rs.Open "select * from [defa0006$]", Connection
     
    'boucle pour importer les donnees
    While rs.EOF = False
        ..........................
    rs.MoveNext
    Wend

  3. #3
    Nouveau candidat au Club
    Inscrit en
    Juillet 2009
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 2
    Par défaut
    Bonjour,

    Je pense que votre problème se situe en effet ici :
    Connection.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\CLIENTS.dbf;Extended Properties=dBase III;"

    Sur le site http://www.connectionstrings.com/dbf-foxpro il semble qu'il ne faille pas préciser le chemin vers le fichier DBF mais directement vers le répertoire qui contient les fichiers

    Cordialement
    Arnaud CHARRE
    PlanningPME

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 5
    Par défaut Merci
    Merci beaucoup Arnaud, ça marche maintenant
    enfin presque.....

    Si je puis me permettre, cette fois ça bloque pour la sélection :
    rs.Open "select * from [defa0006$]", Connection

    ça me dit: Le moteur de base de données Microsoft Jet n'a pas pu trouver l'objet 'defa0006$'............

  5. #5
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    et c'est quoi defa0006$ ...? le nom d'une table de ta base de donnée?

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 5
    Par défaut nom BDD
    Oui, alors il s'agissait en fait du nom de la feuille du fichier .xls lorsque je faisait la synchronisation avec un fichier EXCEL

    Pour la faire avec le fichier .dbf, ma ligne de code actuelle est
    rs.Open "select * from [clients]", Connection

    avec client le nom de ma base de donnée (j'ai à peut près tout essayé, clients.dbf / clients$/.....)

    L'erreur est la suivante: La table externe n'est pas dans le format attendu.

    Pourtant j'ouvre bien avec Properties=dBase III

    Avez vous une idée?

  7. #7
    Nouveau candidat au Club
    Inscrit en
    Juillet 2009
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 2
    Par défaut
    Bonjour,

    Avez-vous essayé (je pense que oui :p) sans les crochets :
    rs.Open "select * from client", Connection

    Sinon pour être sûr de la requête à effectuer, vous pouvez lier les données avec Access et interroger votre base DBF.

    Enfin, sachez que nous restons à votre disposition pour réaliser cet interfaçage.

    Cordialement
    Arnaud CHARRE
    PlanningPME

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 5
    Par défaut
    Oui j'ai essayé mais sans succès...

    Bien sur, je sais que vous êtes disponibles pour réaliser cet interface, je vous ai d'ailleurs contacté à ce propos.....(cela me ferai tant plaisir de vous refiler cette **** )

    Mais, celui que j'essaye de développer n'est que provisoire puisque l'éditeur de notre soft de gestion nous a annoncé tout récemment qu'il allait sortir une nouvelle version pour début septembre....et bien sur avec un tout autre format de base de donnée!
    J'essaye en vain de lui "tirer les vers du nez" pour qu'au moins il nous dise son format...

    Donc nous ne voulons pas investir pour une interface de quelques mois.
    Nous verrons bien si par la suite l'interface est développé en interne ou non.

Discussions similaires

  1. ouvrir un fichier log avec excel en vbs
    Par helpmeplz dans le forum VBScript
    Réponses: 4
    Dernier message: 15/09/2009, 01h11
  2. comment ouvrir un fichier XML avec excel
    Par ALCINA dans le forum XML/XSL et SOAP
    Réponses: 7
    Dernier message: 24/03/2006, 14h42
  3. Peut-on ouvrir un fichier bmp avec la lib X11 ?
    Par caesarvanou dans le forum C
    Réponses: 7
    Dernier message: 10/02/2006, 18h32
  4. ouvrir un fichier Excel avec une requete perso
    Par legillou dans le forum Access
    Réponses: 9
    Dernier message: 21/06/2005, 15h14
  5. [java][Oracle]Ouvrir un fichier(blob) avec le browser
    Par marsup54 dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 11/09/2003, 13h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo