27 octobre 2009
publié par 
Tout au long de l'exécution de votre application, vous allez exécuter des requêtes pour remplir des tables, effectuer des parcours ou des comptages. Toutes ces requêtes consomment de la mémoire sur le poste où l'application s'exécute. Souvent ces requêtes deviennent inutiles une fois le parcours effectué. Pensez a utiliser la commande HAnnuleDéclaration pour libérer l'espace mémoire occupé par ces requêtes.
27 octobre 2009
publié par 
L'exécution d'une requête sur le serveur s'effectue en 2 temps. La commande HExecuteRequête demande au serveur de préparer la requête et démarre le transfert des résultats. En remontant le plus tôt possible cette demande de préparation, pendant le temps d'exécution des autres codes non liés à votre requête, la requête est préparée et le transfert en partie effectué. Prenons un exemple, j'ai une fenêtre qui liste tous les clients...
27 octobre 2009
publié par 
L'exécution de la commande HLitRecherche*() en HFSQL Client/Serveur provoque l'exécution d'une requête qui ne retourne qu'un seul enregistrement. Lorsque vous avez besoin d'obtenir une information unique d'un fichier, c'est évidemment la bonne commande à utiliser. Par contre, lorsque ce traitement est intégré dans une boucle (cas de parcours imbriqués) , cela provoque de nombreuses requêtes sur le serveur. Ces requêtes ne traitant que très peu de données (1...
Le choix de la configuration qui héberge le moteur HFSQL Client/Serveur, est dépendant des applications qui vont solliciter le moteur, bien plus que du moteur lui-même. En effet, c'est en fonction des demandes de chaque application, depuis chaque poste, que le moteur fera appel aux ressources du serveur. RAM : Le plus important, est d'avoir une quantité de mémoire suffisante sur le serveur. En effet, lorsque la mémoire vient à manquer le...
22 octobre 2009
publié par 
Dans une base HFSQL Client/Serveur, lorsqu'une sélection d'enregistrements est nécessaire, il est plus intéressant de demander au serveur d'effectuer une requête de sélection que de demander les enregistrements de manière séquentielle avec un filtre. En effet, lors d'un parcours séquentiel de type : HFiltre(CLIENT,DEPARTEMENT,"34000","34999") HLitPremier(CLIENT,DEPARTEMENT) TANTQUEPAS HEnDehors() //Traitement HLitSuivant() FIN La couche client demande le premier enregistrement au serveur, celui-ci lui retourne le premier...