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 Is a defect
Workspace IBM i
Created by Guest
Created on Dec 24, 2019

CLOB Pointers in RPG Not Working

RPG A calls RPG B, passing pointer to CLOB. RPG B receives pointer, and uses it as base for CLOB there. Both compile. Both execute with no bombs. But based CLOB in RPG B does not reflect data in CLOB in RPG A.


Use Case:

Program A creates a CLOB and populates it with 2mb of JSON data. Program A calls Program B which is supposed to send the CLOB data from Program A via a POST REST service or MQ msg. We use two programs to adhere to a SoC (separation of concerns) and to place our logic in multi-tiers, keeping things modular. But this will not work. We are forced to put the CLOB in an SQL VARIABLE and Program B reads it from there. This works but is not the cleanest way.


Idea priority High
  • Guest
    Reply
    |
    Apr 10, 2020

    This is a defect and needs to be addressed with a CASE. Please open support case for this.

  • Guest
    Reply
    |
    Feb 18, 2020

    Guys, thanks for the comments...It seems I should open a ticket next. Bob, yes I considered using a locator, but it seems not a good use case for our issue.

  • Guest
    Reply
    |
    Feb 18, 2020

    Please post code that shows how you are coding the CLOB in both programs, including the Prototype and Procedure Interface.

  • Guest
    Reply
    |
    Feb 17, 2020

    Dan, did you create a ticket for this?

  • Guest
    Reply
    |
    Feb 9, 2020

    Just to help... LOB Locators are what you're talking about, right? CLOB Pointers... not really a thing in RPG IV.
    A LOB Locator can be passed between programs since it is an Integer. But you have the Free the LOB Locator when you're finished using it.
    I think (hence do not know for sure) that all access to LOB (CLOB BLOB DBLOB) objects is via LOB Locators in DB2 for i.
    So it may be that you doing things that give you the impression you're getting a point to the LOB, but in fact, you're getting a 4-byte binary integer.
    But I could be wrong.

  • Guest
    Reply
    |
    Dec 30, 2019

    Have you opened a support case on this? Seems more like a bug than an enhancement.