|
Here is Carel's reply coded. The command source: RTVSTRLEN: CMD PROMPT('Retrieve String Length') PARM KWD(STRING) TYPE(*CHAR) LEN(5000) VARY(*YES + *INT2) PROMPT('Character string + (5000)') PARM KWD(STRLEN) TYPE(*DEC) LEN(4 0) RTNVAL(*YES) + PROMPT('CL var for return value (4,0)') The CPP source: RTVSTRLEN: PGM PARM(&STRING &STRLEN) DCL VAR(&STRING) TYPE(*CHAR) LEN(5002) DCL VAR(&STRLENA) TYPE(*CHAR) LEN(2) DCL VAR(&STRLEN) TYPE(*DEC) LEN(4 0) CHGVAR VAR(&STRLENA) VALUE(%SST(&STRING 1 2)) CHGVAR VAR(&STRLEN) VALUE(%BIN(&STRLENA)) ENDPGM Thanks again... Reggie > > message: 1 > date: Sat, 08 Mar 2003 19:49:09 +0100 > from: "Carel Teijgeler" <coteijgeler@xxxxxxxxx> > subject: Re: How to do %LEN(%TRIM(&myStringVariable)) in CL program? > > Reggie, > > If you want to know the length of the string, create a > command with two PARMs > > PARM 1 is the string length 5000 define as VARY(*YES) > PARM 2 is a return value *DEC 4 0 > > IN the CPP receive PARM 1 in avariable with length 5002, use > the BIF %bin to pull out the first two bytes, return that value. > > It is in fact 5 lines of code. > > Regards, > Carel Teijgeler. >
As an Amazon Associate we earn from qualifying purchases.
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.