Vous personnalisez des accès SQL dans les lignes -GG des
Segments, sur des lignes de type G. Sur la
première ligne, vous indiquez l'accès que vous voulez personnaliser
et sur les lignes suivantes, vous indiquez la ou les parties de l'accès
que vous voulez modifier ou ajouter.
Procédure
- Saisissez la première ligne de l'accès SQL personnalisé.
Ouvrez le sous-onglet Lignes -GG d'un
Segment. Cliquez sur Ajouter puis sélectionnez G dans
la zone Type.
Saisissez
SQL au
début de la zone
Description pour indiquer
que vous voulez personnaliser un accès SQL Après un espace, indiquez
le type d'accès à personnaliser. Le type d'accès est standard
ou non standard.
- Saisissez les lignes suivantes.
L'accès
SQL est décrit par un ensemble de clauses (par exemple ACCESS, WHERE, ORDER).
Chaque clause est décrite par un mot-clé et des données. A partir
de la deuxième ligne, vous saisissez donc ces mots-clés, qui s'appliquent
indifféremment à la personnalisation des accès standard et non standard.
Les
données correspondantes remplaceront celles qui auraient été générées.
Si elles doivent être ajoutées en complément, saisissez ADD devant
ou derrière chaque mot-clé.
Sélectionnez un type de ligne
G pour
les lignes suivantes. Saisissez le mot-clé et les paramètres nécessaires
à la mise en oeuvre de ce mot-clé dans la zone
Description.
Notes : Un mot-clé qui nécessite plusieurs
lignes ne doit pas être répété sur chaque ligne.
Le délimiteur
correspondant est automatiquement généré à la fin de chaque ligne.
Lorsqu'un nom de colonne ou de variable hôte ne peut être saisi
sur une ligne, vous sélectionnez le type V pour
cette ligne, et saisissez la suite sur la ligne suivante (reprise
du type G). Dans ce cas, et si vous indiquez
un nom de colonne et de variable hôte (sous forme :- ou
non), la variable hôte doit être saisie sur une ligne différente du
nom de la colonne. En revanche, si vous codez une variable hôte et
son indicateur sous la forme :- (sans code
Segment), ils doivent être saisis sur la même ligne.
Vous
pouvez indiquer les mots-clés suivants, en précisant leurs paramètres
associés :
- ACCESS, suivi de l'accès SQL :
Ce mot-clé
permet de réécrire la clause d'accès (par exemple SELECT, UPDATE, DELETE)
- COLUMN, suivi de la liste des colonnes :
Ces
colonnes sont codées soit sous la forme SQL-code Rubrique (dans
ce cas elles sont remplacées à la génération par leur nom relationnel),
soit directement sous leur nom relationnel.
Chaque colonne peut
être suivie (séparée par au moins un blanc) du code de la variable
hôte (et indicateur), codée soit sous la forme :-code Rubrique (à
la génération, le code Segment Ecran défini dans les lignes -CS sera
inséré devant le :-code Rubrique), soit sous
son nom de variable hôte. Si la variable hôte n'est pas codée,
pour les ordres où elle est nécessaire, elle sera générée avec le
code Segment Ecran et le code Rubrique indiqué dans la colonne (sous
la forme SQL-code Rubrique, sinon il est obligatoire
d'indiquer le code de la variable hôte).
Les paramètres
associés à ce mot-clé ont des contraintes spécifiques de ponctuation
:
- Si le nom de colonne et la variable hôte ne peuvent tenir sur
une ligne, vous pouvez utiliser une ou plusieurs lignes de type V mais
uniquement pour le nom de la variable hôte; le nom de colonne ne peut
être saisi que sur une seule ligne.
- Pour l'ordre UPDATE (RW)
du mot-clé COLUMN, l'ensemble formé de la
variable hôte et de son indicateur doit toujours être codé sur une
seule ligne quel que soit le format de leur saisie.
- FROM, suivi d'une liste de tables :
A
la génération, ce mot-clé est transformé en INTO ou
reste à FROM selon le type d'accès.
- ORDER, suivi d'une liste de colonnes :
Ce
mot-clé permet de préciser l'ORDER BY.
Les
noms colonnes peuvent être codés sous la forme SQL-code
Rubrique et les variables hôtes et indicateurs sous la
forme :-code Rubrique.
- PARAM, suivi des paramètres complémentaires
:
Ce mot-clé permet de coder des paramètres supplémentaires comme COUNT, HAVING.
Le mot-clé ADD n'est pas nécessaire.
Les
noms colonnes peuvent être codés sous la forme SQL-code
Rubrique et les variables hôtes et indicateurs sous la
forme :-code Rubrique.
- WHERE, suivi des critères de sélection :
Les
noms colonnes peuvent être codés sous la forme SQL-code
Rubrique et les variables hôtes et indicateurs sous la
forme :-code Rubrique.
Important : Le format généré des Rubriques
date et des Rubriques variables utilisées en paramètres de ces mots-clés
(par exemple, la saisie de la colonne DATJOU (date
du jour) comme paramètre de l'ordre ORDER)
dépend du type de Bloc.
L'option UPPER=NO,
introduite sur une ligne de type O dans les
lignes -GO de l'instance appelant le Segment inhibe la conversion
minuscules majuscules des valeurs saisies entre deux délimiteurs de
littéral (la valeur du littéral est définie au niveau de la Bibliothèque).
La
syntaxe des ordres SQL pour les blocs RDMS (organisation R)
n'est pas implémentée. La règle de préfixage n'est pas appliquée.
Le nom de la table est conservé, et le point situé en tête est supprimé,
s'il existe.
Exemple
- Exemple de personnalisation d'un accès non standard en sélection
pour sélectionner un numéro de trajet supérieur ou égal au numéro
demandé.
Vous modifiez seulement la clause WHERE mais
vous ne voulez pas modifier directement l'accès standard car
cette sélection n'est valable que dans quelques Ecrans.
Figure 4. Exemple de personnalisation de l'accès non standard en
sélection :Type Description
G SQL RB RA
G WHERE SQL-NOTJ >= :-NOTJ
- Exemple d'ajout d'un accès non standard pour compter
le nombre d'enregistrements dans la table des trajets.
Ici,
il s'agit bien d'un accès non prévu en standard. Vous devez
donc décrire un nouvel accès.
Figure 5. Exemple de création d'un
accès non standard :Type Description
G SQL CP
G ACCESS SELECT COUNT (*)
G INTO :WWCA-COMPTEUR
G FROM PTB0.TRAJET
La génération des mots-clés ne se fait que pour les accès
standard ou assimilés à un accès standard (CP, R).
Dans le cas de l'accès CP (non suivi par un
type d'accès standard) il faut tout écrire sur la ligne G,
y compris le mot-clé.