Cette fonction vous permet de traiter des fichiers de type .csv, ce sont des fichiers textes où chaque ligne représente un enregistrement, la première ligne désignant les champs, chaque champ d'une ligne étant séparer par un point-virgule, ce fichier represente une table.

ex de fichier .csv

Ces fichiers doivent être placés soit dans le répertoire DATABASE.HEW d'un projet et ils sont donc local à ce projet soit dans le répertoire DATABASE.HEW d'help&web et alors ils seront accessibles à tous vos projet.

Fig. 113 L'éditeur de données

Lors de la création d'une table, vous aurez à indiquer en plus de son nom, le nom des divers champs ainsi que son accés local ou global.

Fig. 114 Création d'une nouvelle table

Par la suite vous pourrez ajouter ou supprimer des champs et des lignes.

Pour déplacer un champ, cliquez dessus et tout en maintenant le bouton de la souris enfoncé déplacez le vers sa nouvelle position, vous pouvez faire de même pour déplacer des lignes, les champs sont aussi triables.

Fig. 115 Déplacement des champs et des lignes - Cliquez pour trier

Pour afficher vos tables vous disposez du composant dbTable situé sur l'onglet Insérer - Donnée

Vous pourrez soit afficher la table entière soit effectué des requêtes sur un ou plusieurs champs pour extraire certaines données.

Une requête est un filtre que vous allez appliquer à votre table pour extraire les enregistrements (lignes) correspondants. Vous pouvez combiner plusieurs éléments pour constituer votre requête, chaque élément étant composé du champ à filtrer, des données à rechercher et d'un comparateur.

Si la donnée est une chaîne alors vous devez la placer entre guillemets simple ' autrement elle sera analysée comme un nombre.

Les comparateurs sont au nombre de 7 :

 

=
<>
<
>
<=
>=
~=
égal à
différent
inférieur
supérieur
inférieur ou égal
supérieur ou égal
approchant


Le comparateur ~= permet l'utilisation des jockers * (n'importe quel groupes de signes) et ? (n'importe quel un signe)

ex : la requête (Logiciel ~= 'v*') va sélectionner toutes les lignes dont le champ Logiciel débute par v

(Logiciel ~= 'v?i*') sera vrai pour toute chaîne débutant par v et ayant i en 3ème position

Les éléments sont associés à l'aide des opérateurs AND (et) OR (ou), deux éléments combinés avec un OR sélectionneront un enregistrement si au moins un des deux éléments est vérifié, avec AND les deux éléments devront être vrai.

ex : la requête (Prix >= 20) AND(Prix <= 50) va sélectionner toute les lignes dont le champ Prix sera compris entre 20 et 50.

Une requête peut bien sur porter sur plusieurs champs.

En Html/HtmlHelp vous pourrez associer une classe css à votre tableau et une autre aux lignes paires de celui-ci

 

Auteur Titre ISBN
Jordan Robert Les feux du ciel 2-266-12827-2
Martin George R.R. Le donjon rouge 2-290-31318-1
Martin George R.R. L'ombre maléfique 2-290-31819-1
Jordan Robert Le Seigneur du Chaos 2-7436-1140-5
Affichage par défaut sans CSS

Auteur Titre ISBN
Auteur Titre ISBN
Jordan Robert Les feux du ciel 2-266-12827-2
Martin George R.R. Le donjon rouge 2-290-31318-1
Martin George R.R. L'ombre maléfique 2-290-31819-1
Jordan Robert Le Seigneur du Chaos 2-7436-1140-5
Affichage avec css et pied de tableau

Auteur Titre ISBN
Recherche Martin
Martin George R.R. Le donjon rouge 2-290-31318-1
Martin George R.R. L'ombre maléfique 2-290-31819-1
Affichage avec css, requête Auteur~='Martin*' et pied de tableau personnalisé

Fig. 116 Paramètrage dbTable avec requête

les css utilisées :

.tablecsv {border: medium solid #6495ed; border-collapse: collapse; width: 80%}

.tablecsv th {font-family: monospace; border: thin solid #6495ed;
width: 33%; padding: 5px; background-color: #D0E3FA;
}

.tablecsv td {font-family: sans-serif; border: thin solid #6495ed; width: 33%;
padding: 5px; text-align: center; background-color: #ffffff}

.lignepaire td {Background-Color:#ECF5FF}

Par pure paresse ces styles ont été dérivé de ceux de cet excellent article sur l'habillage de tableaux avec des CSS que je vous invite à lire.

Le langage de scripts d'Help&Web comporte 20 commandes permettants de manipuler de telle bases vous pourrez donc créer vos propres composants pour aller plus loin que dbTable, et même créer dynamiquement des tables.

L'expert gestionnaire de FAQ utilise lui aussi des fichiers de ce type, étudiez le source du composant Faq FAQ pour mieux appréhender les commandes.

Sommaire