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).
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:
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 an idea.
Get feedback from the IBM team and other customers to refine your idea.
Follow the idea through the IBM Ideas process.
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.
The set of clients who recognize the difference between the MODIFIES SQL DATA and CONTAINS SQL data classifications, and who could correctly select which version of a QCMDEXC procedure to use, is very small. The development team believes the error that would result from using the CONTAINS SQL version with a CL command that uses SQL would be confusing to most users. This is an additional reason we are not accepting this request.
Db2 for IBM i team
IBM Power Systems Development
The CAAC has reviewed this requirement and recommends that IBM not implement this request. This is not likely a common use case among the IBM i community, and the submitter has written his own solution.
Background: The COMMON Americas Advisory Council (CAAC) members have a broad range of experience in working with small and medium-sized IBM i customers. CAAC has a key role in working with IBM i development to help assess the value and impact of individual RFEs on the broader IBM i community, and has therefore reviewed your RFE.
For more information about CAAC, see www.common.org/caac
Nancy Uthke-Schmucki - CAAC Program Manager
Bob,
The qcmdexc scalar function has multiple uses. You dont necessarily need to use it to run another UDF or UDTF. I have used it to run CL commands and executed it from CL, or blended CL and SQL together.
Maybe it would fit your use case?
https://www.ibm.com/docs/en/i/7.4?topic=services-qcmdexc-scalar-function
jp lamontre, I do not. I use it IN a UDF/UDTF I never need it to RUN another UDF/UDTF.
Hi Bob,
why/when do you need qsys2.qcmdexc to run a udf ?
Just as preemptive note: I have written my own QCAPCMD SQL Procedure with CONTAINS SQL for just this purpose and it works fine. I also created a C stub that can be INCLUDE'd in SQL functions that uses a host variable to run a CL command which only uses whatever READS/CONTAINS/MODIFIES setting the new function uses. This is actually th best solution. Perhaps an inline QCMDEXC "macro" of sorts.