IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

z/OS Discussion :

code retour abend system abend user


Sujet :

z/OS

  1. #1
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 58
    Points : 45
    Points
    45
    Par défaut code retour abend system abend user
    bonjour

    les code abend sont renvoyés (par le systeme ou programme) merci pour les precisions sur 1 poste précedent

    mais les codes retour (4 ,8 ) "simple" sont renvoyé par quoi
    par exemple : Sort Capacity Exceeded => code 16

    merci

  2. #2
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2005
    Messages
    1 473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 473
    Points : 3 283
    Points
    3 283
    Par défaut
    Citation Envoyé par offrerem Voir le message
    ... mais les codes retour (4 ,8 ) "simple" sont renvoyé par quoi
    par exemple : Sort Capacity Exceeded => code 16 ...
    C'est le programme lui-même qui décide de renvoyer un RETURN CODE.
    Chaque cas est donc particulier.

    Par exemple pour le SORT on a :
    DFSORT Return Codes

    L'usage est souvent le suivant :
    0 = >> traitement OK
    4 = >> traitement OK mais warning
    8 ou 16 = >> traitement KO
    mais ce n'est qu'un usage ...

    En COBOL par exemple, on dispose d'un registre spécial RETURN-CODE qu'il suffit d'alimenter juste avant l'arrêt du programme :
    RETURN-CODE

  3. #3
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 58
    Points : 45
    Points
    45
    Par défaut
    ok mais le programme peut aussi renvoyer un Uxxxx
    En fait c'est variable !

  4. #4
    Nouveau membre du Club
    Inscrit en
    Octobre 2008
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 45
    Points : 28
    Points
    28
    Par défaut
    Citation Envoyé par offrerem Voir le message
    ok mais le programme peut aussi renvoyer un Uxxxx
    En fait c'est variable !
    je crois pas que ce soit le programme qui renvoit un code abend Uxxxx.
    C'est une sortie anormale d'un programme.

    Alors qu'un return code est une fin de programme normale et prévu.
    Même un code >=8 qui normalement indique une fin en erreur mais une erreur prévu.

  5. #5
    Membre confirmé Avatar de Homer-ac
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    449
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 449
    Points : 586
    Points
    586
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    je crois pas que ce soit le programme qui renvoit un code abend Uxxxx
    Si. Un Abend Sxxx est un Abend provoqué par le système sur detection d'une erreur grave (ex. S0C7 : Décimal exception par exemple)
    Un Abend Uxxxx est un Abend provoqué par un programme. Il s'agit soit du programme utilisateur qui veut par ce biais provoquer un Dump mémoire
    (il fait en général un CALL à un module Assembleur 'maison' pour qui va passer un ordre ABEND (macro instruction ABEND,n°,DUMP) ), ou un module standard (CEE3DMP de Language Environment ou tout autre)
    ,soit d'un module de service parce qu'il a lui même détecté une erreur bloquante ou a intercepté un ABEND système.
    Par exemple, Language Environment émet un Abend U409x quand il détecte un ABEND système pour fournir un Dump formaté qui lui est propre et plus facile à interpréter qu'un DUMP SYSUDUMP.

  6. #6
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 58
    Points : 45
    Points
    45
    Par défaut
    et donc le return code (4, 8 etc)
    ainsi que le User abend sont retourne par le programme

    alors quelle difference ?

    ps : pour le user abend , www.os39mvs.freesurf.fr/download/mvssyst.pdf dans ce document (sa valeur ?!) il y est dit autre chose .

  7. #7
    Membre confirmé Avatar de Homer-ac
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    449
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 449
    Points : 586
    Points
    586
    Par défaut
    L'abend USER peut simplement être choisi par un programme pour provoquer un abandon du JOB et un Dump mémoire. Le plus souvent, un Return Code > 0 permet simplement de sortir en fin anormale, ce qui sera intercepté par le JCL ou l'ordonnanceur comme TWS.
    Sinon le lien fourni n'est pas bon je pense, mais je connais ce document, au demeurant très bien, même s'il se réfère à des architectures MVS assez anciennes, 'MVSSYST de Thierry Falissard. Voir explications page 82, sachant qu'il y a des références 'systeme Assembleur' pas nécessairement évidentes si on ne connait pas l'assembleur MVS.

  8. #8
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 58
    Points : 45
    Points
    45
    Par défaut
    ok vu mon post sur le (new , catlg ,delete)
    ou
    Un abend => fichier deleter
    Un code retour simple (8 , 16 etc) => pas de delete de fichier

    cela aurait été bien que le fichier soit deleter directement aussi.

  9. #9
    Membre confirmé Avatar de Homer-ac
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    449
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 449
    Points : 586
    Points
    586
    Par défaut
    cela aurait été bien que le fichier soit deleter directement aussi
    Pas nécessairement, l'idée générale est que l'on décide d'une fin immédiate d'un JOB en erreur par un ABEND, quelque soit ce qui suit le step en erreur.
    Par un RETURN CODE, on va au contraire gérer l'enchainement des Steps suivants du JOB (COND=(4,LT) par ex.)
    Rien n'empêche d'ajouter des steps de delete de fichiers spécifiquement en cas de code retour imprévu dans le JCL. C'est l'affaire des normes et coutumes de gestion de production du site.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. System.exit() code retour
    Par JoseDavid dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 29/07/2010, 23h09
  2. [Batch] Comment récupérer code retour system de mon .bat
    Par cyborg123 dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 12/11/2009, 10h43
  3. ABEND USER ABEND SYSTEM
    Par offrerem dans le forum z/OS
    Réponses: 4
    Dernier message: 19/11/2008, 14h04
  4. Recuperer le code retour de system()
    Par k6971 dans le forum Langage
    Réponses: 4
    Dernier message: 07/05/2007, 16h09
  5. [commande DOS] Récupérer le code retour d'un programme
    Par bobunny dans le forum Scripts/Batch
    Réponses: 8
    Dernier message: 04/06/2004, 15h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo