Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > z/OS
z/OS Forum d'entraide sur z/OS et MVS (Multiple Virtual Storage), les systèmes d'exploitation des ordinateurs « mainframes » IBM : JCL, Tso, Ispf, Vsam, Racf, SMS, Cics, Ims, OPC, Ca-7, Control-M, Dialog Manager ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 08/02/2010, 14h33   #1
Membre à l'essai
 
Inscription : février 2010
Messages : 28
Détails du profil
Informations forums :
Inscription : février 2010
Messages : 28
Points : 20
Points : 20
Par défaut Travail sur texte en rexx

Bonjour,

je debute en rexx et voici mon pb.

J'ai un fichier de log beta92 qui fait qq millions de lignes.
J'épure, je mets en forme, tout va bien.

Mais je bloque sur la manière la plus simple d'organiser la fin de mon fichier
Exemple fic :

Code :
1
2
3
JOB1 USERWIN *EXPB SERVEUR S1000 START SERVICE "Batch integration" FTP
JOB2 PoolApp10 USERWIN TOTO SERVEUR S1001 S2001 NTWKR
JOB3 DSN=ZEXPT.* USERWIN *EXPT SERVEUR S1000 STOP SERVICE "Lotus Notes" FTP
Je voudrais organiser mes données tel que
(1) le nom du job (2) le userwin (3) le serveur (4)eventuellement le reste de ma chaine. Soit que ca donne:

Code :
1
2
3
JOB1 USERWIN *EXPB SERVEUR S1000 START SERVICE "Batch integration" FTP
JOB2 USERWIN TOTO SERVEUR S1001 S2001 PoolApp10 NTWKR
JOB3 USERWIN *EXPT SERVEUR S1000 STOP SERVICE "Lotus Notes" DSN=ZEXPT.* FTP
Toutes mes lignes possèdent ces données (nom job, userwin, serveur..) mais elles ne sont pas dans l'ordre.

Qq a une idée? Merci.

Dernière modification par Hédhili Jaïdane ; 08/02/2010 à 17h50. Motif: Balise Code
benchab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2010, 18h41   #2
Invité régulier
 
Homme Pierre Devillers
Tooling - Testing
Inscription : décembre 2008
Messages : 29
Détails du profil
Informations personnelles :
Nom : Homme Pierre Devillers
Âge : 63
Localisation : Belgique

Informations professionnelles :
Activité : Tooling - Testing

Informations forums :
Inscription : décembre 2008
Messages : 29
Points : 8
Points : 8
Citation:
J'ai un fichier de log beta92 qui fait qq millions de lignes.
D'abord je ne suis pas sûr -non je suis sûr que REXX ne s'accomode pas bien des I/O. Il y a un gros risque de performance.

Pour le reste, il faut travailler avec le positionnement via INDEX ou POS ou WORD et reformater ainsi.

Cheers
Pierre
PeD012 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2010, 20h53   #3
Membre à l'essai
 
Inscription : février 2010
Messages : 28
Détails du profil
Informations forums :
Inscription : février 2010
Messages : 28
Points : 20
Points : 20
Merci pour votre reponse.

Pour les performance, c'est pas grave, je fais beaucoup d'IO et pas mal de CPU mais les traitements tournent aux heures creuses.


Y'a-t-il un tuto sur les traitements de texte en rexx ? Par exemple pour la phrase si dessus, enlever les caractère entre ',', remplacer 'et pas mal de' par un '/' et inverser IO et CPU pour donner :

"Pour les performance, je fais beaucoup d' CPU / IO mais les traitements tournent aux heures creuses."

J'ai du mal avec ca.
Merci.
benchab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 07h44   #4
Membre chevronné
 
Avatar de bernard59139
 
Administrateur de base de données
Inscription : octobre 2006
Messages : 477
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : octobre 2006
Messages : 477
Points : 657
Points : 657
Bonjour

Je te conseille fortement le lecture de la doc rexx, disponible chez ibm, et en particulier, la lecture du user's guide. Domage, c'est en anglais.

Pour réussir à reformater ton fichier en sortie, il faut connaitre parfaitement tes données. Et, au vu de ce que tu nous montre en exemple, je me pose la question "comment distingue-t-on les différents type de lignes?"
Une fois que tu as la réponse, ensuite, c'est du coding. pour ton travail, je te conseille de creuser les instructions PARSE, SUBSTR, SUBWORD, OVERLAY.

Et je pense même que DFSORT permet même de faire ce boulot. Pas très simple à coder, mais tellement plus efficace que le rexx


Bonne journée
bernard59139 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 08h28   #5
Membre à l'essai
 
Inscription : février 2010
Messages : 28
Détails du profil
Informations forums :
Inscription : février 2010
Messages : 28
Points : 20
Points : 20
Merci bien,

je pense trouver mon bonheur dans la partie 1.5.2.5 String Manipulating Functions

Mon fichier a l'air désorganisé comme ca, mais il y a certains mots clefs qui vont bien dans ma recherche.

Dommage qu'il n'y ai pas d'exemple.

Pour m'aider un petit peu, comment puis-je passer de :

"Il fait beau le lundi"
à
"le lundi il fait beau"

bien sûr, sans prendre
queue word(data.i,4) word(data.i,5) word(data.i,1)... mais de manière plus générale?

Merci, je vais clore la discussion.
benchab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 12h05   #6
Membre chevronné
 
Avatar de bernard59139
 
Administrateur de base de données
Inscription : octobre 2006
Messages : 477
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Administrateur de base de données

Informations forums :
Inscription : octobre 2006
Messages : 477
Points : 657
Points : 657
Citation:
queue word(data.i,4) word(data.i,5) word(data.i,1)... mais de manière plus générale?
en rexx, il n'y a que cette solution, aux variantes près.
bernard59139 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 14h45   #7
Membre à l'essai
 
Inscription : février 2010
Messages : 28
Détails du profil
Informations forums :
Inscription : février 2010
Messages : 28
Points : 20
Points : 20
Ok merci, je croyais qu'on pouvait dire "des que tu trouve tel caractère, tu le place en début de ligne".

Je crois que je vais m'amuser avec des wordpos, index et des find.

Merci à tous
benchab est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 06h22.


 
 
 
 
Partenaires

Hébergement Web