BDs ACCESS, rédiger la requête de connexion, la requête d’ouverture de table, visualiser le résultat.

Présentation
Mon premier gros programme écrit en VBScript avec interface HTA, merci de votre indulgence.

Le but, plutôt que de lancer un gros projet, ce programme ne nécessitant aucune installation peut
s'avérer utile pour aider à la rédaction de requête SQL.

Programme utilisant ADO pour la partie dialogue avec la BDs (ACCESS exclusivement)
Nom du fichier à lancer, OutilBDsAccess.HTA
Sous fichiers, Fond.jpg, DBSHTA.ico, TBLHTA.ico, MultiTBLHTA.ico et StructGenTbl.hta.
Pour l'affichage les fichiers GenTblSpl.hta et GenTblMlt.HTA seront générés par le fichier
OutilBDsAccess.HTA, à l'endroit du dossier de celui ci.

Que permet ce programme
Ouverture BDs :
Choix DSN (noms de source utilisateur) et/ou par l’explorateur et/ou rédaction/modification
de connexion direct (écriture d’une ligne de connexion par défaut lors de ces choix).
Analyse du test, si réussi, affichage des noms de table et champs de la table.
Ouverture d’une table :
Choix dans la liste tables et/ou rédaction/modification dans la boite requête,
drag drop possible des noms de champs depuis la liste champs vers boite de rédaction de la requête.
Chaque test est géré si une erreur se produit, affichage n° et descriptif de la cause de l’erreur.

Visualisation.
Test connexion à la BDs
Bouton « Tester », message Ok ou descriptif de l’erreur

Test ouverture de table:
Bouton « Tester », renseignement sur le nombre d'enregistrements pouvant être retournée,
si l’utilisation de Sum, Count, Max, Min ou Avg présent dans la requête,
informations suivant l'une de ces conditions.

Bouton « Test+ », affichage du résultat sur 1 page.

Bouton « Test++ », affichage du résultat de la requête, par lot de XX enregistrements
(XX est à choisir dans la liste au dessous de ce bouton, de 25 à 100, par pas de 5)

Dans tout les cas, descriptif de l’erreur qui se serai produite.

A savoir, sur un HTA, un clique bouton droit de la souris permet une prévisualisation pour une sortie impression.

ZIP mise à jour le 26/09/2013, correction faite
Téléchargement
Compatibilité
Windows
0  0 
Téléchargé 221 fois Voir les 2 commentaires
Détails
Catégories : HTA VBS
Avatar de Francis MILLET
Rédacteur / Modérateur
Voir tous les téléchargements de l'auteur
Licence : Gratuit
Date de mise en ligne : 10 janvier 2017




Avatar de ProgElecT ProgElecT - Rédacteur/Modérateur https://www.developpez.com
le 29/12/2011 à 17:43
Correction d'un bug
Dans la fonction VerifReqt(Req) remplacer le Case Else
Code : Sélectionner tout
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
27
28
29
30
31
32
33
34
'+++++++++++++++++++++++++++++++++++++++++++++++ Partie formatage de la rêquete +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
Function VerifReqt(Req) 
'............... 
                Case Else 
                    If Pos > 1 then 
						If Mid(Req, Pos - 1, 1) = " " Then 'Bon ************ 
							'le caractère spécial débute le mot mais pas la phrase 
							Deb = Pos: MsgTemp = RecupMotDebute(Req, Deb, Len(Req)) 
							Pos = Fin 
							Else 
							If Pos = Len(Req) Then 'Bon ************** 
								'le caractère spécial finit le mot et la phrase 
								Deb = 1: MsgTemp = RecupMotFinit(Req, Deb, Len(Req)) 
								Pos = Fin 
								Else 
								If Mid(Req, Pos + 1, 1) = " " Or Mid(Req, Pos + 1, 1) = "," Then 'Bon ************** 
									'le caractère spécial finit le mot mais pas la phrase 
									Deb = 1: MsgTemp = RecupMotFinit(Req, Deb, Pos) 
									Pos = Pos + 1 
									Else 
									'le caractère spécial est contenu dans le mot 
									MsgTemp = RecupleMot(Req, Pos) 
									If NotCara(Cpt) = "'" Then 
										If left(MsgTemp,1) = "=" Or left(MsgTemp,1) = "<" Or left(MsgTemp,1) = ">" Then 
											Else 
											Req = Replace(Req, MsgTemp, Replace(MsgTemp, "'", "''")) 
										End If 
									End If 
									Pos = Fin 
								End If 
							End If 
						End If 
					End IF 
'...............
Avatar de ProgElecT ProgElecT - Rédacteur/Modérateur https://www.developpez.com
le 19/06/2013 à 17:57
Pour plus de facilité opérer dans cette ordre

1° ajout du title au checkbox chkTbl du cartouche requête table
remplacer la ligne 698 par:
Code : Sélectionner tout
	<INPUT Type="checkbox" name="chkTbl"  disabled="disabled" onClick="TestChekTbl" title="Si coché, vérification/modification de la rédaction de la requête"


2° ne pas ajouter des [......] sur les dates (sub VerifReqt).
remplacer les lignes 479, 480 et 481 par:
Code : Sélectionner tout
1
2
3
4
5
6
7
                If Left(MsgTemp, 1) = "#" Or Right(MsgTemp, 1) = "#" Then 
                    'cas particulier des DATEs 
                    Else 
                    Req = Replace(Req, MsgTemp, "[" & MsgTemp & "]") 
                    Req = Replace(Req, "[[", "[") 
                    Req = Replace(Req, "]]", "]") 
                End If


3° ne pas vérifier/modifier la rédaction de la requête si le checkbox chkTbl n'est pas coché (Sub OuvreTbl).
remplacer la ligne 362 par:
Code : Sélectionner tout
    If chkTbl.Checked Then SQL = VerifReqt(SQL)
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.
Contacter le responsable de la rubrique Visual Basic 6