Chapitre II Mise en oeuvre de Ingres
  • II-1 Définition de l'environnement *
  • II-2 Abandon de tâche en cours de travail *
  • II-3 Création de base de données *
  • II-4 Accès aux outils Ingres *
  • II-5 Menus et écrans Ingres *
  • II-6 Les écrans d'aide 'help' *
  • II-7 Exemples de touches fonctions *
  • II-8 L'interface sql *
    • II-8-1 Appel direct au niveau Unix *
    • II-8-2 A travers le menu général d'Ingres *
  • II-9 Les écrans de l'interface isql *



  • II-1 Définition de l'environnement

    Avant de pouvoir travailler avec Ingres, il faut adapter l'environnement Unix ; vous serez guidé en consultant le serveur intranet : http://intranet.inrets.fr/logiciels

    Il y a quatre variables à régler :

    • la variable II_SYSTEM :
    $ setenv II_SYSTEM /usr/local/openingres
    • la variable LD_LIBRARY_PATH :
    $ setenv LD_LIBRARY_PATH 

    $LD_LIBRARY_PATH:$II_SYSTEM/ingres/lib:$II_SYSTEM/X11R5/lib

    • la variable path :
    en faisant par exemple, dans le .cshrc : $ set path = 

    ($path $II_SYSTEM/ingres/(bin,utility,cir/utils/bin))

    • la variable TERM_INGRES
    Ingres peut utiliser des définitions spécifiques de terminaux. A Arcueil, actuellement, le type de terminal implicite est vt100. Si vous utilisez un autre type de terminal, vous devez positionner la variable TERM_INGRES à la bonne valeur. 

    Voici les principaux types utiles :
     

    terminal X wview ou wviewf
    mac  vt100mac  
    Sun  wviewf  
    PC   vt100

    exemple :

    $ setenv TERM_INGRES vt100mac
     
    II-2 Abandon de tâche en cours de travail
    Sous isql, si une requête en exécution vous paraît trop longue, vous pouvez reprendre la main au niveau requête par (ctrl) c.

    Éviter (ctrl ) z qui redonne la main au niveau Unix, vous donnant deux choix :

    • reprendre l'exécution de la requête là où elle a été interrompue, lancer : fg 
    • tuer le (les) process ingres, mais risques de perturbations, lancer :
    $ kill -9 n_proc n_proc étant le numéro de process d'appel à Ingres

    II-3 Création de base de données Pour utiliser Ingres sur une base de données, il faut soit qu'elle existe déjà, soit la créer par la commande : $ createdb nom_base Les étapes ultérieures, création du modèle des tables, entrée des données (par saisie ou chargement à partir d'un fichier), interrogations de la base, mises à jour, peuvent se faire de plusieurs façons.

    Ingres est composé de deux grandes parties :

    • des interfaces utilisateur : outils Ingres, programmes utilisateurs, applications Ingres spécifiques, qui font appel à 
    • un gestionnaire de données

    II-4 Accès aux outils Ingres Il peut se faire de plusieurs façons :
    • par des commandes Ingres au niveau commandes Unix
    isql, qbf, tables, vifred ...
    • en choisissant des options du Menu Ingres (commande ingmenu)
    • par des appels à partir d'une application Ingres ou d'un programme en langage évolué 
    • par appel à OpenRoad, outil de création d?application graphique de haut niveau (orienté objet), au niveau commandes Unix en environnement XWindows.
    Sur terminal X ou station, les commandes isql, qbf, tables, vifred, ingmenu s'utilisent dans une fenêtre "wview" que l'on ouvre en lançant la commande : $ wview [-fn nom_de_fonte] [-fb nom_de_fonte] exemple : $ wview -fn 12x24 -fb 12x24b Sur PC, OpenIngres Tools donne directement accès à ces outils.

    Les commandes Ingres, entrées au niveau Unix, permettent de créer, interroger, gérer les bases de données, ainsi que d'avoir accès aux outils d'écran.

    Syntaxe générale :

    $ commande nom_base [options] [param] L'accès au menu Ingres se fait par la commande  $ ingmenu nom_base Menu Ingres
    • utilisation aisée et guidée (touches fonctions, help,...)
    • utilisation, à partir d'un seul écran, de toutes les possibilités de Ingres : 
    • création, suppression, modification de tables et de lignes,
    • mises en forme, 
    • sélections complexes par appel à un langage de requêtes, définition de vos propres écrans, 
    • développement et utilisation des applications, 
    • en bref passage d'un outil Ingres à un autre sans revenir au niveau système.
    Les écrans donnés ci-dessous en exemple sont obtenus sur un Mac, sous MacNix, avec TERM_INGRES = vt100mac.

    écran de ingmenu

    La base que vous voulez utiliser doit exister avant l'appel du menu (même si les tables ne sont pas définies)
     

    Fonction Choix du menu
    Création de table Tables, Queries (SQL)
    Consultation, mise à jour, définition de jointure Queries (SQL, QBF)
    Préparation d'écrans de mise en forme ou de saisie Forms (VIFRED)
    Interrogations complexes Queries (SQL)
    Définition de rapports Reports 


    II-5 Menus et écrans Ingres
    Toutes les interfaces utilisateurs sont des successions d'écrans.

    Pour chaque écran, on dispose d?un certain nombre d?actions possibles.

    Ces actions sont présentées sur une ligne de menu en bas de l'écran.

    Chaque action est activée par la touche fonction indiquée ou par la frappe du début du mot (G pour Go) sur terminal de type vt100, par une touche fonction ou la souris sur terminal X ou station.

    Chaque écran de travail possède une fonction help;

    Les touches fonctions dépendent du terminal utilisé.

    Les actions communes à divers écrans ou outils sont toujours activées par les mêmes touches fonctions , par exemple :
     

    GO  lancer une requête
    END  sortir d'un écran
    QUIT  quitter un outil
    SAVE  sauvegarder des modifications
    HELP  appeler l'écran d'aide

    La mise en ?uvre de certaines actions n?est pas indiquée au menu, par exemple :

    • changer de page 
    • changer de champ (colonne) 
    • quand on modifie le contenu d'un champ, passer du mode insertion au mode écrasement
    N?est pas indiquée non plus la définition de la touche fonction qui permet d?amener le curseur sur la ligne de menu et de faire défiler les options cachées du menu (Menu key). Pour cela, vous aurez besoin d?un écran help.

    II-6 Les écrans d'aide 'help'  Dans chacun des outils d'écran Ingres, le menu comporte une opération Help, qui affiche des informations sur l'outil utilisé, comment se déplacer dans les écrans qu'il affiche, etc. 

    Le texte est parfois affiché sur plusieurs écrans. Chaque écran de help a le menu suivant :
     

    Keys décrit les touches fonction 
    NextPage passer à la page suivante
    PrevPage passer à la page précédente
    Help help sur le help
    End sort de l'écran help et retour à l'écran appelant

    écran du menu "Help"



    II-7 Exemples de touches fonctions Voici un exemple, fourni par le choix "Keys" du menu "Help", pour un certain type de terminal (en l?occurrence un Mac).
     
    ^ ce signe symbolise ci-dessous la touche Control, qui doit être appuyée simultanément avec une autre
    ^e fait basculer (alternativement) l'éditeur du mode écrasement (de ce qui se trouve sous le curseur) au mode allongement (QBF ou ISQL)
    ^d détruit le caractère sous le curseur
    Del la touche Delete détruit le caractère à gauche du curseur
    Ret la touche Return détruit entre le curseur et la fin de la ligne
    ^l dans l'écran résultat, permet de visualiser la partie droite de la fenêtre résultat
    ^h idem, pour la partie gauche
    ^u avance le curseur d'un mot
    ^r recule le curseur d'un mot

    écran du choix "Keys" du menu "Help"



    II-8 L'interface sql

    II-8-1 Appel direct au niveau Unix

    $ isql nom_base

    II-8-2 A travers le menu général d'Ingres

    $ ingmenu nom_base

    Il faut alors activer le menu Queries, puis choisir alors le menu Sql, les deux méthodes vous amènent dans le même écran.

    II-9 Les écrans de l'interface isql Il y a deux écrans : l'écran des requêtes et l'écran des résultats.

    On passe du premier au second en demandant "Go" ou "Complete"

    On passe du second au premier en demandant "End"

    exemple : écran de requêtes où on lance la commande "help" sur la base

    Dans l'écran d'édition de requêtes, le menu est le suivant :
     

    GoResume Réaffiche le résultat de la requête précédente (dans un écran résultat)
    Complete exécute totalement la requête formulée sur l'écran et affiche la dernière page de résultat
    Blank nettoie l'écran de requêtes
    Edit appelle l'éditeur de textes (par défaut vi)
    File Active un sous-menu permettant soit de lire dans l'écran requête une requête précédemment stockée dans un fichier, soit d'écrire dans un fichier les requêtes contenues dans l'écran
    OnError permet de choisir si Ingres doit poursuivre ou arrêter quand une requête comprise dans une suite de requêtes est erronée 
    LineEdit active un sous-menu comportant les options InsertLine (insérer une ligne au dessus du curseur), DeleteLine (détruire la ligne du curseur), SplitLine (coupe la ligne au niveau du curseur) et JoinLine (regroupe la ligne courante et la suivante au niveau du curseur).
    Help sous-menu help standard
    Quit sortie de sql

    écran des résultats

    Dans l'écran résultat, le menu est le suivant :
     
     

    Print impression du résultat sur une imprimante dont vous indiquerez le nom
    File permet d'écrire (uniquement) les résultats dans le fichier dont vous indiquerez le nom (en allongement s'il existe déjà)
    Help sous-menu help standard
    End sort de l'écran résultat pour revenir à l'écran requête