REPORT_ERROR
Arrête le traitement du modèle et fourni le message d’erreur spécifié.
Utilisé des conditions (comme IF
), REPORT_ERROR
permet d’empêcher l’utilisation d’un modèle avec des valeurs incorrectes.
Utilisation
Paramètres
message |
(Requis) Le texte du message d’erreur à afficher |
Exemples
Plus d'information
Comme toute fonction, REPORT_ERROR
ne fait rien si elle est cachée/effacée par un IF
, IFS
ou @IF
…@ELSEIF
.
La fonction REPORT_ERROR
vous permet d’arrêter de générer un document quand un problème est détecté par vos commandes.
Voici les deux principales situations où REPORT_ERROR
peut aider.
Limiter quand le modèle peut être utilisé
Si votre modèle est uniquement destiné à être utilisé pour des adultes, alors REPORT_ERROR
peut arrêter le traitement
et fournir un message d’erreur clair lorsque l’âge du client est trop bas.
<# IF(age < 18, REPORT_ERROR("Ce modèle est pour les clients de 18 ans et plus")) #>
Signaler un cas manquant dans le modèle
Si votre modèle vous permet de choisir un enseignant, pour lequel il affiche une courte introduction dans le document généré.
Une façon de faire cela serait de faire des @IF
…@ELSEIF
consécutifs :
<# @IF(teacher_name = "Anna Logwatch") #>
Anna est géniale !
<# @ELSEIF(teacher_name = "Austin Wattage") #>
Austin aime les films !
<# @ENDIF #>
Que se passerait-il si teacher_name ne correspondait à aucun des choix ci-dessus ? Eh bien, actuellement, il n’y aurait soit
aucune introduction, ou si un @ELSE
était utilisé pour l’introduction finale, alors cette introduction serait utilisée pour quiconque manquant.
Les deux cas ne sont pas idéaux.
Cela peut arriver parce que :
- Nous avons oublié un enseignant lors de la création du modèle
- Il y a un nouvel enseignant et nous avons oublié d’ajouter son introduction au modèle
- Il y avait une faute de frappe dans le nom d’un enseignant
Voici le même exemple, mais avec un REPORT_ERROR
:
<# @IF(teacher_name = "Anna Logwatch") #>
Anna est géniale !
<# @ELSEIF(teacher_name = "Austin Wattage") #>
Austin aime les films !
<# @ELSE #>
<# REPORT_ERROR("Pas d'introduction pour : " & teacher_name) #>
<# @ENDIF #>