Skip to Main Content
IBM Z Software


This portal is to open public enhancement requests against IBM Z Software products. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).


Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.


Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Not under consideration
Workspace COBOL Compilers
Created by Guest
Created on Jul 4, 2018

Enterprise Cobol V6R2+ - Using a "DEFINEd" compilation-variable in source code of a program

Using a "DEFINEd" compilation-variable in the source code of a Cobol program could be interesting:

CBL DEFINE (COUNT = 100)
>> DEFINE COUNT AS PARAMETER
...
01 ARRAY.
05 ITEM OCCURS COUNT.
...

Today, this result can be achieved by a REPLACE directive, but this solution is less convenient than using a defined variable.

REPLACE == COUNT == BY == 100 ==.
...
01 ARRAY.
05 ITEM OCCURS COUNT.
...

REPLACE does not allow to do calculations as a DEFINEd variable could do:

CBL DEFINE (COUNT = 100)
>> DEFINE COUNT AS PARAMETER
...
>> DEFINE COUNT AS COUNT + 10 OVERRIDE
01 ARRAY.
05 ITEM OCCURS COUNT.
...

Idea priority Low
  • Guest
    Reply
    |
    Dec 16, 2020

    IBM Enterprise COBOL for z/OS is a continuous delivery offering, and aims to satisfy the needs of a rapidly evolving market segment. Product strategy evolves and requirements are continuously evaluated against that strategy. This RFE has recently been reappraised against the wider product strategy and does not fall into IBMs delivery plans for the next 12 month. Whilst this RFE might be valid and we might look to deliver longer term, this RFE is being rejected at this time. The requirement will be kept in our internal RFE backlog and might be reassessed in the future.

  • Guest
    Reply
    |
    Oct 22, 2018

    Dennis, what leads you to say that a constant is not allowed in an OCCURS declaration?

  • Guest
    Reply
    |
    Oct 19, 2018

    This RFE will be accepted, but it is contingent on RFE 73687 being implemented.

    Also, the syntax might be a slight different when implemented.

    Will updated RFE once its been put into plan.

  • Guest
    Reply
    |
    Aug 2, 2018

    This RFE is still under consideration.

  • Guest
    Reply
    |
    Jul 18, 2018

    Attachment (Description): CONSTANT declaration

  • Guest
    Reply
    |
    Jul 18, 2018

    In ISO standard 2014, "compilation var name" can be used in "CONSTANT" declaration, and "CONSTANT" can be used in replacement of "literal" in source text, and in "PICTURE" declaration (but not in "OCCURS" declaration :-/ ).
    Look tat attachement for description of "CONSTANT" declaration.

  • Guest
    Reply
    |
    Jul 4, 2018

    Attachment (Use case): Sample program using "DEFINEd" compilation-variable in source code