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

AS/400 Discussion :

Modifier un programme de service


Sujet :

AS/400

  1. #1
    Nouveau membre du Club
    Modifier un programme de service
    Bonjour,

    Je me suis mis depuis peu aux programmes de services, et j'apprécie leurs fonctionnalités.
    Mais je rencontre à chaque fois des problèmes quand je les modifie pour les remettre en production.

    Le précédent étant en mémoire, le système ne prend pas en compte ma nouvelle version, et je dois généralement fermer ma session.

    Existe-il une commande pour forcer le système à effacer un programme de service de sa mémoire et recharger l'objet ?
    Ou une méthode pour mettre en production un programme de service sans avoir à demander aux utilisateurs de fermer leur session ?

    A moins qu'il n'y ait quelque chose que je fasse mal, ou que je n'ai pas compris.

    Merci.

  2. #2
    Membre éclairé
    Bonjour,

    Ton programme de service est dans le groupe d'activation par défaut (QILE), à tous les coups.
    Alors à moins de détruire le groupe (RCLACTGRP QILE), celui en mémoire sera conservé jusqu'à fermeture de la session.

    Le mieux est quand même de livrer la version en fin de journée quand les utilisateurs ont fermé leurs sessions, ou le matin avant qu'ils arrivent (mais je préfère le soir car je peux faire des tests dans la foulée, pour m'assurer que tout est ok).
    Mais sinon, tu peux obliger ton programme à tourner dans un groupe d'activation spécifique (attention aux substitutions dans ce cas), et gérer çà. Maintenant je trouve que c'est se compliquer la vie.

  3. #3
    Nouveau membre du Club
    Merci pour ta réponse.

    Oui, ça tourne dans le groupe par défaut.
    Ta réponse me rassure car j'avais peur d'avoir mal paramétré le truc.

    Mon problème est que notre AS400 tourne H24. Certaines sessions ne sont jamais arrêtées car le site travaille même la nuit.
    Du coup ça me pose des soucis pour ces programmes de service.

    Je ne rends pas compte, quel est exactement l'impact d'un RCLACTGRP QILE ?

  4. #4
    Membre éclairé
    Le RCLACTGRP se fait forcément pour le job.
    Mais comme ton programme ne sait pas que le programme de service a changé, je ne vois pas vraiment de solution pour l'utiliser.
    A moins de faire un RCLACTGRP à chaque lancement de programme, ce qui serait une hérésie.

    Dans l'idéal il faudrait que chaque programme utilisant un programme de service contrôle le niveau de celui-ci au démarrage, et fasse un RCLACTGRP quand il n'y a pas correspondance.
    Tu peux toujours développer une routine qui fait çà.
    Autre solution, prévenir tous les utilisateurs connectés (SNDPGMMSG TOUSR(*ALLACT) ?), via un petit programme dédié, qu'ils doivent fermer et ré-ouvrir leur session, lorsque tu met en place une nouvelle version.

  5. #5
    Nouveau membre du Club
    Ok. Donc je peux utiliser RCLACTGRP pour mes tests.

    Et pour les utilisateurs les avertir de redémarrer leur session en cas de problème.

    Merci beaucoup pour ton aide.