Archives pour February, 2009

File-AID : Recherche avec opérateurs

Il est possible avec File-AID d’effectuer une recherche avec opérateurs.

Il suffit de rajouter dans votre recherche les opérateurs traditionnels : EQ, NE, LT, GT, LE et GE (=, <>, <, >, ≤, ≥).

Pour rechercher une date supérieure au 4 novembre 2008 en colonne 10 :

F GT '2008-11-04' 10

Attention la recherche avec colonne nommée ne fonctionne pas avec les opérateurs.

DFSORT : Paramètres à l’installation

J’ai eu récemment besoin de savoir si DFSORT était installé avec le paramètre VLSCMP à YES, cela permet dans le cas d’enregistrements variables (VB) d’empêcher DFSORT de planter si le test de comparaison (INCLUDE, OMIT) se trouve plus “loin” que la longueur de l’enregistrement courant.

En effet, dans ce cas précis, VLSCMP indique à DFSORT qu’il doit remplacer temporairement par des zéros binaires (X’00′) les digits manquants.

Bref, pour connaître les paramètres par défaut DFSORT installés sur votre site, il suffit de soumettre le JCL suivant et de visualiser le résultat au niveau de SHOWDEF :

//ICETOOL EXEC PGM=ICETOOL
//TOOLMSG DD SYSOUT=*
//DFSMSG DD SYSOUT=*
//TOOLIN DD *
    DEFAULTS LIST(SHOWDEF)
//SHOWDEF DD SYSOUT=*

N’oubliez pas la carte JOB.

DFSORT : Distribution d’enregistrements

Vous avez un gros fichier à découper en 3 pour faire un traitement en parallèle des 3 fichiers résultants, mais vous ne connaissez pas la volumétrie du gros fichier pour déterminer le nombre d’enregistrements à mettre dans chacun des 3 fichiers de sortie.

Comment faire ?

DFSORT propose les options SPLIT, SPLITBY et SPLIT1R qui permettent de distribuer les enregistrements comme suit :

  • SPLIT : Le premier enregistrement est écrit dans le premier fichier de sortie, le second enregistrement dans le second fichier de sortie et ainsi de suite jusqu’à ce que tous les fichiers de sortie comportent un enregistrement. Ensuite la distibution recommence au premier fichier de sortie,
  • SPLITBY permet la même chose que SPLIT mais au lieu de distribuer enregistrement par enregistrement, vous pouvez lui indiquer le nombre d’enregistrement qui doivent être distribué à chaque fois,
  • SPLIT1R permet de distribuer un nombre déterminé d’enregistrement dans chaque fichier de sortie et continue à distribuer les enregistrements restants dans le dernier fichier de sortie sans revenir au premier.

Supposons que l’on ait le fichier :

01
02
03
04
05
06
07
08
09
10

Si :

OPTION COPY
OUTFIL FNAMES=(SORTOF01,SORTOF02,SORTOF03),SPLIT

On obtient :
SORTOF01

01
04
07
10

SORTOF02

02
05
08

SORTOF03

03
06
09

Si :

OPTION COPY
OUTFIL FNAMES=(SORTOF01,SORTOF02,SORTOF03),SPLITBY=3

On obtient :
SORTOF01

01
02
03
10

SORTOF02

04
05
06

SORTOF03

07
08
09

Si :

OPTION COPY
OUTFIL FNAMES=(SORTOF01,SORTOF02,SORTOF03),SPLIT1R=2

On obtient :
SORTOF01

01
02

SORTOF02

03
04

SORTOF03

05
06
07
08
09
10

Pratique ?

Un émulateur 3270 dans votre iPhone

Vous connaissez peut-être l’émulateur TN3270 de MoshaSoft pour Windows, et bien j’ai découvert il y a quelques jours que MoshaSoft avait crée une version pour iPhone.

Rien d’incroyable dans cette app (c’est un simple émulateur 3270) mais l’idée d’accéder à ce bon vieux TSO à partir de mon iPhone m’a transporté dans la 4ème dimension!

Quelques captures d’écran :

TN3270 pour iPhone 01

TN3270 pour iPhone 02

Liens vers l’App Store et apps connexes :

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