Article tagué Tips

ISPF : Qu’ai-je modifié ?

J’étais récemment en train de modifier un source COBOL, quand une urgence à la machine à café m’a fait quitter mon poste.

Quand je suis retourné à mon source, je n’arrivais pas à me rappeler les modifications déjà effectuées, heureusement ISPF à prévu le coup, en ligne de commande saisissez :

COMP *

Et le tour est joué !

NB : le dataset en edition ne doit pas avoir été sauvegardé

Avant :
Capture ecran COMPARE 1

Après :
Capture ecran COMPARE 2

File-AID : switch Browse et Edit mode

J’ai de bonnes habitudes qui peuvent parfois nuire à la productivité…

Quel que soit l’outil utilisé (Dslist, Platinum, File-AID…) quand je veux visualiser un fichier (un dataset ou une table) je le fais sagement en mode “browse”, cela m’évite de modifier les données sans m’en rendre compte. Eternel problème de gros doigts !

Cette bonne habitude s’est révélée être extrêmement contre-productive lorsque après avoir passé près d’une demi heure à chercher LA donnée qui vérolait un fichier très volumineux, j’ai voulu la modifier.

Arggh!!! On doit ressortir du fichier (2 x F3), on  passe en mode “edit” et on recommence le boulot pour retrouver la donnée à modifier.

Heureusement grâce à moi (ou alors vous auriez dû me le dire plus tôt !), voici comment switcher du mode “browse” au mode “edit” sans sortir du fichier :

Sur la ligne Command ==> :

GO EDIT

ou

GO BROWSE

Elle est pas belle la vie ?

File-AID : Rechercher dans une colonne

Il est possible avec File-AID de faire une recherche dans une colonne spécifique.

Si vous souhaitez chercher en colonne 10 (DATEMAJ) la valeur 2008-11-04 vous pouvez utiliser les 2 syntaxes suivantes en ligne de commande COMMAND ===> :

F /10 2008-11-04

ou bien :

F /DATEMAJ 2008-11-04

NB : Cela fonctionne aussi bien en mode FMT (Formaté) qu’en mode VFMT (Formaté verticalement) et quelque soit le mode d’affichage (Edit ou Browse)

ISPF : Member in use

N’avez-vous jamais entendu dans un open space le cri de douleur :

Mais putain, bordel de merde, qui est en edit sur le membre ?

Vous connaissez sans doute l’astuce pour savoir qui provoque ce member in use mais un petit rappel pour les moins aguerris peut-être utile :

Il suffit simplement de taper 2 fois F1 pour voir apparaître le panel suivant avec la réponse :

Data set ‘MON.SUPER.PDS(MEMBRE01)’ is in use by the following 1 user(s) and/or job(s):
————————————————————————————————————————————–
 ZAA5084

 

 

————————————————————————————————————————————–

On terminals which support extended data streams, TSO user and Job names have the following colors:
   NAME1 – Normal Green – Owns data set shared
   NAME2 – Normal Red – Owns data set exclusively
   NAME3 – Reverse Video Green – Waiting for shared use

SDSF : Naviguer dans un compte rendu

Vous savez que pour sélectionner le compte rendu d’un job en queue SDSF vous pouvez utiliser “S” ou “?”.

Dans ce dernier cas vous obtenez le détail du job organisé en sous-groupe (JESSMSGLG, JESJCL, JESYSMSG, SYSPRINT, SYSTSPRT…)

Comment utiliser la sélection du job complet (“S”) et naviguer à l’intérieur par sous-groupe?

Il suffit d’utiliser en ligne de commande N (Next) ou P (Previous) pour sauter d’un sous-groupe à l’autre.

Connaissiez-vous cette astuce ?

DFSORT : Remplacement de caractère

L’article précédent m’a inspiré cet article qui est le premier d’une série de billet que j’espère longue, régulière et intéressante de trucs et astuces qui font gagner du temps.

Let’s go…

Comment remplacer dans un fichier tous les low-values par des espaces ?

Il suffit d’utiliser ALTSEQ CODE

Voici un exemple pour changer tous les low-values (X’00′) par des espaces (X’40′) dans un fichier FB avec un LRECL=120.

  ALTSEQ CODE=(0040)
  OUTREC BUILD=(1,120,TRAN=ALTSEQ)

Vous l’aurez compris, si vous souhaitez remplacer tous les $ (X’5B’) par des ; (X’5E’) il faudra coder ainsi :

  ALTSEQ CODE=(5B5E)
  OUTREC BUILD=(1,120,TRAN=ALTSEQ)

Notez qu’avec OUTREC, INREC et OUTFIL il est préconisé d’utiliser BUILD à la place de FIELDS (ce dernier étant réservé à SORT et MERGE).

Tips for Mainframe Programmers

J’ai trouvé sur esnip (un site de partage de document), une documentation très intéressante pour les développeurs cobol rédigée par un ingénieur Indien d’IBM, Rijo Joseph.

Après une introduction aux Mainframes et au système MVS, vous y trouverez des astuces qui traitent de Cobol, de la compilation, des JCL, de DB2, d’IMS, d’ISPF et des Abends courants.

Ce document est référencé dans les Autres ressources sous le petit nom Tips for Mainframe Programmers.