Créer pilote ODBC en VBA pour Gestion commerciale 100

Cette section est consacrée aux développements d'applications interfacées avec les logiciels Sage.

Modérateurs: Super-Apogea, Super Modérateur

Créer pilote ODBC en VBA pour Gestion commerciale 100

de Bobdu69 » Ven 23 Nov 2007 16:53

Bonjour à tous,

J'ai un petit probleme pour créer un pilote ODBC en VBA pour les programmes SAGE ayant en entré 2 fichiers.

Par ex, pour Gestion commerciale 100 : un fichier .mae et un fichier .gcm
Pareil pour Moyen de paiement 100 et Immobilisations 100 donc.

Pour un fichier (avec Comptabilite 100 par ex) aucun problème, voici mon code (trouvé sur Internet) :

Code: Tout sélectionner
Public Function AddDSNA(FileName As String, Nom_du_DSN As String, Nom_du_Logiciel As String) As Boolean

Dim intRet As Long

Dim strDriver As String
Dim strAttributes As String

'Indique le driver SAGE.
strDriver = Nom_du_Logiciel

'Indique les attributs delimités par le caractère null.
'Indique le nom du DSN ainsi que son chemin d'accès.

strAttributes = strAttributes & "DSN=" & Nom_du_DSN & Chr$(0)
strAttributes = strAttributes & "DBQ=" & FileName & Chr$(0)

intRet = SQLConfigDataSource(vbAPINull, ODBC_ADD_DSN, _
strDriver, strAttributes)

AddDSNA = CBool(intRet)

If AddDSNA = True Then
' MsgBox "ok pour dsn access"
Else
MsgBox "Une erreur s'est produite lors de la connexion à la base de données Access. " _
& "Veuillez vérifier si le chemin est correct et retenter une connexion. Si le " _
& "problème persiste, veuillez contacter votre administrateur"
 cheminaccess.Show
End If
End Function


Donc ça sa marche pour un fichier, mais avec 2 fichiers, je ne trouve pas comment prendre en compte le 2eme fichier.

Si quelqu'un pouvait m'aider, sa serait vraiment sympa.

Merci d'avance, bye...
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

de Bobdu69 » Lun 26 Nov 2007 10:21

Allez, une petite aide svp, j'en ai vraiment besoin.
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

de Steph37 » Mer 28 Nov 2007 19:45

En fait c'est dans le DSN que l'on définit les 2 fichiers à utiliser.
Il faut aller dans Panneau de Config / Outils d'Administration / Sources de données ODBC et créer une source de donnée qui utilise le driver Sage.
Bien entendu, il faut avoir le driver Sage ODBC...
Posteur néophyte
Posteur néophyte
 
Messages: 15
Inscription: Dim 8 Juil 2007 10:05
Localisation: Tours

de Bobdu69 » Jeu 29 Nov 2007 12:55

Oui, ca je suis d'accord, en le faisant en manuelle c'est simple, mais moi je veux le faire en VBA, je veux savoir les paramètres en VBA, d'ou mon problème.

Dans l'attente (désespéré lol) d'une réponse...

Bye.
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

de Francis » Jeu 29 Nov 2007 16:53

Bobdu69 a écrit:Oui, ca je suis d'accord, en le faisant en manuelle c'est simple, mais moi je veux le faire en VBA, je veux savoir les paramètres en VBA, d'ou mon problème.

Dans l'attente (désespéré lol) d'une réponse...

Bye.

Je pense que tu as un bout de réponse dans la doc "kitodbc.pdf" dans l'annexe 6 qui reprend le principe d'une création d'une source de données sous visual basic.
Il s'agit d'une connection par des ADO.
Contributeur
Contributeur
 
Messages: 53
Inscription: Ven 31 Aoû 2007 14:30

de Bobdu69 » Ven 30 Nov 2007 10:24

Merci, mais ce n'est pas ce dont j'ai besoin. Dans le document que tu me parle, ils disent comment se connecter/déconnecter de la source ODBC, mais pas comment la créer.

En gros, ce qu'on me demande, c'est de pouvoir créer la source ODBC en VB pour ne pas aller dans panneau de config > source de données (ODBC) > ....

Donc avec un fichier en paramètre, comme pour la Comptabilité 100, j'arrive, le paramètre c'est DBQ=Fichier.mae. C'est avec 2 fichiers que je n'arrive pas, donc pour Gestion commerciale 100, Immobilisations 100 et Moyen de paiement 100, tous ceux avec 2 fichiers en paramètres.

Si quelqu'un sait, qu'il n'hésite pas...

Bye.
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

de Bobdu69 » Mar 4 Déc 2007 17:39

Allez une ultime tentative.... svp
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

de Le_Maraudeur » Mar 11 Déc 2007 16:04

Bah, tu peux toujours aller travailler dans la Base de registre ! :wink:

Il suffit de mettre à jour la(les) clé(s) ODBC de la Base de registre qui contient(nnent) le chemin vers les Fichier de Compta, Gescom, etc.

C'est le principe même des DSN ODBC ! :wink:
Super Contributeur
Super Contributeur
 
Messages: 129
Inscription: Jeu 12 Juil 2007 10:39

de Bobdu69 » Mar 11 Déc 2007 18:27

Non mais personne ne comprend ma question lol, je veux juste les paramètres pour créer un DSN Gestion commerciale 100 en VB/VBA, c'est inutile d'aller dans la base de registre pour ça.
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

de Le_Maraudeur » Mer 12 Déc 2007 11:17

Inutile pas tant que ça puisque si tu avais été regarder dans la Base de registre comment fonctione une DSN de gestion commerciale, tu te serais rendu compte qu'il te manque un paramètre dans ta fonction SQLConfigDataSource ! (j'insiste, je te conseille vivement d'aller jeter un coup d'oeil :wink: )

En gros tu oublies de préciser à la fois le fichier de Gestion Co et de Compta.

Ca doit donner ceci (ou un truc du genre, essayer avec une virgule juste avant le "FILE2" si ça marche pas comme ça, je connais pas du tout la syntaxe de ce genre de fonction, comme je dis, je travaille directement dans la Regitry pour mes applis):

strAttributes = strAttributes & "DSN=" & Nom_du_DSN & Chr$(0)
strAttributes = strAttributes & "DBQ=" & FileNameGescom & Chr$(0)
strAttributes = strAttributes & "FILE2=" & FileNameCompta & Chr$(0)


A plus :wink:
Super Contributeur
Super Contributeur
 
Messages: 129
Inscription: Jeu 12 Juil 2007 10:39

de Bobdu69 » Ven 14 Déc 2007 10:05

Je te remercie grandement mec !! vraiment, c'est exacement ce que je voulais, enfin du moins ca en a l'apparence, je testerai ca et je viendrai dire si ca marche ou pas, ca pourra peut-être servir à quelqu'un d'autre.

Encore merci...

Bye
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

de Bobdu69 » Ven 14 Déc 2007 10:17

C'est bon, ca marche nikel !! Merci Merci :D
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

de Le_Maraudeur » Jeu 10 Jan 2008 16:04

De rien ! :wink:
Super Contributeur
Super Contributeur
 
Messages: 129
Inscription: Jeu 12 Juil 2007 10:39


Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités