PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ BASE DE DONNÉES. www.pcsoft.fr. Windows, Linux, Mac, Android, ios (iphone, ipad) WINDEV WEBDEV WINDEV Mobile



Documents pareils
PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ

BASE DE DONNÉES UNIVERSELLE

NOUVELLES FONCTIONS WLANGAGE EDITEUR DE CODE. Menu contextuel partageable dans le projet. HtmlVersTexte, HtmlVersRTF

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Communiqué de Lancement

Tutorial Terminal Server sous

Une ergonomie intuitive

Mes documents Sauvegardés

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

et dépannage de PC Configuration Sophie Lange Guide de formation avec exercices pratiques Préparation à la certification A+

FAA : Fonctions Automatiques de l Application. Les fonctions automatiques incluses dans vos applications développées avec

UltraBackup NetStation 4. Guide de démarrage rapide

1 Introduction et installation

MYXTRACTION La Business Intelligence en temps réel

4D v11 SQL BREAKING THE LIMITS * Les nouveautés

WinDev Mobile - Concepts Version 20 - (1)

CAPTURE DES PROFESSIONNELS

SQL Server Installation Center et SQL Server Management Studio

Guide d utilisation WEBPORTAL CPEM Portail d Applications Web CPEM

SQL Server 2014 Administration d'une base de données transactionnelle avec SQL Server Management Studio

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Démarrer et quitter... 13

Documentation utilisateur, manuel utilisateur MagicSafe Linux. Vous pouvez télécharger la dernière version de ce document à l adresse suivante :

STATISTICA Version 12 : Instructions d'installation

4D v11 SQL Release 5 (11.5) ADDENDUM

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

ENVOI EN NOMBRE DE MESSAGES AUDIO

RM 4.0 RM 3.6 RM 3.5 RM 3.1 RM 3.0 RM 2.1 RM

Lutter contre les virus et les attaques... 15

Documentation Honolulu 14 (1)

WINDOWS Remote Desktop & Application publishing facile!

SQL Historique

SQL Server Administration d'une base de données transactionnelle avec SQL Server Management Studio (édition enrichie de vidéos)

_ PARAMETRE DU COMPTE _ ACCEUIL. 1 ere Etape «Créer un compte principal» Créer un compte secondaire. Ouvrir un compte principal

Du 10 Fév. au 14 Mars 2014

Recommandations techniques

Visual Paradigm Contraintes inter-associations

Installation Client (licence réseau) de IBM SPSS Modeler 14.2

Pourquoi utiliser SharePoint?

Présentation de la gamme des PGI/ERP modulaires Wavesoft

clé Internet 3g+ Guide d installation

FTP Expert 3 est idéal pour :

Logiciel de création de badges personnalisés.

//////////////////////////////////////////////////////////////////// Administration bases de données

WINDEV MOBILE. ios SMARTPHONE SUPPORT: IOS, ANDROID, WINDOWS PHONE 8.

CRM PERFORMANCE CONTACT

ACQUISITION. Traitement de l image. Classement. Préparation. Ouverture. Performance

Edutab. gestion centralisée de tablettes Android

Sommaire. Systèmes d Exploitation Intégration Sage 100 Sage CRM Disponibilité Client Bases de données... 3

Table des matières ENVIRONNEMENT

Qui est Sybase ianywhere?

Logiciel. Table de matières I Environnement requis...2

clef primaire ; clef étrangère ; projection ; restriction ; jointure ; SQL ; SELECT ; FROM ; WHERE

Easy to. report. Connexion. Transformation. Stockage. Construction. Exploitation. Diffusion

Communiqué de Lancement. Sage Intégrale V4.50

ERP Service Negoce. Pré-requis CEGID Business version sur Plate-forme Windows. Mise à jour Novembre 2009

Les bases de données Page 1 / 8

Guide Utilisateur. Les communications unifiées au service de la performance opérationnelle. sfrbusinessteam.fr. Faire équipe avec vous

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

Le langage SQL Rappels

Manuel d utilisation de la plate-forme de gestion de parc UCOPIA. La mobilité à la hauteur des exigences professionnelles

Logiciel de Gestion Electronique de Dossiers

AOLbox. Partage de disque dur Guide d utilisation. Partage de disque dur Guide d utilisation 1

Avantages. Protection des réseaux corporatifs de gestion centralisée

FileMaker Server 14. Guide de démarrage

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

Présentation du module Base de données spatio-temporelles

GEDEXPERT. La Gestion Electronique de Documents des PME PMI. VOTRE NOUVEL ASSISTANT pour. Pour partager l information au sein de l entreprise

Notes de cours : bases de données distribuées et repliquées

Créer une base de données

Encryptions, compression et partitionnement des données

Manuel du logiciel PrestaTest.

SOMMAIRE I. INTRODUCTION 3. I.1. Installation des pré-requis...3 I.2. Installation des logiciels...4. GIMI : Gestion de parc informatique 7

LANDPARK NETWORK IP LANDPARK NETWORK IP VOUS PERMET D'INVENTORIER FACILEMENT VOS POSTES EN RÉSEAU

Business Intelligence

WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/ bits, Windows 2008 R2 et Windows bits

CARPE. Documentation Informatique S E T R A. Version Août CARPE (Documentation Informatique) 1

MANUEL D INSTALLATION LOGICIEL TELEVITALE. Agréé SESAM VITALE 1.40

GUIDE D UTILISATION ADSL ASSISTANCE

Cours Bases de données

14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.

SYSTRAN 7 Guide de démarrage

Programme détaillé. Administrateur de Base de Données Oracle - SQLServer - MySQL. Objectifs de la formation. Les métiers

Gestion collaborative de documents

VRM Monitor. Aide en ligne

Dispositif e-learning déployé sur les postes de travail

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

L externalisation de vos logiciels entreprises : une solution aux problèmes de coûts, de sécurités et de réactivités

BUSINESS INTELLIGENCE

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

DOCUMENTATION POINT FACTURE

Guide de l utilisateur Mikogo Version Windows

Qu est ce que Visual Guard. Authentification Vérifier l identité d un utilisateur

Fiche Produit. Plateforme de sauvegarde en marque blanche Kiwi Business

DataStudio. Solution d intégration des données et de diffusion de l information

Backup Exec 2010 vs. BackupAssist V6

Pour une première installation : suivre la procédure en page 5 à 9 Pour une mise à jour : suivre la procédure page 5, 6, 10 et 11

Transcription:

WINDEV WEBDEV WINDEV Mobile BASE DE DONNÉES Windows, Linux, Mac, Android, ios (iphone, ipad) Client/Serveur, Monoposte, Mobile, Embarqué PERFORMANCE, SÉCURITÉ, DISPONIBILITÉ www.pcsoft.fr

BIENVENUE DANS UN MONDE DE SÉCURITÉ ET DE PERFORMANCES 329 millions de milliards de lignes par table... Les données d une entreprise sont une ressource vitale. Le Système de Gestion de Base de Données Relationnelle vous permet de gérer ces données en toute sécurité. Les performances sont remarquables. Utilisé sur plusieurs millions de postes à travers le monde, la flexibilité et l'évolutivité de permettent de répondre aux besoins les plus exigeants des applications à mission critique en temps réel. Vous aussi, choisissez! HyperFileSQL est diffusé depuis 1988. Table des matières Présentation 3 Local 4 Mobile embarqué 4 Client/Serveur 4 Types de données et index 5 SQL 6 Fonctionnalités 6 Sécurité 10 Ouverture 11 WINDEV et WEBDEV 11 Les outils 13 Programmation 17 Liste des ordres SQL supportés 17 Liste des ordres WLangage 18 Vocabulaire 21 Qui utilise HyperFileSQL? 22 Avantages 22 Résumé des fonctionnalités 24 ocumentation technico-commerciale HyperFileSQL. La connaissance de WINDEV, ou WEBDEV ou WINDEV Mobile Dest utile. Si vous ne les connaissez pas, n hésitez pas à demander les documentations complètes (gratuites, en français) sur ces logiciels. Version de documentation 2012-11. Version de référence : 18

PRÉSENTATION DE HYPERFILESQL Généralités HyperFileSQL est un puissant SGBDR (Système de Gestion de Base de Données Relationnelle). HyperFileSQL est décliné en 3 versions : version mobile (embarquée) version locale (monoposte ou réseau) version Client/Serveur (et cluster). HyperFileSQL est adapté à tous les types d applications: applications métiers, applications critiques temps réel, progiciels, serveurs d applications, serveurs Web, PC stand-alone ou périphériques mobiles. performance, sécurité, ouverture, flexibilité HyperFileSQL est le choix idéal comme moteur de base de données. Ouverture: basé sur les standards de l industrie, HyperFileSQL ne vous enferme pas dans une technologie propriétaire. Flexibilité: le support des volumes de données importants (plusieurs dizaines de milliards de lignes dans une table) est assuré. Indépendance vis à vis de la plateforme: les tables peuvent être déplacées d un Client/Serveur vers un mobile, d'un serveur Windows vers un serveur Linux, etc Extensibilité: vous passez sans contraintes de un utilisateur à plusieurs centaines d utilisateurs, d une architecture 2 tier à une architecture multi-tier... Econome en ressources: le moteur Client/Serveur occupe moins de 20Mo sur disque. HyperFileSQL fonctionne en environnement hétérogène: Windows, Linux, Mac, ios, Android, TSE, Citrix, ADSL, VPN, Wi-Fi La compatibilité ascendante et descendante des tables est assurée. Pérennité de l éditeur: PC Soft est présent depuis plus de 25 ans, et est n 1 en France dans le domaine des AGL. Performance, scalabilité: grâce à une gestion optimisée des index et une gestion affinée des caches, la vitesse est permanente. Sécurité d accès: la protection contre l injection SQL est assurée via la création automatique d IHM sécurisées. PUISSANTE BASE DE DONNÉES SERVEUR WINDOWS MOBILE 8 7, VISTA XP 2000, 2003, 2008 NT LINUX ANDROID : Coût d usage (TCO) réduit Une caractéristique de HyperFileSQL est son déploiement illimité libre et gratuit (voir la licence). Il n y a aucun coût facturé, ni en fonction du nombre de processeurs du serveur, ni en fonction du nombre de postes client, ni annuellement, ni en fonction du type d application (commerciale,...) etc... 100% Windows HyperFileSQL est livré en une édition systématiquement complète, avec toutes les 100% Linux fonctionnalités, gratuite. 100% Mobile Les coûts de maintenance sont très réduits. ACCÈS LOCAL RÉSEAU LOCAL WIFI MODEM,3G,4G Le support technique est également gratuit (dans le cadre d une licence WINDEV, WEBDEV ou WINDEV Mobile). Il est assuré par téléphone et par mail. Les DBA et développeurs disposent également de forums professionnels (modérés) très actifs. IPHONE IPAD IOS MAC TSE CITRIX ADSL LIGNE SPÉCIALISÉE La revue LST (éditée par PC SOFT) publie régulièrement des articles de fond et des articles pratiques sur HyperFileSQL. Des mises à jour («services pack») sont régulièrement mises à disposition gratuitement. 3

LES VERSIONS version Locale (version «classic») La version locale (monoposte et réseau) de HyperFileSQL (également dénommée version «Classic», car il s agissait de la première version disponible, dès 1988) offre performances, simplicité de déploiement, d'installation et de configuration. La compatibilité avec les versions mobiles et Client/Serveur est totale (tables, index, relations, contraintes). Cette version est plus particulièrement destinée aux postes de travail indépendants, et aux petits réseaux. Un usage courant de la version Classic est son utilisation dans un progiciel. La base de données se créera et s installera automatiquement sur le PC de l utilisateur du progiciel. La maintenance sera automatique. Une base de données Classic peut également être située et directement utilisable sur une clé USB. Les performances sont étonnantes de rapidité. La compatibilité avec les versions locales et Client/Serveur est totale :tables, index, relations, contraintes. Selon vos besoins, l accès aux données dans une application mobile peut s effectuer depuis de nombreuses technologies: Active- Sync, Accès direct, Accès par RPC, Webservices, Sockets, Procédures stockées directes... Imaginez, 128 Giga Octets sur une carte mémoire. Il y a quelques années, c était la capacité des disques dur sur les PC de bureau! Vous pouvez maintenant embarquer facilement et à faible coût des bases de données (sécurisées) de taille importante (jusqu à 130 millions de lignes) sur les pockets, mobiles et téléphones. version Client/Serveur La version Client/Serveur de HyperFileSQL est la version idéale pour gérer de nombreux utilisateurs et des accès distants. Les accès locaux et les accès distants sont gérés. L installation est simplissime, et l administration, bien que très puissante, s effectue facilement. HyperFileSQL Classic s installe sur les machines équipées de Windows (NT, 2000, 2003, Vista, 7, 8...), MacOS, ios (iphone et ipad), Android et sur les serveurs Linux. ios HyperFileSQL fonctionne également sur Mac version Mobile (embarquée) HyperFileSQL n est pas limité en nombre de processeurs utilisés, ni en mémoire. Le load balancing est géré pour de meilleurs temps de réponse. Le moteur est auto-restart. Les clusters permettent d assurer une disponibilité sans faille. La compatibilité avec les versions embarquées et locales est totale (tables, index, relations, contraintes). HyperFileSQL fonctionne à la fois en 32 bits et en 64 bits. Serveurs et clients peuvent être mixés. Parmi les serveurs Windows gérés: Windows Server 2008 Windows Server 2003 Windows 2000 Windows XP & Vista, Windows 7 dans toutes leurs éditions. HyperFileSQL est totalement adapté au développement croissant des périphériques mobiles de tous types. HyperFileSQL ne demande que de faibles ressources, et s installe sur tous les mobiles (terminal, pocket PC, smartphone, tablette) s exécutant sous Windows CE, Windows Mobile, Windows 8 RT, ios (iphone et ipad), Android. L installation est simplissime, et la maintenance, quasi nulle, est automatisée. Parmi les distributions Linux supportées: RedHat 9 Debian 4.0 OpenSuse 10.3 et 11.1 Ubuntu 7.10, 8.04 et 8.10 Fedora 8 et 9 Mandriva 2008 Parmi les clients supportés: Windows 32 bits et 64 bits Linux MacOS, ios Windows CE et Mobile Android 4

DONNÉES ET INDEX Type de données HyperFileSQL gère tous les types de données: Texte, caractère Numérique (entier, réel, décimaux à 38 chiffres significatifs), Date, heure, durée Booléen Colonne de type tableau Blob («mémo», format binaire: image, vidéo,...) Des fonctionnalités puissantes sont disponibles: Unicode est géré, avec gestion des tris linguistiques L ordre de tri de tous les jeux de caractères est pris en compte. Valeur par défaut Gestion du Null. HyperFileSQL assure l intégrité des données en gérant : Contrainte d unicité Contrainte de cardinalité Identifiant Automatique Clés primaires et étrangères. Index Full text La recherche «full text» permet la recherche de chaînes de caractères (mots ou expressions) très rapide dans les données. Elle permet par exemple de retrouver un mot parmi 1 million de lignes en moins de 2 ms (moyenne par occurrence trouvée). Il est donc possible d indexer sans programmation les textes présents dans une base de données HyperFileSQL. Les résultats sont proposés selon un ordre de pertinence («ranking»). La création de l index peut gérer les textes enrichis (RTF, HTML), en ignorant les balises de ces formats lors de l indexation. Cette fonctionnalité permet d effectuer des recherches de mots stockés dans des documents RTF ou HTML. Unicode HyperFileSQL gère les colonnes «texte» et «blob» de type Unicode. Les index peuvent être triés en fonction de l ordre linguistique de chaque langue (russe, de Russie ou d Ukraine, chinois de Singapour, de Taïwan, Hong Kong, Macao,...). Des données en chinois Un rappel sur les systèmes d exploitation: le codage et l exécution de Windows en mobile est Unicode, alors que le codage et l exécution de Windows sur PC est ANSI. Lorsque celà est nécessaire, le WLangage convertit automatiquement les chaines UNICODE en ANSI (et réciproquement) en tenant compte de l'alphabet courant. Index & Clés HyperFileSQL gère clés et index sur tous les types de colonne. Afin d assurer des performances optimales HyperFileSQL crée automatiquement un index lors de la définition d une clé. Sont gérés: Index simple Index composé (multi-colonnes) Index partiel Index full text Ces textes peuvent être contenus dans des champs de type «texte» ou des champs «blob» («mémo»). Un index full text peut indexer une ou plusieurs colonnes différentes, donc une simple recherche peut s effectuer sur plusieurs colonnes différentes simultanément. Capacités HyperFileSQL Client/Serveur offre des capacités de stockages élevées, en phase avec les moyens de stockage actuels et avec ceux du futur, ainsi qu avec les besoins croissants des entreprises. Lors d un récent roadshow, devant près de 10.000 professionnels du développement, PC SOFT a présenté l utilisation d une base HyperFileSQL contenant plus de 15 milliards (15.000 millions) de lignes: les recherches sur les données étaient immédiates dès le démarrage du serveur (sans même que des caches soient remplis!). 5

CAPACITÉS MAXIMALES HYPERFILESQL Colonnes par table 65 535 Index par table 65 535 Lignes par table Taille d une table Taille d une ligne Taille d une colonne Taille d une colonne blob (mémo texte, image, vidéo, binaire...) 329 millions de milliards 4 millions de téras 2 Go 65 535 octets 4 Go SQL : PRÉSENTATION En effet, lorsque la façon de calculer un résultat ou une règle métier contenue dans une procédure stockée évolue, il vous suffira de modifier seulement la procédure stockée sur le serveur, sans effectuer la moindre modification dans les applications déployées. Une procédure stockée permet également de limiter le nombre d allers et retours entre le poste client et le serveur, et donc améliore également la vitesse des traitements. Une même procédure stockée peut être partagée entre plusieurs applications. Les procédures stockées se programment en WLangage, et bénéficient donc de la richesse fonctionnelle et de la facilité de ce L5G. Les procédures stockées prennent des paramètres et/ou retournent des entiers, chaines, date, etc La création d une procédure stockée depuis l environnement de WINDEV est vraiment très facile. HyperFileSQL gère une grande partie de la norme Ansi SQL 92. Le SQL géré par HyperFileSQL supporte également de nombreuses syntaxes supplémentaires et spécifiques de SQL Server et Oracle, entre autres. HyperFileSQL gère les sous requêtes et les requêtes imbriquées. HyperFileSQL gère les opérateurs ensemblistes: union, cartésien, jointure, jointure externe, les opérateurs d'agrégation: count, sum, avg, min, max, les opérateurs de tri et de regroupement: group by, having, order by... En complément du SQL, il est possible de bénéficier de la richesse fonctionnelle du WLangage par l utilisation directe de fonctions WLangage, et par appel de procédures stockées (elles-mêmes développées en WLangage). La vitesse du moteur SQL est optimisée entre autres par l utilisation des statistiques des index et les contraintes pour choisir les index d accès les plus discriminants lors des requêtes. La gestion avancée des caches mémoire améliore également les performances. Le moteur effectue automatiquement la gestion/ répartition de la charge: si un client exécute de très nombreuses requêtes consommatrices de ressources (CPU,...), le serveur équilibre automatiquement la charge pour ne pas pénaliser les autres clients. Vous trouverez en fin de ce document la liste des fonctions SQL supportées par HyperFileSQL, ainsi que les autres aspects de programmation (programmation des curseurs). FONCTIONNALITÉS Les fonctionnalités offertes par HyperFileSQL sont très nombreuses. Vous trouverez ci-après la description des principales fonctionnalités. Procédures stockées (UDF) Les procédures stockées (quelquefois appelées UDF) permettent de faciliter l'évolution et la maintenance de vos applications en factorisant le code. Sous l éditeur de schéma de données (éditeur d analyses) Triggers Un trigger permet de déclencher une procédure stockée avant ou après un événement sur une table de la base de données: par exemple avant une suppression de ligne, ou après la modification d une ligne. Un trigger apporte une grande sécurité. Le trigger sera déclenché quelle que soit l application ou composant qui accède à la base de données et qui effectue l opération définie, sans que le développeur de l application n ait quoi que ce soit à programmer. Les triggers «serveur», comme leur nom l indique, s exécutent directement sur le serveur. Le «droit» de créer un trigger est défini via les droits de la base de données. L environnement de WINDEV avertit le développeur de la présence de ces triggers (les triggers sont visualisés dans l analyse). Intégrité : contrainte, suppression, mise à jour en cascade Il est facile de définir des contraintes d intégrité. Les cardinalités sont paramétrables: (0,n) ; (0,1); (1,n); (3,n); etc... Les liaisons réflexives sont supportées. Exemples de contraintes d intégrité référentielle : Intégrité référentielle: L'intégrité référentielle interdira l'effacement d'un auteur, tant que dans la base de données il existera au moins un livre se référant à cet auteur. Il n est pas possible de supprimer une ligne dans une table si cette 6

ligne est reliée à d autres lignes d une table (on ne peut pas supprimer un client si des commandes sont reliées à ce client). L intégrité référentielle peut être définie par liaison, depuis l éditeur d analyses. Suppression en cascade: Si une ligne est supprimée dans une table, les lignes correspondantes dans les tables reliées sont également supprimées (cette contrainte peut être activée ou désactivée, par relation) Compression des données «blob» Les données de type «blob» (mémo texte ou binaire) peuvent être compressées pour optimiser l espace occupé sur le disque. L espace occupé peut ainsi être très sensiblement réduit. Compression des trames Journalisation Le journal est une table particulière dans laquelle sont mémorisées automatiquement toutes les opérations réalisées sur une ou plusieurs tables depuis un instant donné. Le journal contient l'historique de l'utilisation de la table, c'est-àdire: la ligne complète avant manipulation ou modification par l'utilisateur la ligne complète après manipulation ou modification par l'utilisateur l'auteur de la manipulation ou de la modification la date et l heure de la manipulation ou de la modification la nature de l'opération effectuée: ajout, modification, suppression, lecture l identifiant du poste qui a effectué la modification l adresse IP du poste qui a effectué l'opération le nom de l'application qui a effectué l'opération Il est possible de réaliser les opérations suivantes à partir d'un journal : restaurer le contenu d une table journalée en cas de perte ou de destruction des données restaurer le contenu d une table journalée jusqu'à une certaine date retrouver l'auteur, la date et l'heure d'une opération réalisée sur une ligne spécifique conserver un historique de l'utilisation d une table (par exemple pour réaliser des statistiques) Ces opérations peuvent se lancer en ligne de commande ou depuis l utilitaire WDJournal. Transactions: commit, rollback, crash recovery Une transaction est un ensemble d'opérations indissociables: soit toutes les opérations de la transaction sont réalisées, soit aucune opération n'est réalisée. La gestion des transactions est le meilleur moyen d'assurer la cohérence d'un ensemble d'écritures indissociables sur différentes tables HyperFileSQL. Une transaction permet de s'assurer que des mises à jour effectuées sur une ou plusieurs tables de données se sont déroulées correctement. Une «trame» est un paquet de données qui transite sur le réseau. HyperFileSQL, comme tous les SGBD, utilise des trames pour communiquer entre le poste client et le serveur. La vitesse de transfert des données d un serveur dépend à la fois de la vitesse de circulation des trames sur le réseau, et de la taille de ces trames. En réseau local, la vitesse est tellement élevée que la taille de la trame a une importance relative. Par contre, pour un accès à distance (ADSL, 3G,...), la taille de la trame prend plus d importance. Dans ce contexte, une forte réduction de la taille des trames engendre un gain de performances sensible. La compression des trames permet de réduire (jusqu à 95% de réduction) la taille des paquets circulant sur le réseau, en appliquant automatiquement un algorithme de compression aux données. Dans un contexte de communication à distance, surtout si la vitesse de connexion est lente, l intérêt de compresser les trames est grand. La vitesse en connexion à distance est améliorée. Les volumes de données transitant par le média de transmission étant réduits, celà peut avoir un avantage avec les contrats facturant selon le volume de données. Verrou de ligne automatique HyperFileSQL gère les verrous au niveau table et au niveau ligne. La gestion des verrous au niveau ligne permet d assurer une meilleure performance des accès. Plusieurs databases sur un même serveur HyperFileSQL gère nativement la présence de plusieurs bases de données sur un même serveur. Les bases de données sont isolées. Des droits spécifiques peuvent être définis sur chacune des bases. Cela évite de multiplier les serveurs. 7

Reconnexion automatique Cette fonctionnalité traite automatiquement l aspect de la «déconnexion» en cours d utilisation entre client et serveur. Typiquement, ce problème se pose avec des matériels dont la connexion avec le serveur n est pas assurée en permanence: les appareils mobiles en particulier (Wi-Fi, 3G, ). En connexion Wi-Fi par exemple, la liaison entre un appareil distant et le serveur peut s interrompre un court instant. Ce type de coupure peut intervenir également sur des réseaux filaires classiques. Lorsque l application est de nouveau connectée, il est utile de «reprendre» l application là où la communication a été interrompue, et que les buffers soient correctement renseignés. Grâce à la gestion automatique de la reprise, l ensemble des «buffers» et des positions est mémorisé et réaffecté. L application peut ainsi continuer à s exécuter sans erreur, comme si la connexion ne s était pas interrompue. Il est également possible de gérer les interruptions de connexion par programmation, ou d exécuter des traitements supplémentaires si on le souhaite. Sauvegarde programmation, directement depuis l application. La périodicité de la sauvegarde complète et de la sauvegarde différentielle éventuelle peut être spécifiée (exemple: 1 complète par mois et 1 différentielle par semaine). L exécution de procédures stockées avant et/ou après la sauvegarde permet de réaliser des traitements automatiques: envoi d email, copie de la sauvegarde sur un emplacement réseau, etc...) Le nombre de sauvegardes à conserver peut être spécifié. La sauvegarde peut s exécuter : à chaud, sans déconnecter les utilisateurs de manière transparente, sans perturber le fonctionnement des applications. Ordonnanceur intégré (tâches planifiées) HyperFileSQL dispose d un ordonnanceur intégré qui permet de définir et paramétrer des tâches planifiées. Une tâche ne consiste pas seulement à permettre d exécuter une procédure stockée (UDF), mais permet également de déclencher une sauvegarde, ou de déclencher une optimisation automatique des performances. La définition s effectue par le Centre de Contrôle ou par programmation. L ordonnanceur permet aux DBA de programmer l exécution automatique de tâches sur le serveur; il permet par exemple de réaliser des traitements par lots. L ordonnanceur est plus performant que l exécution de commandes dans le planificateur de tâches de Windows ou dans le «cron» de Linux. Les tâches peuvent être exécutées à une date fixée, avec un ou plusieurs intervalles réguliers. Il est possible de créer, ajouter, modifier, activer, désactiver des tâches programmées par programmation, ou depuis l outil d administration, sous réserve de posséder les droits adéquats. Paramétrage d une sauvegarde La sauvegarde est une fonctionnalité importante d une base de données. Il est possible de sauver l intégralité du serveur, ou uniquement une base de données, ou uniquement une sélection de tables, avec ou sans les index. HyperFileSQL gère la sauvegarde à chaud, différentielle. Une sauvegarde est transportable, par exemple d un Windows à un Linux, d une version Client/Serveur à une version Classic. Une sauvegarde peut être déclenchée depuis le Centre de Contrôle (sauvegarde immédiate, sauvegarde planifiée), ou par Interface graphique et conviviale de l ordonnanceur (tâches planifiées) Exemple de paramètres possibles : Tous les mois ou certains mois seulement Tous les jours ou certains jours (le lundi par exemple, ou le 4 de chaque mois) 8

A heure fixe ou toutes les n heures et/ou n minutes. Nombre de fois où la tâche doit être exécutée (10 fois par exemple, ou à l infini). Cluster (ferme de serveurs) Réplication universelle La réplication universelle fonctionne quelles que soient les bases de données utilisées. Il est par exemple possible de répliquer des données HyperFileSQL entre elles, ou avec des données Oracle ou provenant de n importe quelle autre base de données. La réplication peut être unidirectionnelle ou bi-directionnelle, et peut s effectuer selon différents médias: ordinateurs connectés au réseau, clé USB, Internet, GPRS, 3G... N importe quelle base: HyperFileSQL, Oracle, SAP, AS/400, MySQL, mobile... N importe quel média: sur place, par réseau, par modem, via Internet, Wifi, GPRS... Une réplication se définit facilement à l aide de l assistant de réplication, ou par programmation. Réplication déconnectée Le mode de «réplication déconnectée» permet à une réplication de se gérer de façon autonome. La réplication s effectue sans connexion permanente au serveur contenant l autre base de données. Le principe est simple: le réplica est envoyé sur le serveur de réplication (par Internet, via une clé USB,...). La liaison avec le serveur est ensuite inutile. La réplication «déconnectée» N importe quelle base: HyperFileSQL, Oracle, AS/400, MySQL, mobile... Grâce à la fonctionnalité de cluster, un ensemble de serveurs physiques apparaît comme un serveur unique aux clients. La défaillance éventuelle d un serveur physique ne provoque pas de défaillance des accès à la base de données (haute disponibilité, tolérance aux pannes). Les serveurs se répliquent automatiquement les uns les autres en temps réel. La charge d accès lecture est répartie sur l ensemble des serveurs (répartition de la charge en lecture). On peut ajouter et supprimer des serveurs à chaud. En cas de crash d un serveur, il se re-synchronisera automatiquement au démarrage. Lorsqu un utilisateur est connecté à un serveur qui défaille, l application ne sera pas déconnectée, et sera automatiquement reconnectée à un serveur valide (basculement automatique). Le cluster est également très utile pour les infrastructures SaaS. Modification Automatique des Données sur chaque site (SSD) Quel informaticien, quel DSI n a pas pesté contre le temps perdu à écrire ces fameuses «moulinettes» (scripts) de tables pour ajouter ou agrandir une colonne ou un index à une table existante, pour changer un type de données dans une colonne? Le problème est encore plus complexe quand de nombreuses (et souvent différentes) versions de l'application sont déployées: il faut en plus vérifier la version utilisée de la base de données. L'écriture de moulinettes (scripts) est toujours délicate, car elle modifie des données. Avec HyperFileSQL tout cela appartient au passé! HyperFileSQL gère de manière transparente l évolution des structures (schémas) de données grâce à la technologie SDD (synchronisation du schéma des données). Si par exemple une colonne voit sa taille modifiée, ou si une colonne est rajoutée, ou encore si le type des données contenues change (entier vers réel par exemple) HyperFileSQL mettra à jour automatiquement les données des tables concernées. Un historique de 100 versions est géré. Finies les «moulinettes»! Finis les scripts! Finis les «Alter table» hasardeux et insuffisants! La procédure de mise à jour, qui sera installée et exécutée automatiquement avec la mise à jour de votre application, est générée automatiquement. 9

Droits d accès : authentification pour établir la connexion SDD: Mise à jour automatique du schéma de données (également appelée Modif. Auto.) Le SDD (synchronisation du schéma des données) effectue automatiquement : La comparaison et synchronisation automatique de la base et des données par rapport au schéma à obtenir L ajout, suppression, renommage de colonne Le changement de type, de taille L ajout/suppression de clé/index, Ajout/suppression de contraintes L ajout/suppression de triggers, de procédures stockées. Le serveur dispose d un système d authentification des utilisateurs. Il vérifie qu un utilisateur est autorisé à se connecter, et ensuite qu il a les droits suffisants pour exécuter ses requêtes: par exemple droit de supprimer des lignes pour exécuter une requête de suppression. Le réglage des droits est très fin: au niveau du serveur, de la base de données ou de la table. Il s effectue par programmation ou par une interface conviviale. Les mots de passe ne sont pas sauvés en texte clair sur le serveur: c est une version hashée qui est sauvée par sécurité. Il est possible de définir une période d expiration des mots de passe. Il est possible de définir des groupes d utilisateurs. Le SDD peut également être lancé par ligne de commande. Notez qu il n est pas nécessaire d utiliser d autres outils de gestion de script pour réaliser ces tâches. Notez également que le SDD fonctionne quelles que soient les versions du schéma des bases cibles: le SDD fonctionne immédiatement sur une version n-3 par exemple. Cette fonctionnalité de SDD peut s exécuter : à chaud, sans déconnecter les utilisateurs de manière transparente, sans perturber le fonctionnement des applications. Lien avec les autres bases de données Il est bien entendu possible d utiliser HyperFileSQL en parallèle avec d autres bases de données. D ailleurs, la plupart des S.I. utilisent plusieurs SGBD hétérogènes. Une même application peut utiliser à la fois et simultanément une base HyperFileSQL et d autres bases de données. HyperFileSQL permet également l import et l export facile de données avec d autres bases de données. SÉCURITÉ L intégration, la gestion automatique des verrous, le Centre de Contrôle,... assurent par leur seule existence une grande sécurité d utilisation. Des fonctionnalités spécifiques à la sécurité sont également disponibles. Centre de Contrôle HyperFileSQL: définition des droits Au niveau du serveur : Droit de supprimer ou ajouter des utilisateurs ou groupes Droit de voir les utilisateurs et les groupes Droit de créer une base de données Droit de changer les droits Droit d'arrêter le serveur Droit de changer son propre mot de passe Droit de déconnecter les postes client Droit d'envoyer des messages aux postes client Droit de paramétrer le serveur Droit de paramétrer la priorité des utilisateurs Droit de réaliser des sauvegardes Droit de paramétrer les tâches planifiées Droit de consulter les statistiques d'activité et les logs du serveur. Au niveau d une base de données : Droit d'ajouter de nouvelles lignes dans une table de données Droit de bloquer les tables ou les lignes d une table Droit de changer les droits Droit de modifier les règles d'intégrité sur une table Droit de modifier le propriétaire d'un élément Droit de se connecter au serveur (connexion cryptée et non cryptée ou connexion cryptée uniquement) Droit de créer une table par programmation Droit de brancher et de débrancher la gestion des doublons 10

Droit de lire les lignes d une table Droit de lancer une ré-indexation ou un calcul de statistiques sur une table Droit de lancer une modification automatique des tables (SDD) Droit de modifier les lignes d une table Droit de supprimer les lignes d une table Droit de supprimer une base de données Droit de supprimer une table par programmation Droit de brancher et de débrancher la gestion de l'intégrité Droit de bloquer l'accès à une base de données Droit d'exécuter des procédures stockées et/ou des commandes WLangage dans les requêtes Droit de paramétrer les procédures stockées Droit de déboguer les procédures stockées Droit de modifier les triggers Droit de réaliser des sauvegardes. Au niveau d une table : Droit d'ajouter de nouvelles lignes dans une table Droit de bloquer les tables ou les lignes d une table Droit de changer les droits Droit de modifier les règles d'intégrité sur une table Droit de modifier le propriétaire d'un élément Droit de brancher et de débrancher la gestion des doublons Droit de lire les lignes d une table Droit de lancer une ré-indexation ou un calcul de statistiques sur une table Droit de lancer une modification automatique des tables (SDD) sur une table Droit de modifier les lignes d une table Droit de supprimer les lignes d une table Droit de supprimer une table par programmation. Injection SQL impossible L utilisation du générateur de fenêtres de WINDEV et du générateur de pages de WEBDEV, par la définition des champs de saisie qu il génère automatiquement en fonction du schéma des données, rend quasiment impossible les attaques par «injection de code SQL», et ce de manière automatique. Les données que l utilisateur final saisit sont vérifiées automatiquement, en temps réel dès la saisie, et ne sont pas transmises à l application si elles sont erronées ou incohérentes. par programmation dans l éditeur de schéma (d analyse). Si une personne malveillante se procure un fichier de données crypté (vol, copie, récupération sur une machine recyclée, sur une machine perdue,...), elle ne pourra pas l exploiter. OUVERTURE HyperFileSQL est ouvert à toutes les technologies, et s insère facilement dans tout S.I. existant. Pilote ODBC La fourniture du pilote ODBC permet à des applications tierces d accéder aux données stockées sur un serveur HyperFileSQL, comme par exemple PHP, Python, Ruby, Access Provider OLE DB La fourniture du pilote OLE DB (en mode lecture et écriture), permet à des applications tierces d accéder aux données stockées sur un serveur HyperFileSQL, comme par exemple C#, ASP.Net, Crystal Reports, Business Object, PHP, Excel,... Importation de base L outil WDCONVER (livré en standard) permet d importer des bases de données Oracle, SQL Server, MySQL,... L import du schéma des données est automatique. L import de données depuis les formats texte (séparateurs personnalisables: tab, espace ), CSV, XML, est également facile. LIEN AVEC WINDEV, WEBDEV, WINDEV MOBILE Connexions cryptées La connexion entre le client et le serveur peut être cryptée. Pour définir un haut niveau de sécurité, il est possible d interdire les connexions non cryptées au serveur. Cryptage des données L accès aux données peut être sécurisé, et les données ellesmêmes peuvent être sécurisées. L ouverture de la table peut nécessiter un mot de passe. Les données elles-mêmes peuvent être cryptées. Plusieurs modes de cryptage sont gérés: standard sur 128 bits RC5 12 boucles sur 128 bits RC5 16 boucles sur 128 bits Le mode et la clé de cryptage peuvent être définis : Accès natif WINDEV et WEBDEV WINDEV, WEBDEV et WINDEV Mobile sont des Ateliers de Génie Logiciel. WINDEV est l AGL N 1 en France. L accès à HyperFileSQL est «natif» WINDEV et WEBDEV, ce qui signifie que les performances d accès (lecture, écriture) sont optimisées. 11

Les schémas de données HyperFileSQL sont également directement et immédiatement reconnus par les environnements de WINDEV et WEBDEV, et bénéficient donc des automatismes et assistants de ces environnements: création automatique d IHM, de champs, complétion sous l éditeur de code... Le databinding est supporté, en visuel sous l environnement et par programmation. Assistance automatique Dans une application WINDEV, l assistance à l utilisateur final est automatique dans les cas d erreur suivants: détection des accès concurrents non protégés doublons non respect des contraintes d intégrité mot de passe incorrect déconnexion blocage. Si une de ces erreurs se produit, l application affiche automatiquement une fenêtre d assistance adaptée. Multicontexte Il est possible de manipuler à un instant donné, plusieurs contextes et plusieurs connexions différents sur une même base. Générateur de fenêtres et d IHM à partir des schémas de table Les IHM générées tiennent compte de la définition de la table. Par exemple si une colonne est de type numérique, avec une longueur maximum de 8, seules les données de ce type seront autorisées à la saisie. Il sera impossible de saisir du texte, ou un nombre de taille supérieure. 3 exemples de fenêtres créées avec WINDEV Ici, 2 utilisateurs tentent de modifier en même temps le même champ! Une fenêtre s ouvre automatiquement et demande quelle valeur prendre. Il n y a rien à programmer. Curseur en WINDEV et WEBDEV La programmation native sous WINDEV et WEBDEV est grandement facilitée par un ensemble d automatismes et d assistants très évolués. Les relations entre les tables sont détectées automatiquement. L accès à un champ de la base de données se définit facilement avec une syntaxe claire et intuitive: nom de table, nom de colonne (client.nom). Les assistances à la saisie de code sont permanentes et facilitent une saisie sans faute de frappe, sans avoir à rechercher un nom. Aide à la performance, Tuning, audit Le profiler et l Audit dynamique permettent d analyser les performances d une application, et par là même de vérifier que les accès aux données sont programmés de manière optimale. Le tuning permet d'optimiser les requêtes, de vérifier les index, la mise en place des statistiques, la surveillance du serveur, de contrôler la mémoire, l'utilisation du CPU, de l'espace disque, des connexions, etc... La fonction SQL «Explain» permet d anayser l ordre d exécution d une requête. 12

Des contrôles sophistiqués, prêts à l emploi et à être personnalisés sont disponibles par simple glisser/déplacer: champ de saisie formaté onglets combo box images ascenseurs boutons graphiques animés boutons poussoir interrupteurs tableaux listes arborescentes (tree-view) tiroir champs ActiveX boutons «spin» potentiomètres barre d icones splitter (séparateur) barre d état RTF jauge graphe carrousel... LES OUTILS champ d'affichage (libellé) listes déroulantes combo auto-alimentée images animées boutons graphiques (icones) boutons texte boutons temporisés sélecteurs mono et multi-colonnes listes graphiques table hiérarchique champs OLE zones de clicage champs avec ombre floue champs HTML formes géométriques liste graphique Web caméra zones répétées boite à outils codes-barres calendrier Administration : centre de contrôle HyperFileSQL Gestion des bases de données Gestion de la taille des données Arrêt/démarrage des différentes instances de serveurs Visualisation des informations spécifiques au serveur, à la base, aux tables Désinstallation de serveur HyperFileSQL Affichage de la liste des connexions en cours Possibilité de terminer/interdire des connexions. Envoi de messages aux utilisateurs Paramétrage de l emplacement des bases de données, des journaux, activation et emplacement des logs, des statistiques d activités, Définition du port de connexion au serveur, Définition du port pour le débogage à distance, Edition des comptes Gestion des transactions en cours, rollback de transaction Gestion des tâches planifiées Réalisation de sauvegardes Gestion des sauvegardes Tuning à chaud : taille du cache, activation des logs etc Création, suppression, import de bases de données. Explorateur de bases de données Exécution de requêtes Sauvegarde et restauration des données, Visualisation de la structure des tables. Automatisation de fonctions courantes. Monitoring. Gestion des utilisateurs et groupes d utilisateurs, ainsi que de leurs droits Gestion des utilisateurs connectés Déconnexion d utilisateurs Edition des statistiques précises d utilisation du serveur: postes, requêtes, journaux, logs, paramètres... Visualisation des blocages de lignes... Administration à chaud De nombreuses tâches de maintenance peuvent s effectuer à chaud, sans avoir à déconnecter les utilisateurs, et sans que ceuxci ne soient gênés dans l utilisation de leurs applications, qui continuent à lire et écrire les données pendant ces phases: SDD «Modif Auto» à chaud Réindexation à chaud Optimisation automatique des performances à chaud Changement de mot de passe à chaud Sauvegarde. Un onglet du Centre de Contrôle HyperFileSQL Le Centre de Contrôle HyperFileSQL est un outil d administration indispensable disposant d une interface graphique intuitive et ergonomique. Le Centre de Contrôle HyperFileSQL permet d effectuer de nombreuses tâches, depuis un poste du réseau ou depuis Internet, telles que : Modéliser une base de données La définition d un schéma de base de données s effectue facilement à l aide du puissant éditeur visuel livré. De nombreux assistants vous guident. L édition visuelle du modèle du schéma (création, suppression, modification des tables, des colonnes, des relations, des contraintes, des index, des triggers ) permet de définir un schéma de base de données sans avoir à écrire de code SQL. L éditeur visualise de manière graphique l'organisation des données et des traitements. 13

Un schéma de données (une analyse) L éditeur sait importer des schémas depuis des bases HyperFileSQL, SQL Server, Oracle, OLE DB, Un import automatique de schémas existants peut être effectué. Le dossier du schéma de base de données peut être édité à la demande (format papier, HTML, PDF, Word, OpenOffice). Définition assistée des relations (liaisons) L assistant demande alors s'il doit générer les éventuelles tables de relation nécessaires, ou s'il doit utiliser des tables existantes. L assistant demande enfin l intitulé des relations: le schéma est défini. L éditeur visuel de schéma gère également : La rétro analyse depuis un serveur La modélisation logique ou physique L édition des connexions La comparaison de schémas L historique des schémas La génération de scripts DDL L export du modèle du schéma sous format d image vectorielle. UML Pages extraites d un dossier automatique Comment créer un schéma de données (une analyse)? Créer un schéma de données (une analyse) est très facile: un assistant puissant vous guide. Il suffit de définir la structure des tables constituant le schéma (l analyse); les colonnes sont définies, ou récupérées du dictionnaire des données. On indique le type des colonnes, le type de clé (index)... Toute nouvelle colonne créée vient alimenter le dictionnaire des données. On définit ensuite les relations entre les tables. Pour relier des tables, il suffit de tracer un lien avec la souris! L assistant pose des questions en langage naturel pour déterminer la nature des relations. L assistant demande également si la vérification de l'intégrité référentielle doit être automatique ou pas. Le diagramme de classes UML WINDEV et WEBDEV gèrent en standard les 9 modèles UML. En particulier, le diagramme de classes peut être généré automatiquement à partir du schéma de la base de données. La programmation en mode 3-tier est ainsi énormément facilitée par un mapping objet-relationnel automatique: les classes sont automatiquement générées pour implémenter la logique métier propre à l application, ainsi que la mise à jour des données des objets vers les tables, et réciproquement. 14

Editeur de requêtes La création des requêtes s effectue en langage SQL ou en L5G WLangage. Les requêtes peuvent être directement saisies, ou générées par l éditeur de requêtes (Etats & Requêtes), fourni en standard avec WINDEV et WEBDEV, et librement diffusable auprès des utilisateurs finaux des applications que vous avez créées. L éditeur de requêtes permet également d optimiser la description (le schéma) des bases de données, en détectant et définissant les index nécessaires aux performances d exécution des requêtes créées. L éditeur de requêtes génère les requêtes à la fois en SQL et en langage naturel, afin de vérifier qu elles correspondent bien à l opération souhaitée! Il n y a ainsi pas de risque d erreur. La requête est également générée sous forme schématique (graphique animé). Le mode opératoire pour créer une requête est simple: choisissez les colonnes à intégrer, les conditions de sélection à l aide de l assistant, et la requête est générée en code SQL optimisé. L éditeur effectue également la rétro-analayse de requêtes existantes. Le résultat d une requête peut être une fenêtre de visualisation, un état imprimé, ou une table HyperFileSQL. Une requête peut utiliser comme source le résultat envoyé par une autre requête. Afficher tous les NumCommande, NumCommandeClient, Date- Commande, NumClient, ModeRèglement et DateFacturation tels que DateFacturation est égal à DateFacturation ET COMMANDE.TotalTTC est supérieur ou égal à MontantTTC ET HISTORIQUE.Réceptionniste est égal à Receptionniste OU PRODUIT.QteMini est égal à QuantiteMini ET ModeRèglement contient ModeReglement ET COMMANDE.Observations contient Observation. Quelques clics suffisent à créer une requête, et à la vérifier en langage naturel. Outil de reporting (logiciel «Etats & Requêtes») Le logiciel «Etats & Requêtes» est un éditeur d états que vous pouvez diffuser librement, gratuitement et de manière illimitée à vos utilisateurs finaux, pour toute application réalisée en WINDEV ou en WEBDEV. Cet éditeur d états est totalement interfacé nativement avec HyperFileSQL, et permet la création très facile d états sophistiqués utilisant des données stockées (entre autres) dans des bases HyperFileSQL. PDF est géré en standard, tout comme les fonds de page, les codes-barres, les étiquettes... et tout ce qui est nécessaire! Un état créé avec Etats & Requêtes Depuis l éditeur d états, l export vers Word, Excel, OpenOffice, l envoi d un mail, etc... sont automatiques 15

Outil de comparaison de données : WDHFDiff L utilitaire WDHFDIFF permet de comparer : la structure de 2 tables les données de 2 tables. Cela peut être très utile en phase de mise au point. Robot de surveillance Un état peut être dirigé vers différentes cibles Les formats de codesbarres supportés sont: UPCA, UPCE, EAN13, EAN8, EAN128, CODE128, CODE39, CODE93, CODE11, CODE128, Intervaled 2 of 5, CODABAR, CB_MSI, Datamatrix, PDF417, QR code... RAD: pour générer les fenêtres et les pages Une page Web générée par WEBDEV Le RAD de WINDEV, WEBDEV et WINDEV Mobile génère également les fenêtres et pages, ainsi que les champs, en paramétrant les contrôles de saisie en fonctions des informations contenues dans le schéma des données (analyse): champ obligatoire, taille maximale, types de données acceptées, vérification de bornes,... WDMAP: visualiseur de données WDMAP permet de visualiser, éditer et modifier les données d une table. WDMAP est très utile en phase de test et de débogage. WDMAP permet de filtrer, de trier les données, d effectuer des exports immédiats (vers Word, Excel, OpenOffice, XML,...). Le robot de surveillance (librement diffusable avec vos applications) permet de sécuriser l exploitation des serveurs. Le robot surveille en permanence, et détecte immédiatement les éventuelles connexions impossibles avec le serveur. Le serveur alerte, au choix, par : envoi d un message paramétrable d email aux adresses indiquées (jusqu à 20 adresses) message envoyé à une application spécifique (messagerie interne, ) message envoyé à la messagerie intégrée écran de contrôle (alerte visuelle et/ou sonore) lancement d une procédure WLangage programme tiers (ce programme tiers peut par exemple effectuer l envoi d un message paramétrable par SMS aux numéros indiqués). Bien entendu, il est possible de choisir une combinaison de ces alertes. Parmi les paramètres de surveillance que l on peut spécifier, vous trouverez : la fréquence: effectuer le test tous les combiens, de 2 minutes à 1 jour la répétition: en cas de non réponse de l élément surveillé, ré essayer le test combien de fois et après quel délai avant de déclencher l alerte le texte du message à envoyer le média du message (SMS, email, ). SILO: superviseur d infrastructure logicielle Le SILO permet de recenser les accès de toutes les applications WINDEV et de tous les sites WEBDEV à toutes les ressources réseau, dont les bases de données HyperFileSQL. 16

Le SILO permet d analyser l évolution des accès aux bases de données au cours du temps, de savoir quelles applications et quels postes accèdent à une base de données,... Des statistiques précises sont disponibles à tout moment. PROGRAMMA- TION: SQL ET WLANGAGE La programmation simple et puissante La programmation de la base de données HyperFileSQL est à la fois facile et puissante. Cette programmation peut s effectuer en SQL et/ou en L5G WLangage. La programmation par le langage SQL est une programmation universellement connue. La programmation avec le langage de 5 génération WLangage permet la programmation évoluée et puissante de curseurs. Les automatismes avec les applications et sites développés en WINDEV et WEBDEV sont alors très forts. RAD: pour générer le code Le code peut être généré à la demande par WINDEV et WEBDEV en utilisant la fonctionnalité de RAD, ou par les nombreux assistants disponibles dans ces environnements. Le code généré peut ensuite être modifié. Le RAD supporte le concept de «pattern», qui permet de définir soi-même le code qui sera généré. Liste des ordres SQL supportés Voici la liste des fonctions SQL supportées (cette liste n est pas exhaustive). Le détail de chaque fonction SQL n est ici pas indiqué. ABS ACOS ADD_MONTH ALL AND ANY AS ASC ASCII ASIN ATAN ATAN2 AVG BETWEEN BIN BOTTOM CASE CAST CBRT CEIL CEILING CHAR_LENGTH CHARACTER_LENGTH COALESCE CONCAT COS COUNT CREATE TABLE DECODE DEGREES DELETE DESC DISTINCT DIV DROP TABLE ELT EXISTS EXP FIELD FLOOR FROM FULL OUTER JOIN GREATEST GROUP BY HAVING HEX IN INNER JOIN INSERT INSTR INTO IF NULL IS NULL LAST_DAY LAST_INSERT_ID LCASE LEAST LEFT LEFT OUTER JOIN LEN LENGTH LIKE LIMIT LN LOG LOG10 LOWER LPAD LTRIM MAX MD5 MID MIN MOD MONTHS_BETWEEN NEW_TIME NEXT_DAY NOT NVL OCT OCTET_LENGTH ON OR ORDER BY PATINDEX PI POSITION POWER RADIANS RANDOM REPEAT REPLACE REVERSE RIGHT RIGHT OUTER JOIN ROUND RPAD RTRIM SELECT SET SHA SHA1 SIGN SIN SOME SOUNDEX SOUNDEX LIKE SOUNDEX2 SOUNDEX2 LIKE SPACE SPLIT_PART SQRT STDDEV STDDEV_POP STDDEV_SAMP STRING_AGG SUBSTR SUBSTRING SUM SYSDATE TAN TOP TRANSLATE TRIM TRUNC UCASE UNHEX UNICODE UNION UPDATE UPPER UUID VALUES VAR_POP VAR_SAMP VARIANCE WHERE XOR Les requêtes SQL de type «Select» acceptent de nombreuses fonctions WLangage en paramètres, ce qui permet d affiner facilement une sélection. Les fonctions WLangage acceptées sont: Abs Age AnsiVersOem AnsiVersUnicode ArcCosinus ArcSinus ArcTang Arrondi Asc Caract ChaîneCompare ChaîneConstruit ChaîneFormate ChaîneOccurrence ChaîneVersDate ChaîneVersDurée ChaîneVersUTF8 Complète ComplèteRep Compresse ConstruitEntier Conversion Cosinus CoTang CouleurLuminosité CouleurSaturation CouleurTeinte Crypte DateDifférence DateDuJour DateEstValide DateHeureDifférence DateHeureLocaleVersUTC DateHeureUTCVersLocale DateSys DateValide DateVersChaîne DateVersEntier DateVersJour DateVersJourEnLettre DateVersMoisEnLettre DateVersNuméroDeSemaine DDECR DécomplèteRep Décompresse Décrypte DonneGUID Droite DuréeVersChaîne EmailVérifieAdresse EntierVersDate EntierVersHeure EntierVersJour EntierVersJourEnLettre EntierVersMoisEnLettre EntierVersNuméroDeSemaine EnvironnementDOS EstImpair EstNumérique EstPair ETBinaire ExeInfo Exp ExtraitChaîne fattributlectureseule fchargetexte fchemincourt fcheminlong fcompacte fcompare fcopiefichier fcréelien fcrypte fdate fdateheure fdécompacte fdécrypte fdéplacefichier fdisqueinfo FenEnSaisie FenExtPosH FenExtPosV FenIntPosH FenIntPosV fespacedisque fextraitchemin ffichierexiste fheure fnomcourt fnomlong frepattribut frepcopie frepcrée frepdroit frépertoireexiste frépertoiretemp frepparent frepsupprime freptaille fsauvetexte fséparateur fsupprime ftaille ftailledécompacté ftailledisque ftypedisque Gauche Hasard HDescribeField HDoublet HeureDifférence HeureEstValide HeureSys HeureValide HeureVersChaîne HeureVersEntier HInfoField HListField HRetrieveField HTMLVersTexte HToField HUnlockRecord idonneidentifiant InfoExe INIEcrit INILit InitHasard Inverse LanceAppli Ln Log Maintenant Majuscule Max Milieu Min Minuscule NetAdresseMAC NetIPVersMAC NetMACVersIP NONBinaire NumériqueVersChaîne NuméroDeSemaine OemVersAnsi OUBinaire OuExBinaire OUExclusifBinaire Pâques 17

PartieDécimale PartieEntière Phonétique PoidsFaible PoidsFort Position PositionOccurrence Puissance Racine RegistreCherche RegistreCléSuivante RegistreCréeClé RegistreEcrit RegistreExiste RegistreListeValeur RegistreLit RegistrePremièreSousClé RegistreSupprimeClé RegistreSupprimeValeur RegistreTypeValeur Remplace Répète RéseauConnecte RéseauDéconnecte RéseauNomDomaine RéseauNomRep RéseauUtilisateur RVB RVBBleu RVBRouge RVBVert SansAccent SansEspace scalculecrc16 scalculecrc32 Sinus SourisPosH SourisPosV SysCouleur SysCouleurRes SysEnvironnement SysEspace SysInstance SysNomExe SysRep SysVersionWindows SysXRes SysYRes Taille TailleCommune TailleVersChaîne Tang TermineApp TSL UnicodeVersAnsi URLDécode URLEncode UTF8VersChaîne UUDécode UUEncode Val VérifieExpressionRégulière VersChaine VersionWindows Liste des ordres WLangage Les ordres WLangage permettent de programmer des curseurs, ou même de programmer tous les traitements si vous le désirez. La programmation en L5G WLangage est très puissante et très intuitive. Par exemple, la recherche d une ligne (d un enregistrement), et tous les traitements attachés (ouverture de table, affection de variables,...) s effectuent en une seule de ligne de code, très simple, très puissante: hlitrecherche(client,nom,"dupont") Les programmes source sont limpides, faciles à écrire et surtout faciles à maintenir; cela limite les erreurs, et rend les applications développées plus fiables, plus rapidement. L'utilisation d'instructions en français permet une meilleure maîtrise: le code est auto-commenté! (anglais disponible) L'ordre hlitrecherche sera compris par tous les développeurs, même les novices! Il est possible également de programmer en anglais: l'ordre devient hreadseek. Autre exemple, la création d une table s effectue en 1 ligne de code, sans script: hcréation. Liste non exhaustive des fonctions du WLangage (L5G utilisé par WINDEV, WEBDEV et WINDEV Mobile), avec résumé de leur action. Ici liste en français; chaque fonction existe également en anglais. EcranVersFichier Initialise automatiquement : - la valeur mémoire des champs d une table (des rubriques d'un fichier) avec la valeur des contrôles de la fenêtre ou de la page. - la valeur des variables WLangage avec la valeur des contrôles de la fenêtre ou de la page. EcranVersSource Initialise automatiquement : -la valeur mémoire des champs d une table avec la valeur ddes contrôles de la fenêtre ou de la page. - la valeur des variables WLangage avec la valeur des contrôles de la fenêtre ou de la page. FichierVersEcran Initialise automatiquement les contrôles d'une fenêtre ou d'une page avec : - les valeurs des champs associés à la ligne en cours de la table (du fichier de données) - les valeurs des variables WLangage associées. SourceVersEcran Initialise automatiquement les contrôles d'une fenêtre ou d'une page avec : - les valeurs des champs associés à la ligne en cours de la table. - les valeurs des variables WLangage associées. EspaceSignificatif Ajoute ou supprime les espaces situés à droite d'un champ texte lors de sa lecture. HActiveFiltre HActiveFiltreAuto HActiveTrigger HActiveTriggerServeur HAjoute HAjouteGroupe HAjouteLiaison HAjouteTâche HAjouteUtilisateur HAlias HAnnuleAlias HAnnuleDéclaration HAnnuleRecherche HAnnuleSauvegarde HArrêteServeur HAttacheMémo HAvance HBloqueFichier HBloqueNumEnr HChangeClé HChangeConnexion HChangeLocalisation HChangeNom HChangeRep HChangeRepJnl HChangeRepRpl HChargeParamètre HConnecte HConnecteAccèsDistant HConstruitValClé HConstruitValCléANSI HConvert HCopieEnreg HCopieFichier HCréation HCréationSiInexistant HCréeRéplicaAbonné HCréeRéplicaMaître HCréeRéplicaTransportable HCréeVue HDateEnreg HDébloqueFichier HDébloqueNumEnr HDéclare HDéclareExterne Active le filtre précédemment créé pour la table spécifiée. Active un filtre automatique sur les tables reliées lors du parcours d'un fichier XML. Réactive un trigger précédemment désactivé avec la fonction HDésactiveTrigger. Ré-active un trigger serveur précédemment désactivé. Ajoute la ligne présente en mémoire dans la table. Ajoute un groupe d'utilisateurs. Ajoute une règle d'intégrité entre deux tables sur le serveur. Ajoute une tâche planifiée sur le serveur défini par la connexion. Ajoute un utilisateur à une base de données. Crée un alias logique d une table ou annule tous les alias existants. Annule un alias précédemment déclaré avec la fonction HAlias. Supprime une déclaration précédemment faite avec HDéclare, HDéclareExterne, HDécritFichier. Annule le critère de recherche en cours. Annule une sauvegarde en cours. Arrête un serveur. Associe un fichier à une colonne de type mémo binaire (blob). Avance de plusieurs lignes dans la table, à partir de la position en cours, selon une colonne spécifiée. Bloque une table (un fichier) et restreint l'accès à cette table (ce fichier ) pour toutes les autres applications. Bloque une ligne (un enregistrement) et restreint l'accès à cette ligne (cet enregistrement) pour toutes les autres applications. Change la clé (la colonne) de parcours. Change la connexion à une base de données utilisée pour une table. Modifie le mode de recherche des tables. Modifie le nom physique d une table. Modifie le chemin d'accès à une table. Modifie le chemin d'accès à un fichier journal. Modifie l'emplacement de la description du réplica abonné (fichier RPL). Cette fonction doit être utilisée sur le poste abonné. Lit un paramètre précédemment sauvegardé à partir d'une procédure stockée grâce à la fonction HSauveParamètre. Redéfinit un ou plusieurs paramètres d'une connexion sur une table spécifique ou sur un ensemble de tables. Ouvre une analyse au format HyperFileSQL Classic via un accès distant. Construit la valeur d'une clé composée (d un index) pour réaliser un filtre ou effectuer une recherche. Sous une plateforme UNICODE (pocket PC par exemple), permet de construire la valeur d'une clé composée (index) pour l'enregistrer dans une table HyperFileSQL. Convertit une valeur numérique en une chaîne binaire pour effectuer une recherche sur une clé (un index) numérique. Copie le contenu de l'enregistrement en cours (de la ligne en cours) dans l'enregistrement en cours d'un autre fichier (dans la ligne en cours d une autre table). Effectue une copie d une table (d'un fichier) HyperFileSQL. Crée à vide une table avec les index décrits. Crée à vide une table (si la table n'existe pas) ou ouvre une table (si la table existe déjà). Crée le fichier de description d'un réplica abonné (fichier ReplicaAbonne.RPL). Crée le fichier de description d'un réplica maître (fichier ReplicaMaitre.RPL). Crée un fichier qui peut être utilisé pour répliquer les données de la base de données en cours (pour envoi par email ou disquette par exemple). Crée une vue HyperFileSQL. Renvoie la date et l'heure de la dernière écriture d'une ligne dans uns table HyperFileSQL. Débloque une table (un fichier) précédemment bloquée avec la fonction HBloqueFichier. Débloque une ligne (un enregistrement). Déclare une description de table (présente dans un autre schéma, une autre analyse) dans le projet en cours. Importe temporairement dans le schéma en cours, l'analyse en cours la description d une table à partir d'une table HyperFileSQL existante. 18

HDéconnecteClient HDécritConnexion HDécritFichier HDécritIndexFullText HDécritLiaison HDécritRubrique HDécritTrigger HDécritTriggerServeur HDémarreServeur HDernier HDésactiveFiltre HDésactiveFiltreAuto HDésactiveTrigger HDésactiveTriggerServeur HDétruitTrigger HDétruitTriggerServeur HDétruitVue HEcrit HEnDehors HEnregistrementVersXML HEnvoieMessageVersClient HErreur HErreurBlocage HErreurDoublon HErreurEtatModification HErreurInfo HErreurIntégrité HErreurModification HErreurMotDePasse HEtat HEtatServeur HExécuteProcédure HExécuteRequête HExécuteRequêteSQL HExécuteVue HExporteXML HExtraitMémo HFerme HFermeAnalyse HFermeConnexion HFichierExiste HFiltre HFiltreCommencePar HFiltreComprisEntre HFiltreIdentique HFinInterditAccèsBaseDeDonnées HFinInterditModif Affiche un message sur le(s) poste(s) Client, et déconnecte l'application. Décrit une connexion temporaire. Décrit une table (un fichier de données) temporaire. Décrit un index full-text dans une table créée par programmation. Décrit une relation (une liaison) temporaire entre deux table. Décrit une colonne (une rubrique) d'une table temporaire. Ajoute ou modifie un trigger sur une table HyperFileSQL. Ajoute ou modifie un trigger serveur. Permet de démarrer un serveur (utilise MantaManager). Positionne sur la dernière ligne d une table. Désactive temporairement un filtre sur une table (une vue ou une requête). Désactive un filtre automatique sur les fichiers reliés lors du parcours d'un fichier XML. Ce filtre a été activé grâce à la fonction HActiveFiltreAuto. Désactive un trigger. Désactive un trigger Serveur HyperFileSQL Client/Serveur. Détruit un trigger. Détruit un trigger serveur. Ce trigger serveur ne sera plus utilisable. Détruit une vue précédemment créée. Écrit une ligne dans une table sans mettre à jour les index correspondants. Permet de savoir si la ligne sur laquelle on veut se positionner est en dehors de la table, du filtre, de la vue ou de la requête. Récupère la structure et la valeur de la ligne (l'enregistrement) en cours et les exporte dans une chaîne de caractères au format XML. Affiche un message sur le(s) poste(s) Client. Renvoie le numéro de la dernière erreur déclenchée par le moteur HyperFileSQL. Permet de tester si une erreur de verrou (blocage) est survenue. Permet de tester si une erreur de doublons est survenue. Renvoie l'état d'une ligne lors d'un conflit de modification. Renvoie une information détaillée sur la dernière erreur déclenchée par le moteur HyperFileSQL. Permet de tester si une erreur d'intégrité est survenue. Renvoie la valeur d'un champ lors d'un conflit de modification. Permet de savoir si une erreur due à un mot de passe erroné a été rencontrée sur la table. Permet de connaître l'état d une ligne. Permet de connaître l'état d'un serveur. Exécute une procédure ou fonction stockée. Initialise une requête créée sous l éditeur de requêtes et déclare cette requête au moteur HyperFileSQL. Initialise une requête écrite en langage SQL et déclare cette requête au moteur HyperFileSQL. Exécute une vue créée auparavant. Exporte les lignes d'un fichier (HyperFileSQL ou OLE DB), d'une vue ou d'une requête dans un fichier XML. Extrait le contenu d'une rubrique de type blob (mémo binaire) dans un fichier. Ferme soit une table (un fichier), soit toutes les tables (tous les fichiers) ouvertes. Ferme l'analyse en cours. Ferme une connexion à une base de données Permet de savoir si une table (un fichier) existe. Définit et active un filtre sur un fichier, une vue ou une requête. Définit et active un filtre de type "Commence par" sur une table, une vue ou une requête. Le filtre de type "Commence par" permet de sélectionner toutes les lignes commençant par une suite de caractères définie. Définit et active un filtre de type "Compris entre" sur une table, une vue ou une requête. Le filtre de type "Compris Entre" permet de sélectionner toutes les lignes comprises entre deux valeurs données. Définit et active un filtre permettant de rechercher la valeur exacte d'un champ de type chaîne. Ce filtre peut être utilisé sur une table, une vue ou une requête. Ré-autorise l'accès à une ou plusieurs bases de données accessibles par une connexion. Débloque une table qui a été bloquée par le même programme avec la fonction HInterditModif. HForceEcriture Force le système d'exploitation du poste sur lequel les tables (les fichiers de données) sont présentes à écrire les données directement sur le disque. HFusionneVue Crée une vue HyperFileSQL à partir de deux vues précédemment créées. HGèreAccèsDistant Débranche temporairement l'accès distant pour accéder à des tables HyperFileSQL Classic présentes en local. HGèreCache Permet de paramétrer la gestion des caches dans le moteur HyperFileSQL Client/Serveur. HGèreDoublon Active ou désactive la gestion des doublons sur une clé. HGèreIntégrité Active ou désactive la gestion d'une contrainte d'intégrité sur une relation d une table. HGèreJournal Active ou désactive la gestion du journal d'une table journalée. HGèreMémo Active ou désactive la gestion des colonnes de type blob (mémo). HGèreREP Active ou désactive la gestion du fichier.rep. HGèreRéplication Active ou désactive temporairement la gestion de la réplication. HGèreServeur Permet de modifier certains paramètres du serveur. HGèreTâche Active ou désactive une tâche planifiée d'un serveur HyperFileSQL Client/Serveur. HGèreTransaction Active ou désactive la gestion des transactions. HGèreTrigger Active ou désactive la gestion des triggers. HImporteHF55 Importe table Hyper File 5.5 dans une table au format HyperFileSQL Classic. HImporteTexte Importe un fichier Texte dans une table au format HyperFileSQL Classic. HImporteXML Importe un fichier XML dans une table au format HyperFileSQL Classic. HInfoBlocage Renvoie des informations sur le verrou (blocage) d'une table, d'une ligne, ou de toutes les lignes d une table. HInfoDroitBaseDeDonnées Permet de connaître les droits accordés sur une base de données définis pour un utilisateur ou un groupe. HInfoDroitFichier Permet de connaître les droits accordés sur une table (un fichier de données) pour un utilisateur ou un groupe. HInfoDroitServeur Permet de connaître les droits accordés sur un serveur à un utilisateur ou un groupe. HInfoFichier Renvoie les caractéristiques d'une table (un fichier) présent sur un serveur HyperFileSQL. HInfoGroupe Renvoie des informations sur le groupe d'utilisateurs spécifié. HInfoLog Renvoie des informations sur les logs du serveur. HInfoMémo Renvoie les caractéristiques des blob (mémo binaires). HInfoPropriétéBaseDeDonnées Permet de connaître les propriétés d'une base de données située sur un serveur HyperFileSQL. HInfoPropriétéFichier Permet de connaître les propriétés d'une table (un fichier de données) située sur un serveur HyperFileSQL. HInfoPropriétéServeur Permet de connaître les propriétés d'un serveur HyperFileSQL. HInfoRéplica Renvoie des informations sur le réplica spécifié. En particulier, cette fonction permet de savoir si la base de données contient des données à répliquer. HinfoSauvegarde Renvoie des informations sur une ou plusieurs sauvegardes effectuées sur un serveur HyperFileSQL Client/Serveur. HinfoServeur Renvoie l'information spécifiée à propos du poste serveur. HinfoTâche Renvoie les caractéristiques d'une tâche planifiée dans une variable avancée de type htâcheplanifiée. HInfoUtilisateur Met à jour les variables de gestion des utilisateurs avec les informations concernant l'utilisateur spécifié. HInitAbonné Initialise la plage d'identifiants automatiques d'un fichier de description d'un réplica abonné (extension ".RPL"). HInterditAccèsBaseDeDonnées Interdit tous les accès à une base de données, ou bien aux bases de données accessibles par une connexion. HInterditModif Interdit toute modification sur une table (pour tous les programmes, y compris le programme qui a demandé l'interdiction). Les lignes sont uniquement accessibles en lecture. HJournalInfo Insère des commentaires lors de la journalisation d'une opération. HJournalRecrée Permet de recréer un journal à vide. Cette fonction permet par exemple une remise à 0 du journal après une sauvegarde ou une réplication par exemple. Le contenu des fichiers existants est perdu. HJournalRedémarre Redémarre la journalisation de la table. Cette journalisation a été arrêtée grâce à la fonction HJournalStop. HJournalStop Arrête la journalisation de la table. Les manipulations effectuées dans le fichier journalé ne sont plus enregistrées. HLibère Transforme les lignes rayées d'une table en lignes supprimées. 19

HLibèrePosition HListeAnalyse HListeBaseDeDonnées HListeClé HListeConnexion HListeElémentStocké HListeFichier HListeGroupe HListeIndexFullText HListeLiaison HListeParamètre HListeParamRequête HListeProvider HListeREP HListeRubrique HListeTâche HListeTrigger HListeTriggerServeur HListeUtilisateur HListeUtilisateurConnecté HLit HLitDernier HLitPrécédent HLitPremier HLitRecherche HLitRechercheDernier HLitRecherchePremier HLitSuivant HMigreCléComposéeReliée HMiseAJourCollection HMiseAJourRequête HMode HModifie HModifieDroitBaseDeDonnées HModifieDroitFichier HModifieDroitServeur HModifieGroupe HModifiePropriétéBaseDeDonnées Supprime une position sauvegardée par la fonction HSauvePosition. Renvoie la liste des schémas (analyses) WinDev disponibles dans un répertoire donné. Liste les bases de données Client/Serveur associées à une connexion. Renvoie la liste des clés et index d'une table reconnue par le moteur HyperFileSQL. Renvoie la liste des connexions définies dans l'application (connexions définies dans le schéma et/ ou dynamiquement). Renvoie la liste des éléments stockés sur un serveur HyperFileSQL (collections de procédures, procédures stockées ou requêtes). Renvoie la liste des tables (des fichiers) de l'analyse en cours ou d'une analyse spécifique reconnue par le moteur HyperFileSQL. Renvoie la liste des groupes d'utilisateurs définis pour une connexion. Renvoie la liste des index full-text d'un fichier (d'une requête ou d'une vue) reconnu par le moteur HyperFileSQL Renvoie la liste des liaisons (de type Merise) présentes dans l'analyse en cours ou dans une analyse spécifique. Renvoie la liste des paramètres sauvegardés à partir des procédures stockées sur le serveur. Renvoie la liste des paramètres d'une requête créée avec l éditeur de requêtes. Renvoie la liste des providers OLE DB installés sur le poste. Renvoie la liste des affectations des tables présentes dans une analyse. Renvoie la liste des colonnes (des rubriques) d une table reconnue par le moteur HyperFileSQL. Liste les tâches planifiées d'un serveur. Renvoie la liste des triggers appliqués sur une ou plusieurs tables HyperFileSQL. Liste les différents triggers disponibles sur une connexion ou sur un des fichiers de la connexion. Renvoie la liste des utilisateurs définis pour une connexion. Renvoie la liste les utilisateurs actuellement connectés à un ou plusieurs fichiers manipulés par une connexion Client/Serveur. Lit une ligne dans une table en fonction d'un numéro de ligne donné. Positionne sur la dernière ligne d une table, lit la ligne et met à jour les variables HyperFileSQL. Positionne sur la précédente ligne d une table, lit la ligne et met à jour les variables HyperFileSQL. Positionne sur la première ligne d une table, lit ligne et met à jour les variables HyperFileSQL. Positionne sur la première ligne d une table dont la valeur d'une colonne spécifique est supérieure ou égale à une valeur recherchée. Positionne sur la dernière ligne d une table dont la valeur de colonne spécifique est inférieure ou égale à une valeur recherchée. Positionne sur la première ligne d i-une table dont la valeur d'une colonne spécifique est supérieure ou égale à une valeur recherchée. Positionne sur la ligne suivante d'une table, lit la ligne et met à jour les variables HyperFileSQL. Migre les valeurs des clés composées reliées provenant d'une table au format Hyper File 5.5 migré vers HyperFileSQL Classic. Crée ou met à jour une collection de procédures sur un serveur HyperFileSQL Crée ou met à jour une requête sur un serveur HyperFileSQL Change le mode et la méthode de blocage des tables. Modifie la ligne spécifiés ou la ligne présente en mémoire dans la table. Modifie les droits donnés à un utilisateur ou à un groupe pour une base de données HyperFileSQL Client/Serveur. Modifie les droits accordés sur une table (un fichier de données) HyperFileSQL Client/Serveur pour un utilisateur ou un groupe. Modifie les droits accordés sur un serveur HyperFileSQL pour un utilisateur ou un groupe. Modifie les informations du groupe en fonction des éléments présents dans les variables de gestion de groupes correspondantes. Modifie les propriétés d'une base de données située sur un serveur HyperFileSQL. HModifiePropriétéFichier Modifie les propriétés d'un fichier HyperFileSQL situé sur un serveur. HModifiePropriétéServeur Modifie les propriétés d'un serveur HyperFileSQL. HmodifieTâche Modifie une tâche planifiée sur le serveur définie par la connexion. HModifieUtilisateur Modifie les informations d'un utilisateur en fonction des éléments présents dans les variables de gestion des utilisateurs correspondantes. HNbEnr Renvoie le nombre de lignes (d'enregistrements) d'une table ou d'une vue HyperFileSQL. HNumEnr Renvoie le numéro de ligne (de l'enregistrement) en cours dans la table ou dans la vue HyperFileSQL. HOptimise Optimise l'accès aux index des tables HyperFileSQL Classic : les index sont chargés dans les caches du système. Accélère les premiers parcours de tables et les premières exécutions de requête. HOptimiseRequête Optimise les requêtes de sélection en utilisant les temps morts lors de la manipulation d'une application (période sans traitements) Optimise l'accès aux index des tables HyperFileSQL. HOuvre Ouvre une table. HOuvreAnalyse Ouvre une analyse au format HyperFileSQL Classic. HOuvreConnexion Ouvre une connexion à une base de données. HPasse Fixe le mot de passe utilisé pour créer ou pour ouvrir une table. HPositionCourante Renvoie la position approximative de la ligne dans une table. HPositionne Positionne sur une ligne à partir de la position approximative d'une de ses colonnes. La ligne est lue. HPoste Mémorise un numéro unique de poste afin d'utiliser les transactions en réseau. HPrécédent Positionne sur la ligne précédente de la table. La ligne n'est pas lue. HPremier Positionne sur la première ligne d une table. La ligne n'est pas lue. HPrépareRequêteSQL Initialise une requête écrite en langage SQL et déclare cette requête au serveur de base de données pour optimiser les prochaines exécutions de cette requête. Cette requête n'est pas exécutée. La requête pourra ensuite être exécutée grâce à la fonction HExécuteRequêteSQL. HPriorité Permet de connaître ou de modifier la priorité de l'application appelante. HPrioritéClient Modifie la priorité d'une application cliente HPurgeRepTravail Purge et détruit le répertoire temporaire précédemment créé lors de l'exécution de la fonction HRepTravailServeur. HRaye Raye une ligne d une table. HRAZ Initialise une ou tous les champs d une table avec leurs valeurs par défaut. HRAZClient Initialise la structure de gestion des postes Client (structure HClient). HRAZGroupe Initialise les variables de gestion des groupes avec les valeurs par défaut. HRAZUtilisateur Initialise les variables de gestion des utilisateurs avec les valeurs par défaut. HRecherche Positionne sur la première ligne d une table dont la valeur d'une colonne spécifique est supérieure ou égale à une valeur recherchée. HRechercheDernier Positionne sur la dernière ligne d une table dont la valeur d'une colonne spécifique est inférieure ou égale à une valeur recherchée. L'enregistrement n'est pas lu. HRecherchePremier Positionne sur la première ligne d une table dont la valeur d'une colonne spécifique est supérieure ou égale à une valeur recherchée. HReconnecte Effectue une reconnexion au serveur pour toutes les connexions interrompues. HRecule Recule de plusieurs lignes dans la table, à partir de la position en cours, selon une colonne spécifiée. HRécupèreEnregistrement Renvoie le contenu de la ligne (l'enregistrement) en cours. HRécupèreLog Récupère dans une table les logs du serveur réalisés entre deux dates données HRécupèreRubrique Renvoie le contenu d'une colonne (rubrique) de la ligne en cours. HRégénèreFichier Régénère une table (fichier) à partir de son journal. HRéindexationEnCours Avertit si une réindexation est en cours sur une table et renvoie le pourcentage de réindexation effectué. HRéindexe Reconstruit l'index d'une table. HRepTravailServeur Renvoie le chemin d'un répertoire temporaire sur le serveur. HRestaureSauvegarde Permet de restaurer une sauvegarde effectuée grâce à la fonction HSauvegarde (ou via le Centre de Contrôle HyperFileSQL). HRetourPosition Restaure le contexte précédemment sauvegardé d'une table. 20