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

Allow %RANGE & %LIST with ON-EXCPT

In a MONITOR group with the ON-EXCPT operation code allow it to use the %LIST & %RANGE built in functions that can be used with the IF operation code. For example: monitor ; read TESTFILE ; on-excpt in %list('CPF1234' : 'CPF1235': 'CPF1236') ;...
5 months ago in IBM i / Languages - RPG Future consideration

add pattern matching to RPG

It would be nice to have a terse and compact way to assign a value to a variable based on one or multiple conditions. Many languages have a form of matching pattern to accomplish this. https://www.ibm.com/docs/en/i/7.6.0?topic=expressions-case-exp...
about 2 months ago in IBM i / Languages - RPG Under review

Add CCSID keyword to declared constants

Situation When we run a program in environments with different CCSID's and that program is using literals containing characters with different code points in different CCSID's (like square brackets '[' and ']' in CCSID 1140 and 1148) then ctl-opt ...
25 days ago in IBM i / Languages - RPG Functionality already exists

Allow implicit literal conversion for options(*string) when ccsid(*exact) is in use

Currently, when ctl-opt ccsid(*exact) is in use, literals cannot be directly passed to procedures with parameters defined as pointer value options(*string). They have to be wrapped with %char() function to be converted to job's CCSID. Below fails ...
about 1 month ago in IBM i / Languages - RPG Future consideration

Enhance maximum variable length to 4GB

More and more we need to handle data with sizes over 16MB ie XML, so it would help a lot if it was possible to handle the maximum amount of data in a variable. Therefore I would like to have the possibility to define variables in RPG with a size o...
12 months ago in IBM i / Languages - RPG Under review

Improve FOR-EACH to also have the name associated with the constant

Using Enums in RPG improves the final quality of programs because it translates symbolic names into values, thus avoiding the need to use unnamed constant values. Using For-each, we can access the values ​​of the constants in an Enum definition. I...
3 months ago in IBM i / Languages - RPG Future consideration

Provide *true & *false figurative constants for indicators

To align with modern languages, please consider adding new figurative constants *true & *false for indicators.
6 months ago in IBM i / Languages - RPG Not under consideration

Typed constants

It is possible to type enumerations, that is, the constants within the enumeration. However, it is impossible to type a constant outside of an enumeration. Compilation OK : //1. Typed & qualified enum dcl-enum ACTION char(3) qualified ; dcl-c...
4 months ago in IBM i / Languages - RPG Not under consideration

New *EMPTY constant

Follow-up on https://ideas.ibm.com/ideas/IBMI-I-4107. Instead of using *blank / *blanks, when one wants to return an empty string from a function, instead of writing: return ''; One could write: return *empty;
8 months ago in IBM i / Languages - RPG Future consideration

Enhance %CONCAT to support an integer for number of blanks

The %CONCAT built-in function is helpful to turn a list of values into a CSV, blank or other delimited list. The *BLANK and *NONE optional 1st argument/parameter is helpful. This request is to add an option to that first parameter of the number of...
about 2 months ago in IBM i / Languages - RPG Not under consideration