Re: table et requete sql

Posté par R&B le 14/11/2005 17:41:08
Bonjour

Votre requete telle quelle ne devrait fonctionner.

En effet, votre utilisation des AND dans la clause Where n'est pas équilibrée.
Je vous invite à les ajouter en début de chaque sous condition si celle si est vide.

cSQL est une chaine = "SELECT ..... FROM ... WHERE "
cCondition est une chaine
SI <COND1> ALORS
   si cCondition <> "" ALORS cCondition+= " AND "
   cCondition += "La condition 1"
FIN
SI <COND2> ALORS
   si cCondition <> "" ALORS cCondition+= " AND "
   cCondition += "La condition 2"
FIN
...


A ce stade votre requete SQL texte est conforme.
Reste donc à l'exécuter à en remplir votre champ table.
Deux choix :
- une table fichier alimentée par ConstruitTableFichier à partir de la source de donnée résultante de l'exécution dela requête. Attention les noms des colonnes sont fixées automatiquement par la fonction : COL_1 COL_2...

- Une table mémoire remplie via FichierVersTableMémoire mais comme il est notifié dans l'aide : Cette opération peut être très longue et saturer la mémoire si le fichier est volumineux.


De mon coté, je préfère la première solution (plus rapide).
Il est toujours possible d'affecter les libellés des colonnes de la table obtenue en les énumérant (TableEnumèreColonne) et les affectant des libellés des colonnes correspondants des fichiers. Une petite liste (invisible) permet aussi d'assurer cette affectation trés rapidement.

Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=14&topic_id=3030&post_id=12745