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 147

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...
over 4 years ago in IBM i / Languages - RPG 5 Not under consideration

Named constant *SRCCCSID for current source CCSID

Moving files from QRPGLESRC to IFS and around in international environment can cause some challenges for CCSID. However procedures can be written to be aware of this issue and be language (ccsid) neutral by passing the ccsid of the source file con...
about 2 years ago in IBM i / Languages - RPG 6 Not under consideration

Enable Retrieval of SQL constraint violation error information in RPG program

Current RPG support requires programmers to use IBM i APIs plus considerable coding to determine what constraint has caused an error. For example, when using an SQL insert on table, where a check or foreign key constraint is used, a violation of t...
over 7 years ago in IBM i / Languages - RPG 3 Not under consideration

DATA-GEN multi types (polymorphic) during serialization possibility

Handle cleanly new modern APIs that allows for multiple "types" (say mainstream Microsoft Graph API ) usually inside an array (i.e. array of different things to attach to a chat message etc.). JSON doesn't restrict particulars types in - say - arr...
about 1 year ago in IBM i / Languages - RPG 3 Not under consideration

Assign a timestamp to a date/time field without %date() / %time()

When assigning a timestamp to a date field or a time field it shouldn't be necessary to use %DATE() or %TIME() to do this. Use Case: D dateIso1 s D D dateIso2 s D D timeStamp s Z inz(*SYS) C eval dateIso1 = %date( timeStamp ) C eval dateIso2 = tim...
almost 6 years ago in IBM i / Languages - RPG 3 Not under consideration

New RPG figurative constant *CLEAR.

The new figurative constant *CLEAR assumes his value by the field type. For example, with a character field the value is *BLANK, with a numeric field the value is *ZERO, with an indicator the value is *OFF and so on. In other words, *CLEAR has the...
almost 9 years ago in IBM i / Languages - RPG 10 Not under consideration

Allow 3rd parameter of %subst() to exceed length of string

Currently, if I use something like this: DNKYWD = %subst(NARR: 1: 10); when NARR is defined in the procedure interface like this: NARR Varchar(32740) const options(*varsize); I don't know how long NARR really is unless I check it. This causes an i...
over 6 years ago in IBM i / Languages - RPG 2 Not under consideration

Count recursive calls (all/direct)

Requesting a built in function to recognize if a proc was called recursively with a parameter to recognize if it was called by itself. Ex: dcl-proc chkRecursion;dcl-pi chkRecursion end-pi;count = %recursion();countDirect = %recursion( *on );if cou...
over 4 years ago in IBM i / Languages - RPG 2 Not under consideration

ENUM construct an function

ENUM Similarly to java and other languages an enum construct may be useful to rpg programmer. It involves declaring key-value pairs and an instruction to find the value corresponding to the key provided e.g.: declare the enumeration name (enumerat...
over 2 years ago in IBM i / Languages - RPG 1 Not under consideration

New RPG assignment operators ++ and --

It would be nice to have the C/Java like assignment operators ++ and -- too. Use Case: var++; instead of var +=1;var--; instead of var -=1;
over 8 years ago in IBM i / Languages - RPG 1 Not under consideration