Skip to Main Content
IBM Power Ideas Portal


This portal is to open public enhancement requests against IBM Power Systems products, including IBM i. 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.

ADD A NEW IDEA

Languages - RPG

Showing 221

Provide a "not-in" operator

Now that we have a conditional “in” operator, please provide a “not-in” operator, that can be used wherever “in” can, eg, with %lists, %ranges, arrays, etc. Currently, we need to code the awkward if not (Value in %list(x:y:...)); with not-in, this...
over 2 years ago in IBM i / Languages - RPG 6 Not under consideration

Allow duplicate CTL-OPT keywords.

In the RFE https://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe&CR_ID=153870I raised an idea of overriding the values of the control specification using /SET.Barbara Morris asked me to raise it in a separate RFE. This is hereby done...
almost 3 years ago in IBM i / Languages - RPG 7 Future consideration

Remove or Relaxe the error when %SUBST length exceeds length of data

The runtime for RPG currently blows up if %SUBST(var : START : LENGTH ) length value exceeds the length of the VAR or if it is 0.Provide an option to ignore this issue for runtime purposes. OPTION(*NOLENCHK) (No Length Check) which would cause run...
almost 3 years ago in IBM i / Languages - RPG 10 Not under consideration

Compiler directive /SET should temporarily set a new default value for DECEDIT

Recently the compiler directives /SET and /RESTORE were introduced. It can be used to temporarily set a new default values for CCSID, DATFMT and TIMFMT.I would like that this also was possible for DECEDIT ( and perhaps DATEDIT ). Use Case: In XML ...
almost 3 years ago in IBM i / Languages - RPG 4 Future consideration

DUMP opcode option to dump calling procedure

DUMP opcode currently only dumps the values for the process that issues the DUMP. If a service program is used to centralize error-handling, there is no way for the DUMP to be included in diagnostics because the dump will only include service prog...
almost 3 years ago in IBM i / Languages - RPG 3 Not under consideration

String interpolation for RPG

Add string interpolation support so variables can be inserted into string literals without having to use concatenation with + symbols and multiple literals. For example:apples = 4bananas = 3print(f"I have {apples} apples and {bananas} bananas") Us...
about 3 years ago in IBM i / Languages - RPG 11 Not under consideration

Functions for shift operations - logical, arithmetic and circular ( rotation ) shift

We have many different ways of manipulating bits in RPG via %bitand() %bitor() etc, but I'm missing shift operations on expressions like it is done with %bitand() and %bitor(). it could be a logical shift function %SHL() or %SHR() ( shift left / r...
about 3 years ago in IBM i / Languages - RPG 5 Not under consideration

Easier Access to Returned Data Structures

As far as I know, for procedures that return a data structure you always have to declare an auxiliary data structure to that the returned value has to be assigned. It would be a great help to be able to directly access the subfields of the returne...
about 3 years ago in IBM i / Languages - RPG 4 Not under consideration

Provide a ?not in? operator.

Now that we have a conditional “in” operator, please provide a “not in” operator, that can be used wherever “in” can, eg, with %lists, %ranges, arrays, etc. Use Case: Currently, to check if the value of a field is not in a list (or range, etc), we...
about 3 years ago in IBM i / Languages - RPG 2 Not under consideration

Extend OVERLOAD to Main-Procedure(s)

It could be useful to have the opportunity to use the OVERLOAD Keyword for Main-Procedures too. Use Case: CTL-OPT MAIN(Main); DCL-PR Main OVERLOAD(mainWithNum :mainWithChar); DCL-PR mainWithNum; Integer INT(10) CONST;END-PR; DCL-PR mainWithChar; C...
about 3 years ago in IBM i / Languages - RPG 1 Not under consideration