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 20/10/2009, 09h39   #1
Membre à l'essai
 
Inscription : septembre 2008
Messages : 59
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 59
Points : 21
Points : 21
Par défaut positionner le curseur dans un REXX

bonjour,

Dans un controle de saisie dans un programme ecrit en REXX, je voudrais positionner le curseur sur la zone qui est en erreur :

ex : nom de la zone dans le panel ISPF : Pzonea

si le controle est KO sur cette zone, j'affiche un message et je veux que le curseur soit sur Pzonea pour que l'utilisateur corrige cette erreur.

merci pour vos réponses
qqoos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/10/2009, 11h27   #2
Membre habitué
 
Inscription : janvier 2008
Messages : 120
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 120
Points : 141
Points : 141
ISPEXEC DISPLAY PANEL(panel-name) CURSOR(Pzonea)

non?
xfanx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/10/2009, 11h37   #3
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

dans le panel, partie )INIT, code ".CURSOR = &mavar"
et dans le rexx, mavar = 'la.zone.en.erreur'.

De mémoire, je pense que cela suffit.

Si ce sont des vérifications de saisie "simples", il y a des possibilités de vérifications de saisie directement dans le PANEL, l'ordre VER offre beaucoup de facilités. De plus, les vérifications faites directement dans le PANEL allègent beaucoup le(s) REXX.

edit: La solution de Xfan suffit
bernard59139 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/10/2009, 11h42   #4
Membre à l'essai
 
Inscription : septembre 2008
Messages : 59
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 59
Points : 21
Points : 21
super !!

encore une fois, merci à tous pour vos réponses très pertinentes et à la prochaine !!

pour bernard59139 : c'est un controle d'existence en BDD
qqoos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/10/2009, 12h46   #5
Membre expérimenté
 
Avatar de Homer-ac
 
Inscription : octobre 2007
Messages : 449
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : octobre 2007
Messages : 449
Points : 518
Points : 518
Une variante souvent pratique :
"ISPEXEC DISPLAY PANEL("panel-name") CURSOR("data-name")"
La donnée à positionner en curseur est alimentée en amont par le REXX en fonction des conditions d'erreur testée dans le REXX, en particulier via un SELECT et des ordres WHEN par cas d'erreur. When .... data-name = 'Pzonea'.
Ceci complique certes le REXX mais l'intérêt par rapport aux contrôles dans le PANEL est qu'en cas de modification, tous les utilisateurs du panel bénéficient immédiatement de celle-ci (d'un autre côté, ça peut être aussi un inconvénient si on se plante dans sa modif., mais normalement on teste dans son coin avant)
Homer-ac est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/10/2009, 13h48   #6
Membre à l'essai
 
Inscription : septembre 2008
Messages : 59
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 59
Points : 21
Points : 21
encore une fois merci pour vos réponses très pertinentes !!



pour bernard59139 : il s'agit de controles d'existence en BDD
qqoos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/10/2009, 16h09   #7
Membre habitué
 
Inscription : janvier 2008
Messages : 120
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 120
Points : 141
Points : 141
Citation:
Envoyé par Homer-ac Voir le message
Une variante souvent pratique :
"ISPEXEC DISPLAY PANEL("panel-name") CURSOR("data-name")"
La donnée à positionner en curseur est alimentée en amont par le REXX en fonction des conditions d'erreur testée dans le REXX, en particulier via un SELECT et des ordres WHEN par cas d'erreur. When .... data-name = 'Pzonea'.
Ceci complique certes le REXX mais l'intérêt par rapport aux contrôles dans le PANEL est qu'en cas de modification, tous les utilisateurs du panel bénéficient immédiatement de celle-ci (d'un autre côté, ça peut être aussi un inconvénient si on se plante dans sa modif., mais normalement on teste dans son coin avant)
Oo, ah je trouve ta variante très intéressante et simple finalement.. je n'y avais jamais pensé

merci beaucoup Homer-ac
xfanx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/10/2009, 23h27   #8
Membre expérimenté
 
Avatar de Homer-ac
 
Inscription : octobre 2007
Messages : 449
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : octobre 2007
Messages : 449
Points : 518
Points : 518
Juste pour ajouter que même si je suis plutôt à chaque fois d'accord avec bernard59139, j'aurais cependant une suggestion personnelle quant aux controles de base dans un panel via l'ordre VER. Effectivement, pas plus simple pour des vérifications syntaxiques VER NB ou DSNAME (moins évident en REXX pour ce dernier cas en particulier). Pour le reste, et surtout pour ce qui touche aux rêqles de gestion, donc par définition potentiellement modifiables, j'aurai tendance à privilégier les contrôles dans le REXX d'appel, pour faciliter la distribution d'une maintenance en particulier. Par exemple, le contrôle d'une liste de valeurs (VER ... LIST,...), puisque ça peut évoluer, à plus sa place dans le REXX (à mon avis). En gros, ce qui est acquis : VER dans le panel. Ce qui peut évoluer : contrôles dans le REXX. Se rappeler qu'ISPF utilise le plus possible la mémoire virtuelle MVS et qu'une modification d'un panel risque fort de n'être 'vue' par un utilisateur que lors de sa prochaine reconnection TSO -> ISPF.
Homer-ac est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/10/2009, 22h24   #9
Membre chevronné
 
Avatar de Peut-êtreUneRéponse
 
Homme Guillaume VENTRE
z/OS Technical Leader
Inscription : décembre 2006
Messages : 508
Détails du profil
Informations personnelles :
Nom : Homme Guillaume VENTRE
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : z/OS Technical Leader
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2006
Messages : 508
Points : 609
Points : 609
Citation:
Envoyé par Homer-ac Voir le message
Se rappeler qu'ISPF utilise le plus possible la mémoire virtuelle MVS et qu'une modification d'un panel risque fort de n'être 'vue' par un utilisateur que lors de sa prochaine reconnection TSO -> ISPF.
Depuis le temps je rename les panels pour voir la modif apportée en cours de dév.... j'ai enfin une réponse au pourquoi du comment!

Merci Homer-ac.

.
__________________
★★ Documentation Mainframe par Guillaume Ventre ★★
Peut-êtreUneRéponse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/10/2009, 23h40   #10
Membre expérimenté
 
Avatar de Homer-ac
 
Inscription : octobre 2007
Messages : 449
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : octobre 2007
Messages : 449
Points : 518
Points : 518
Quand même Peut-êtreUneRéponse, inutile de faire un rename panel, il te manques juste quelque 'trucs'. Il suffit de raffaichir le panel que que tu as modifié en 7.2. Mais il y a plus facile parce qu'itératif.
1) Tu modifies le panel le panel en EDIT
2) Tu fais un SAVE mais tu restes en EDIT sur le panel
3) Tu positionnes le curseur sur les menus déroulants en haut et à droite de l'écran : option Test, juste avant le Help, et ENTER
4) Option 2 : Panel - ENTER, puis dans la fenêtre qui vient se greffer, tu donnes le nom de ton PANEL (tu as bien entendu passé une LIBDEF ISPPLIB avant sur le PDS)
5) Ca affiche l'écran modifié, si ça ne va pas, on corrige, save, et on recommence. De toutes façons, s'il n'y a pas d'erreur c'est le nouveau Panel qui est chargé en mémoire et on peut reprendre ses tests. (Même en cas d'erreur d'ailleurs, dans ce cas ISPF 'plante' et supprime tout ce qu'il a mis en mémoire).

Ceci étant, ça permet d'avoir une nouvelle copie de l'écran pour le USER qui teste les modifications du panel, le problème subsiste pour les autres qui ont déjà pu appeler le PANEL jusqu'à ce qu'il changent d'application ISPF ou qu'ils refassent un LOGON TSO.
Homer-ac est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2009, 15h26   #11
Membre chevronné
 
Avatar de Peut-êtreUneRéponse
 
Homme Guillaume VENTRE
z/OS Technical Leader
Inscription : décembre 2006
Messages : 508
Détails du profil
Informations personnelles :
Nom : Homme Guillaume VENTRE
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : z/OS Technical Leader
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2006
Messages : 508
Points : 609
Points : 609
Merci Homer-ac pour ce mod'op.

Je met en pratique lundi

.
__________________
★★ Documentation Mainframe par Guillaume Ventre ★★
Peut-êtreUneRéponse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/10/2009, 13h16   #12
Membre chevronné
 
Avatar de Peut-êtreUneRéponse
 
Homme Guillaume VENTRE
z/OS Technical Leader
Inscription : décembre 2006
Messages : 508
Détails du profil
Informations personnelles :
Nom : Homme Guillaume VENTRE
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : z/OS Technical Leader
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2006
Messages : 508
Points : 609
Points : 609
@Homer-ac : Nickel
__________________
★★ Documentation Mainframe par Guillaume Ventre ★★
Peut-êtreUneRéponse 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 10h48.


 
 
 
 
Partenaires

Hébergement Web