× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Having looked at the source file I'm even more confused.

EZDQLSTL is an Int(10) containing the length of the SQL statement.

Not sure where the data itself is from the source but it looks like it may follow EZDQLSTL.

If that is the case then what you need is:

Dcl-s SQLStuff VarChar(32000: 4) Based( %Addr( EZDQLSTL ) ); // Length can be anything up to 16Mb

Dcl-s Upper Varchar(1024);

Upper = SQLStuff; // This will truncate to 1024 if needed.

I _think_ this is what you need but without knowing why you are upper casing stuff etc I'm guessing. But if the data follows the count then this should work.

Note the _4_ in the VarChar definition - the supplied length is 4 bytes so you have to ensure the definition matches.


On Dec 9, 2019, at 10:02 AM, C Holko <christopherholko@xxxxxxxxx> wrote:

So, I have this
XSql1024 S 9216 Varying
Based(SqlPtr)

Upper S Like(XSQL1024)

and later some code does
SqlPtr = %addr(EZDQLSTL) + 2
Upper = XSQL1024

The EZ* fields are from QSYSINC/QRPGLESRC EZDAEP coming in the exit
QIBM_QZDA_SQL2

I need to clip XSQL1024 so it will always fit in Upper. I am getting SQL
strings in excess of 9k.

What are my options?
--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxx for any subscription related questions.

Help support midrange.com by shopping at amazon.com with our affiliate link: https://amazon.midrange.com


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.