Bonjour à tous,
Voici un autre problème que j'ai et sur lequel je m'arrache les cheveux depuis plusieurs jours.
J'ai un Web Service qui est supposé ce connecter à une base de données dont il connait le chemin et exécuter des requêtes dessus, après il traite les résultats, etc ... Le problème vient au moment de la récupération des données dans la table de la base de données. Voici un extrait de mon code pour me connecter à la base de données :
Ce code-ci renvoie vrai jusqu'à : "RENVOYER Recuperation_Donnees_Table()"
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 gcnxCnx_Access..Provider = "Microsoft.ACE.OLEDB.12.0" gcnxCnx_Access..Utilisateur = "" gcnxCnx_Access..MotDePasse = "" gcnxCnx_Access..Serveur = gsBase gcnxCnx_Access..BaseDeDonnées = "" gcnxCnx_Access..Accès = hOLectureEcriture gcnxCnx_Access..OptionsCurseur = hCurseurServeur // Ouverture de la connexion SI HOuvreConnexion(gcnxCnx_Access) ALORS RENVOYER Recuperation_Donnees_Table() SINON Ajoute_Info_Log(HErreurInfo(hErrComplet)) RENVOYER Faux FIN
Le code de cette procédure étant :
Là où ça bloque, c'est à l'appel : "HDéclareExterne(sTables_intermediaires,sTables_intermediaires,gcnxCnx_Access)" qui renvoie faux, alors que si je fais mes tests en test de procédure, cela fonctionne très bien.
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 PROCEDURE PRIVÉE Recuperation_Donnees_Table() : booléen LOCAL i est un entier = 1 sTables_intermediaires est une chaîne = Remplace(ExtraitChaîne(sTable,i," INNER JOIN "),["(",")"],"") TANTQUE PAS (sTables_intermediaires ~= EOT OU sTables_intermediaires ~= "") SI PAS HDéclareExterne(sTables_intermediaires,sTables_intermediaires,gcnxCnx_Access) ALORS Ajoute_Info_Log("Les données n'ont pas été récuperées." + RC + HErreurInfo(hErrComplet)) RENVOYER Faux FIN i++ sTables_intermédiaires = ExtraitChaîne(ExtraitChaîne(sTable,i,"JOIN "),1," ON ") FIN RENVOYER Vrai
Du coup, je n'arrive pas à comprendre ce qui peux clocher, sachant que ma connexion est belle et bien effectuée et que sTables_intermediaires contient bien les noms des tables utilisées dans la requête.
Merci à ceux qui auront le courage de me lire et de me répondre.
Bonne journée/soirée
Cordialement, Warren.
Partager