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.

Status Not under consideration
Workspace IBM i
Created by Guest
Created on Mar 10, 2022

Enhance PASE APIs _ILECALL/_ILECALLX to Pass Operational Descriptors

Allow _ILECALL() and _ILECALLX() to pass operational descriptors when calling an ILE procedure, if they are not already capable of this, and provide documentation.

There is already a pointer field for the operational descriptor in the ILEarglist_base data structure that is used by these APIs. It's not clear if this is already functional, or just a placeholder. The usage is not documented.


Use Case:

Calling ILE procedures that rely on operational descriptors fails because _ILECALL() and _ILECALLX() don't pass the descriptors.

There should be a way for the caller to specify the descriptors. Otherwise, ILE procedures that rely on them (and possibly their callers) have to be rewritten in order to allow calls from PASE.


Idea priority Medium
  • Guest
    Reply
    |
    Nov 17, 2022

    IBM, please reconsider this request. Without it I'm not aware of any way that the IBM i XMLSERVICE or newer iService will be able to dynamically call RPG service programs that take full advantage of all the features of *NOPASS, *OMIT, and by value parameters. See https://github.com/IBM/xmlservice/issues/62.

    The XMLSERVICE partially gets around this lack of functionality in "opm" mode by using a generic prototype that passes all parameters by reference. As far as I can tell it does not support passing any parameters by value. I believe the iService does something similar but it's unclear coming from C if that actually passes the operational descriptor that RPG needs to make %PARMS work properly.

  • Guest
    Reply
    |
    Apr 15, 2022
    .Unfortunately, there are no plans to provide this function in the near future.