Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
throw
|
throw ( errorCode {; description} ) | ||||||||
Paramètre | Type | Description | ||||||
errorCode | Entier long |
![]() |
Code d'erreur | |||||
description | Texte |
![]() |
Description de l'erreur | |||||
throw {( errorObj )} | ||||||||
Paramètre | Type | Description | ||||||
errorObj | Objet |
![]() |
Propriétés de l'erreur à construire | |||||
La commande throw crée une erreur qui sera levée soit immédiatement, soit lorsque la méthode appelante retournera à l'appelant (mode différé).
Lorsque vous rencontrez une situation d'erreur dans votre code 4D, vous pouvez utiliser la commande throw pour générer explicitement une erreur et fournir un message d'erreur spécifique ou un numéro d'erreur. Cela peut être utile pour signaler des conditions exceptionnelles ou des entrées non valides.
Les erreurs générées à l'aide de la commande throw sont gérées par le moteur 4D comme des erreurs normales : la boîte de dialogue d'erreur standard est affichée, sauf si une méthode d'interception a été installée à l'aide de la commande APPELER SUR ERREUR.
La commande prend en charge trois syntaxes :
Elle spécifie le code d'erreur et un texte de description facultatif ; l'erreur est immédiatement déclenchée.
Si aucune description n'est fournie, elle est remplie par :
L'objet errorObj permet d'obtenir des informations plus détaillées sur les erreurs et de contrôler leur traitement. Il peut contenir les propriétés suivantes, ainsi que toute propriété personnalisée à laquelle vous pouvez faire référence en utilisant des placeholders dans la propriété message.
propriété | type | description |
componentSignature | texte | Signature de quatre lettres latines pour identifier de manière unique la source de l'erreur.
|
errCode | numérique | Code d'erreur.
|
message | texte | Description de l'erreur.
|
deferred | booléen | Vrai si l'erreur doit être différée au retour de la méthode en cours ou à la fin du Try block. La valeur par défaut est faux. |
When you use this syntax, the errorObj object is returned in Last errors.
Lorsque vous utilisez cette syntaxe, l'objet errorObj est renvoyé dans Last errors.
Note : Il est possible d'appeler la commande plusieurs fois dans la même méthode de projet pour générer plusieurs erreurs. Vous pouvez utiliser l'option deferred pour envoyer toutes les erreurs en une seule fois.
Elle lance toutes les erreurs courantes en mode différé, ce qui signifie qu'elles seront ajoutées à une pile et traitées au retour de la méthode appelante. Ceci est typiquement fait à l'intérieur d'un APPELER SUR ERREUR callback.
var $code : Integer
var $description : text
$code:=50042 //Code personnalisé
$description:=“Il s'agit d'une erreur personnalisée”
throw($code ;$description) // Lance une erreur avec le message " Il s'agit d'une erreur personnalisée " et errCode = 50042
throw({errCode: 1; message: "Ceci est une erreur"}) // Lance une erreur avec errCode = 1 et le message "Ceci est une erreur"
throw({errCode: 1}) // Lance une erreur avec errCode = 1 et le message "Error code : 1 (host)"
throw({message: "Ceci est une erreur"}) // Lance une erreur avec errCode = -1 et le message "Ceci est une erreur"
throw({message: "Ceci est mon erreur"; deferred: True}) // Lance une erreur avec le message "Ceci est mon erreur" et errCode = -1 en deferred mode
throw({componentSignature: "xbox"; errCode: 600; name: "myFileName"; path: "myFilePath"; deferred: True})
// Lance une erreur avec le message "File myFileName not found (myFilePath)" en mode différé
Produit : 4D
Thème : Interruptions
Numéro :
1805
Nom intl. : throw
Créé : 4D v20 R2
Modifié : 4D v20 R5
4D - Langage ( 4D v20 R7)