ADELIA |
VADELIA |
SADELIA |
WADELIA |
EADELIA |
(I/B) |
(I/B) (S) |
(B) (S) |
(I/B) (S) |
(B) (S) |
Paragraphe d'utilisation
Tous
Syntaxe
LIRE_DERNIER NomVue Option Paramètre
Option |
→ |
*UNLCK | Rien |
Paramètre |
→ |
*NON_RG | *RG | Rien |
Description
Pour les fichiers n'ayant qu'une seule zone clé : cet ordre correspond à un positionnement sur le dernier enregistrement ayant pour clé l'argument de recherche, et à une lecture arrière (sans comparaison)
(= POSITIONNER_AP + LIRE_ARRIERE).
Pour les fichiers ayant au moins deux zones clés : cet ordre correspond à un positionnement sur le dernier enregistrement d'un groupe, une lecture arrière et une comparaison de la clé de l'enregistrement lu avec l'argument de recherche (= POSITIONNER_AP + LIRE_PRECEDENT).
Il est possible de tester si la lecture a abouti par une instruction du type :
SI NomVue EXISTE |
|
ou |
SI NomVue N_EXISTE_PAS. |
Si la lecture n'aboutit pas, le système ne lit aucun enregistrement et la valeur des zones du fichier n'est pas changée.
Il est également possible de s'assurer que l'enregistrement n'est pas verrouillé, en le testant à l'aide du mot réservé *BLOQUE :
|
L'enregistrement est verrouillé. |
|
L'enregistrement n'est pas verrouillé. |
Voir également l'ordre LIBERER qui permet de libérer un enregistrement de fichier.
Si *UNLCK est indiqué, la lecture ne verrouille pas l'enregistrement. Ce paramètre, utilisé sur un fichier ouvert en mise à jour, permet d'avoir le même effet que s'il avait été déclaré en lecture seule.
Le paramètre *RG permet de générer les règles de gestion implicites de lecture liées à l'entité correspondant à la vue, même si le programme est généré sans l'option de génération des règles de gestion implicites.
Le paramètre *NON_RG permet de ne pas générer les règles de gestion implicites de lecture liées à l'entité correspondant à la vue, même si le programme est généré avec l'option de génération des règles de gestion implicites.
Par exemple
Le fichier VENTES a pour clés : code client et numéro de ligne.
La vue VENTES est utilisée avec W_CODE_CLIENT seulement comme clé d'accès.
CODE_CLI_VTES |
NUM_LIGNE_VTES |
0002 |
01 |
0002 |
02 |
0002 |
03 |
0002 |
04 |
0006 |
01 |
0006 |
02 |
0011 |
01 |
W_CODE_CLIENT = '0002'
LIRE_DERNIER VENTES
* Le pointeur sera positionné dans le fichier sur client 0002, ligne 04
*
DERNIER_NUMERO = NUM_LIGNE_VTES