Qu'est ce qu'un sous-fichier avec enregistrements multilignes ? |
Qu'est ce qu'un sous-fichier avec enregistrements multilignes ? C'est un sous-fichier dans lequel 1 enregistrement est affiché sur plusieurs lignes. Regardons un exemple. |
Qu'est ce qu'un sous-fichier avec enregistrements multilignes ? C'est un sous-fichier dans lequel 1 enregistrement est affiché sur plusieurs lignes. Regardons un exemple. ######################################################################## ## ## ## SAISIE DE COMMANDES -- IDENTIFICATION CLIENT ## ## POS NOM ADRESSE SUR 2 LIGNES NUMERO ## ## _ GUILLOU BRUNO RUE ST LEONARD 41100100 ## ## NANTES 44000 ## ## _ GUILLOU HENRI ROUTE DE ROSPORDEN 41100200 ## ## QUIMPER 29000 ## ## ## ######################################################################## |
Qu'est ce qu'un sous-fichier avec enregistrements multilignes ? C'est un sous-fichier dans lequel 1 enregistrement est affiché sur plusieurs lignes. Regardons un exemple. ######################################################################## ## ## ## SAISIE DE COMMANDES -- IDENTIFICATION CLIENT ## ## POS NOM ADRESSE SUR 2 LIGNES NUMERO ## ## _ GUILLOU BRUNO RUE ST LEONARD 41100100 ## ## NANTES 44000 ## ## _ GUILLOU HENRI ROUTE DE ROSPORDEN 41100200 ## ## QUIMPER 29000 ## ## ## ######################################################################## Ici chaque enregistrement du sous-fichier est affiché sur 2 lignes |
Qu'est ce qu'un sous-fichier avec enregistrements multilignes ? C'est un sous-fichier dans lequel 1 enregistrement est affiché sur plusieurs lignes. Regardons un exemple. ######################################################################## ## ## ## ## ## ## ## _ GUILLOU BRUNO RUE ST LEONARD 41100100 ## ## NANTES 44000 ## ## ## ## ## ## ## ######################################################################## Ici chaque enregistrement du sous-fichier est affiché sur 2 lignes |
Regardons la description du format d'enregistrement R RECCLIE1 TEXT('FORMAT ENREG. S/FICHIER') SFL CHOIX 1 I 4 3DSPATR(CS) CHECK(ER) VALUES(' ' '1') NOMCL R 4 7 RUCLI R 4 40 NOCLI R 4 70 VILLE R 5 7 COPOS R 5 40 |
Regardons la description du format d'enregistrement R RECCLIE1 TEXT('FORMAT ENREG. S/FICHIER') SFL CHOIX 1 I 4 3DSPATR(CS) CHECK(ER) # VALUES(' ' '1') NOMCL R 4 7 RUCLI R 4 40 NOCLI R 4 70 VILLE R 5 7 COPOS R 5 40 |
L'avantage de cette méthode est qu'elle permet d'afficher un grand nombre d'informations. |
L'avantage de cette méthode est qu'elle permet d'afficher un grand nombre d'informations. Le principal inconvénient est qu'elle rend difficile la lecture du sous-fichier. |
L'avantage de cette méthode est qu'elle permet d'afficher un grand nombre d'informations. Le principal inconvénient est qu'elle rend difficile la lecture du sous-fichier. Nous allons étudier une fonction qui permet lors de l'affichage d'afficher seulement la 1ère ligne de chaque enregistrement, et si l'utilisateur le demande d'afficher l'ensemble des lignes de chaque enregistrement. Regardons ce qui va se passer à l'écran. |
######################################################################## ## Le 1er affichage.La 1ère ligne de chaque enregistrement ## ## est affichée ## ## ## ######################################################################## ######################################################################## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ######################################################################## |
######################################################################## ## Le 1er affichage.La 1ère ligne de chaque enregistrement ## ## est affichée ## ## ## ######################################################################## ######################################################################## ## ## ## SAISIE DE COMMANDES -- IDENTIFICATION CLIENT ## ## POS NOM ADRESSE SUR 2 LIGNES NUMERO ## ## _ GUILLOU BRUNO RUE ST LEONARD 41100100 ## ## _ GUILLOU HENRI ROUTE DE ROSPORDEN 41100200 ## ## ## ## ## ## ## ## ## ## ## ######################################################################## |
######################################################################## ## Sur demande utilisateur, toutes les lignes de chaque ## ## enregistrement sont affichées. ## ## ## ######################################################################## ######################################################################## ## ## ## SAISIE DE COMMANDES -- IDENTIFICATION CLIENT ## ## POS NOM ADRESSE SUR 2 LIGNES NUMERO ## ## _ GUILLOU BRUNO RUE ST LEONARD 41100100 ## ## _ GUILLOU HENRI ROUTE DE ROSPORDEN 41100200 ## ## ## ## ## ## ## ## ## ## ## ######################################################################## |
######################################################################## ## Sur demande utilisateur, toutes les lignes de chaque ## ## enregistrement sont affichées. ## ## ## ######################################################################## ######################################################################## ## ## ## SAISIE DE COMMANDES -- IDENTIFICATION CLIENT ## ## POS NOM ADRESSE SUR 2 LIGNES NUMERO ## ## _ GUILLOU BRUNO RUE ST LEONARD 41100100 ## ## NANTES 44000 ## ## _ GUILLOU HENRI ROUTE DE ROSPORDEN 41100200 ## ## QUIMPER 29000 ## ## ## ## ## ## ## ######################################################################## |
Qu'elle est cette fonction ? SFLDROP(CAXX) ou SFLDROP(CFXX) |
Qu'elle est cette fonction ? SFLDROP(CAXX) ou SFLDROP(CFXX) SFLDROP Permet d'afficher la 1ère fois seulement la 1 ère ligne de chaque enregistrement. |
Qu'elle est cette fonction ? SFLDROP(CAXX) ou SFLDROP(CFXX) SFLDROP Permet d'afficher la 1ère fois seulement la 1 ère ligne de chaque enregistrement. CAXX ou CFXX va permettre de définir une touche de commande qui permettra de passer alternativement de l'affichage uniligne à l'affichage multiligne et inversement. Ceci étant géré par l'OS/400. |
Regardons la description du sous-fichier enregistrement A* ------------------------------------------ A R RECCLIC1 SFLCTL(RECCLIE1) A SFLSIZ(11) SFLPAG(10) A OVERLAY A 41 SFLDSPCTL A 42 SFLDSP A 21 SFLEND A 40 SFLCLR A SFLDROP(CF11) A N21 ROLLUP(89) A* ------------------------------------------ A* L'INDICATEUR DE FIN D'ARGUMENT SUR LE ROLLUP EMPECHE DE A* REPASSER LA MAIN AU PROGRAMME. ENVOI DU MESSAGE STANDARD DE FIN A* DE SOUS-FICHIER ET PLUS DE TRANSFERT DE DONNEES ECRAN/PROGRAMME A* ------------------------------------------ A NOLIGN 4 0H SFLRCDNBR(CURSOR) A 1 21'SAISIE DE COMMANDES -- IDENTI+ A FICATION CLIENT' DSPATR(HI) |
######################################################################## ## ## ## Remarque : ## ## Il existe un mot-clé permettant de demander ## ## comme premier affichage le sous-fichier multi-ligne ## ## et de passer mono-ligne sur demande utilisateur ## ## ## ## SFLFOLD(CAXX) ou SFLFOLD(CFXX) . ## ## ## ## Ces deux mots-clés sont COMPATIBLES si conditionnés ## ## (par des conditions contraires) ## ## ## ## 25 SFLDROP(CF11) ## ## N25 SFLFOLD(CF11) ## ## ## ## Si 25 est ON affichage mono-ligne sinon multilignes. ## ######################################################################## |
######################################################################## ## ## ## Remarque : ## ## La V2R20 nous fournit un nouveau mot-clé permettant de mieux ## ## gérér encore cet affichage SFLMODE(nom-de-zone) ## ## ## ## Apres une lecture du format de contrôle la zone contiendra: ## ## '0' si le sous-fichier était affiché tronqué(mono-ligne) ## ## '1' si le sous-fichier était affiché multiligne. ## ## ## ## En association avec le mot-clé SFLCSRRRN qui renvoie le n° ## ## de rang(pouvant ensuite être placé dans la zone SFLRCDNBR) ## ## ## ## cela permet de réafficher un sous-fichier tel qu'il était ! ## ## (MEME PAGE, MEME MODE D'AFFICHAGE dans tous les cas.) ## ## ## ######################################################################## |