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).
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:
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 an idea.
Get feedback from the IBM team and other customers to refine your idea.
Follow the idea through the IBM Ideas process.
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.
This RFE has been accepted and will be updated once put into plan.
Thanks for the reply. We are investigating and reviewing your reply.
I also think that the included copybooks table should appear in the SYSMDECK output as comments, in addition to the listing, to keep track of references through the various COBOL source processing processes.
The MDECK(COMPILE) compilation option does not meet our need: we do not want to process EXEC SQL statements but just produce a source file containing the inclusion of the COPYBOOKs (COBOL COPY directives, SQL INCLUDE directives), and possibly the processing of COBOL REPLACE directives, plus processing conditional compilation directives (actually source code conditional processing directives).
In our context of use, the EXEC SQL statements are processed by the Db2 preprocessor: we do not want to use the Db2 coprocessor integrated into the COBOL compiler (for reasons already mentioned in other requests).
The Db2 preprocessor requires that all descriptions necessary to process EXEC SQL statements be available, either described directly in the source code, or referenced through EXEC SQL INCLUDE directives, (not COBOL COPY directives).
EXEC SQL INCLUDE directives do not have the same possibilities as COBOL COPY directives, in particular they do not allow REPLACING. For this reason, we want the descriptions of Db2 resources (hosts-variables) to be included by means of COBOL COPY directives with the REPLACING option, and not by means of EXEC SQL INCLUDE directive.
Since the Db2 preprocessor does not process COBOL COPY directives, we want to preprocess the COBOL source code by means of a pseudo compilation with the MDECK(NOCOMPILE) option.
The sequence of steps is therefore:
- COBOL preprocessing with MDECK(NOCOMPILE) option to process COBOL COPY directives, in particular the descriptions of host-variables used in EXEC SQL statements
- Db2 preprocessor to process EXEC SQL statements
- COBOL compilation to produce an object module
MDECK(COMPILE) was actually meant for this purpose. Is there a specific reason why MDECK(COMPILE) can't be used here?