2017-06-12 3 views
-4

J'essaie de redéfinir la variable a dans Cobol working-storage. S'il vous plaît voir si dessous id possible: Puis-je re-définir une variable à la clause PIC 9 (2) 9 (3) de la présente clause PIC - (2) .9 (3)Redéfinit la clause dans cobol

+4

Pourquoi ne pas simplement l'essayer? Votre compilateur n'a jamais tort, et il ne perd pas de temps à attendre des réponses éventuellement incorrectes sur Internet. – EJP

+0

Bienvenue sur stackoverflow.com. Veuillez prendre le temps de lire les [pages d'aide] (https://stackoverflow.com/help), en particulier les sections intitulées ["Quels sujets puis-je poser à propos d'ici?"] (Https://stackoverflow.com/help/ sur le sujet) et ["Quels types de questions devrais-je éviter de poser?"] (https://stackoverflow.com/help/dont-ask). Aussi s'il vous plaît prendre le [tour] (https://stackoverflow.com/tour) et lire sur [Comment poser de bonnes questions] (https://stackoverflow.com/help/how-to-ask). Enfin, apprenez comment créer un [exemple minimal, complet et vérifiable] (https://stackoverflow.com/help/mcve). – cschneid

Répondre

0

Redéfinir champs COBOL est simplement cela, redéfinir. Tout ce que cela signifie est, vous êtes juste en train de décomposer les octets qui seront stockés dans ce champ respectif en plus petits segments/octets. Par exemple, dites par exemple si vous travaillez avec une date d'expiration qui pourrait s'appliquer à de nombreuses choses courantes, telles qu'une carte de crédit. Le champ de stockage de travail initial/variable COBOL serait:

05 EXPIRATION-DATE   PIC X(8). 

Alors maintenant, nous allons redéfinir ces 8 octets en plus petits octets. De cette façon, par exemple, je pourrais sortir seulement l'année, seulement les mois, ou seulement les jours de la date d'expiration.

Il devient:

05 EXPIRATION-DATE   PIC X(8). ---> 20170623 (data stored in field) 
05 EXPIRATION-DATE-NEW REDEFINES EXPIRATION-DATE. 
    10 EXPIRATION-YEAR  PIC 9(4). ---> 2017 
    10 EXPIRATION-MONTH  PIC 9(2). ---> 06 
    10 EXPIRATION-DAY  PIC 9(2). ---> 23 

Ainsi, le principal champ mémorisera la date, cependant, en la redéfinissant, vous pouvez maintenant travailler avec juste l'année, le mois ou le jour, en fonction de ce que vous essayez faire dans le programme.

Espérons que cela aide.