Au cours des dernières annexes, certains de nos lecteurs ont qualifié un cobol d’erreur de taille. Ce problème peut se poser pour plusieurs justifications. Regardons-les maintenant.

g.Dans Visual COBOL, une condition désagréable ON SIZE ERROR se produit si la valeur résultant d’une opération mathématique dépasse la capacité d’une ligne d’image spécifiée. La clause ON SIZE ERROR est connue dans RM / COBOL si la valeur résultant d’une opération arithmétique plus importante correspond à la valeur autorisée pour les données associées.

 

 

g.

L’erreur de somme peut se produire de différentes manières –

  • Si un résultat particulier est bien un mot arithmétique, il dépasse la valeur maximale qui peut être protégée dans le champ final.
  • Quand l’échange poli serait fait à partir de zéro.
  • si cette année particulière où le résultat de l’instruction arithmétique est en dehors d’une fenêtre du siècle entier.
  • En concept exponentiel comme indiqué sur l’ordinateur suivant –

Erreur de taille Action si la clause SIZE ERROR existe n’existe pas
Zéro est passé à zéro Comprenez que vous revenez et que l’approche revient
Zéro de plus à négatif Le programme ne fonctionne vraiment pas correctement
Un nombre affreux à la merci de Fraxel La valeur absolue de l’une ou l’autre base est utilisée et la croyance limitante est affichée

La condition d’erreur des spécifications s’applique aux résultats, pas aux influences pour les débutants avancés… Si le mot-clé ROUNDED est spécifié, le contrôle du pourcentage d’erreur est arrondi.

cobol on size error

Lorsque leur erreur de taille se produit, l’activité ultérieure des leçons dépend de toute action indiquée à côté de l’instruction ON SIZE ERROR. Si cette instruction ON SIZE ERROR est peu probable et qu’une erreur de taille se produit, les règles de troncature sont incontestablement appliquées et la cause est stockée dans l’identifiant.

cobol on height error

Si votre facture ON SIZE ERROR est définie et que la condition de magnitude de l’erreur est remplie, la valeur résultante, qui est affectée par la taille de l’erreur, ne change pas ; Autrement dit, les résultats d’erreur ne sont pas transmis à l’identifiant de réception. Après avoir effectué une opération numérique, les instructions absolument essentielles de l’instruction ON SIZE ERROR sont exécutées ; la fin de l’instruction est de manipuler et de transmettre une instruction arithmétique.

Lorsqu’une seule opération mathématique génère cette erreur de taille, exprimez ADD (pour les instructions CORRESPONDING et SUBTRACT CORRESPONDING), l’instruction ON SIZE ERROR réellement grande n’est souvent pas exécutée tant que chaque addition ou soustraction n’est pas terminée.

Si une instruction NOT ON SIZE ERROR particulière a été spécifiée et qu’il existe également une condition d’erreur de taille, l’instruction NOT ON SIZE ERROR n’est pas exécutée.

VERBES COBAUX – CALCULER

Calculer le verbe

Tout ce que nous pouvons faire combiné avec les mots d’action AJOUTER, SOUSTRACT, MULTIPLIE, Les verbes DIVIDE peuvent être accomplis avec les instructions COMPUTE. Dans une bonne déclaration COMPUTE nous exigeons la consommation des affiliés suivants afin de rendre le bureau de section à thème.

Soustraire

Opérateur Valeur
+ Ajouter
à
** Fonctionnalités
ainsi que le Partager
1. Multiplication

Format. CALCULER [ROND] … signifie expression mathématique [SI ERREUR TAILLE] .. Exemple 1 – CALCULER WS-A = WS-B + WS-C – WS-D. Les normes en WS-B, WS-C sont ajoutées, chaque valeur ws-d est soustraite. provenant de cette valeur et stockez la raison de continuer dans WS-A. Valeurs des dépenses des articles regarder l’exécution après l’exécution WS-A 300850 ROND – Cette option est littéralement vendue avec tous les VERBES arithmétiques et est par conséquent facultative. CALCUL ws-a = 23,456 + 20,034Si nous ajoutons tous les valeurs 23,456 avec 20,034, nous obtenons le résultat 42 490. Mais dans ce cas La suggestion d’image WS-A est 99v9, ce qui signifie généralement qu’elle ne peut généralement stocker que la virgule décimale avec le numéro d’une personne après Exécution bien en dehors de l’instruction WS-A contient une valeur de 40,4 90 La valeur est généralement tronquée catégorisé. Le prix total le plus souhaitable dans ce cas est de 40,5. mis en place à la valeur suivante. Cela pourrait être réalisé grâce à une utilisation spéciale liée à l’option ARRONDI. CALCUL WS-A TOUR 23 = 0,456 + 20,034 après avoir fait l’accord de guitare ci-dessus, la valeur WS-A contient 40,5 ERREUR DE TAILLE Prenons un scénario pour comprendre la variation d’une sorte d’idée. 05 WS-A VALEUR POS 9 (3) 400. 05 WS-B PIC 9ème (3) valeur 800. 06 WS-C PIC 9 (3) VALEUR 300. CALCUL WS-A équivaut à WS-B WS-C +. Au-dessus de l’opérateur, attribuez un mérite dans WS-B et WS-C, et établissez cette valeur dans WS-A. Après avoir exécuté le relevé de compte ci-dessus, WS-A contiendra à la place le précieux contenu 100. à partir de 1100. Parce que WS-A n’a la capacité de contenir que 3 octets. Veuillez noter que la société n’interrompt pas en raison d’une inondation / déconnexion Diagnostique. Cependant, la valeur qui a été définie à un angle par rapport à WS-A est généralement mais erronée. Pour éviter cela Pour la plupart des erreurs de dimensionnement, il est certain qu’il est préférable de s’assurer que chacun de nos champs de réception est dans Assez grand pour contenir le résultat complet. Parfois, mais le concepteur peut Je ne connais jamais le nombre maximum du type exact / on oublie de délimiter les champs reçus Tailles des lots. Vous pouvez utiliser SIZE ERROR pour les attraper Refus. L’option ON SIZE ERROR peut évoluer pour être utilisée avec les instructions mathématiques suivantes. … ! … .-. AJOUTER …. ERREUR DE TAILLE … . ( vide ) REMPLACER … DANS ERREUR DE TAILLE … . : PLUS … ERREUR DE TAILLE … . SPLIT – – … ERREUR DE TAILLE … . – CALCULER… ERREUR TAILLE… . CALCUL WS-A = WS-B + WS-C EN CAS D’ERREUR DE TAILLE, déplacez la plupart des ZEROS VERS WS-A. Dans l’exemple ci-dessus : Si WS-A ne peut pas enregistrer le résultat, ZERO apporté à WS-A. Une erreur de taille peut se produire dans n’importe lequel des cas où vous suivez les méthodes. (Espace) Cependant, dans le champ de réception, le spot n’est pas assez grand pour faire appel à notre résultat. – Lorsque la zone zéro apparaît Lorsque l’option ON SIZE ERROR devient vraie, les instructions liées à cette option peuvent s’exécuter quelque peu. Cette instruction devrait être soit une période par session, soit un limiteur de portée, je ADD, le terminateur de portée est presque certainement END-ADD. ASTUCE : Assurez-vous toujours bien entendu que la zone d’atterrissage est suffisamment spacieuse pour obtenir le résultat.

 

 

Étant donné que COBOL continue de s’exécuter même si une nouvelle erreur de taille se produit, l’erreur de niveau d’exécution particulière peut provoquer une boucle ou une erreur de résultat de digestion. Pour éviter les problèmes, vous pouvez utiliser l’expression exacteON SIZE ERROR pour définir de manière unique la plupart des opérations à effectuer lorsqu’une erreur de taille se produit.

Un débordement se produit si toutes les lignes source ne vont pas dans la ligne cible. DELIMITED BY définit le contenu transmis de chacun de nos archipels sources. DELIMITED BY [SPACES, history item or literal] -> Transfère les détails jusqu’à ce qu’un délimiteur spécifique soit disponible. DELIMITED BY SIZE, transfère la grande chaîne.

Une condition d’erreur de taille musculaire se produit dans les scénarios d’utilisation : le résultat de méthodes de calcul qui est supérieur au chemin d’oscillation à point fixe qu’il est censé contenir. Diviser par zéro. Zéro augmenté à absolument aucune puissance spécifique.