L4G >  Resume  

Afficher tout Masquer tout

Resume permet, dans un traitement d'erreur ou d'interruption, de revenir à l'instruction suivant celle qui a provoqué le déroutement.

 

Syntaxe

   Resume

 

Exemples

   # Ouverture d'un fichier séquentiel avec gestion des erreurs (Il
   # aurait aussi été possible de tester l'existence du fichier avec la
   # fonction filinfo).

    FLAG_ERREUR = 0
    Onerrgo PB_OUVERTURE    :# en cas d'erreur aller à l'étiquette
    Openi filpath("TXT","TEXTE","txt")     :# ouverture du fichier
    Onerrgo    :# plus de branchement sur erreur
    If FLAG_ERREUR
       End     :# arrêt si une erreur s'est produite;
    Endif
   #... suite du traitement ...
    End
   #
   #   Routine de gestion d'erreur
    PB_OUVERTURE
       Errbox "Problème d'ouverture du fichier en ligne "-num$(errl)
       Errbox "Erreur no "-num$(errn)-":"-errmes$(errn)
       FLAG_ERREUR = errn
   
Resume    :# retour à la ligne suivant l'erreur

   # Sur appui de la touche d'interruption, l'exécution du traitement
   # se déroute sur l'étiquette LECTURE.
    Onintgo LECTURE    :# déroutement en cas d'interruption
    Inter    :# le traitement est interruptible
    For [LNS]CLE(1)
       For [LNS]CLE
          Infbox num$(ZV)
       Next
       Infbox num$(TOTAL)
    Next
    End
   #
   #  Traitement de l'interruption
    LECTURE
       Call VERIF([ABV]CHAMP) From GESINTER
   
Resume

 

Description

Resume, qui termine un traitement d'erreur ou d'interruption, permet la reprise du traitement à l'instruction suivant celle où s'est produite l'erreur ou l'interruption.

 

Remarques

Le déroutement sur erreur est rendu possible par la déclaration Onerrgo, qui définit l'étiquette où commence le traitement d'erreur. De la même façon, le déroutement sur interruption est possible grâce à l'instruction Onintgo.

L'instruction de retour après un Resume est celle qui suit séquentiellement l'instruction où s'est produite l'erreur ou l'interruption. Pour les instructions de contrôle, on obtient les endroits de retour suivants :

  • après le Endcase    (instruction Case),
  • après le Endif           (instruction If),
  • après le Next             (instruction For),
  • après le Wend          (instruction While),
  • après le Until             (instruction Repeat),
  • après le Call            (dans un sous-programme).

Lorsqu'une instruction End est utilisée pour terminer un traitement de gestion des erreurs plutôt qu'un Resume, le traitement ayant généré une erreur sera interrompu.

La liste des erreurs et des codes d'erreurs est référencée dans les annexes du manuel de programmation.

 

Erreurs associées

Erreur

Description

ERRET (32)

Resume sans déroutement d'erreur ou d'interruption préalable.

 

Mots-clés associés

ONERRGO - ONINTGO - RETURN - END - ERRN - ERRL - ERRMES$ - END