Créer pilote ODBC en VBA pour Gestion commerciale 100

Forum consacré aux développements d'applications interfacées avec les logiciels Sage

Modérateurs: Super Modérateur, Modérateurs

Règles du forum
Merci de prendre connaissance des règles d'utilisation du forum

Avant de poster un nouveau message, utilisez la fonction RECHERCHER. Indiquez la VERSION de votre logiciel et toutes informations utiles à la résolution de votre question. Ne rédigez pas vos messages en MAJUSCULES. Soyez courtois et pensez aux formules de POLITESSE d'usage. Les messages à vocation COMMERCIALE ou PUBLICITAIRE seront supprimés.

*** LORSQU'UN SUJET EST RESOLU, SON AUTEUR DOIT EDITER LE 1ER MESSAGE DU SUJET EN HAUT DE PAGE ET COCHER "SUJET RESOLU" ***

Créer pilote ODBC en VBA pour Gestion commerciale 100

Messagede 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...
Bobdu69
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

Messagede Bobdu69 » Lun 26 Nov 2007 10:21

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

Messagede 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...
Steph37
Posteur néophyte
Posteur néophyte
 
Messages: 15
Inscription: Dim 8 Juil 2007 10:05
Localisation: Tours

Messagede 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.
Bobdu69
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

Messagede 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.
Francis
Posteur actif
Posteur actif
 
Messages: 43
Inscription: Ven 31 Aoû 2007 14:30

Messagede 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.
Bobdu69
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

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

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

Messagede 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:
Le_Maraudeur
Super Contributeur
Super Contributeur
 
Messages: 104
Inscription: Jeu 12 Juil 2007 10:39

Messagede 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.
Bobdu69
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

Messagede 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:
Le_Maraudeur
Super Contributeur
Super Contributeur
 
Messages: 104
Inscription: Jeu 12 Juil 2007 10:39

Messagede 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
Bobdu69
Posteur néophyte
Posteur néophyte
 
Messages: 8
Inscription: Ven 23 Nov 2007 16:35

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

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

Messagede Le_Maraudeur » Jeu 10 Jan 2008 16:04

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


Retourner vers Développements ODBC, Objets métiers, SQL

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités