|
Sorry, I didn't see the trim in there, Actually, %len(%trim(fixedfield)) should work fine. The problem in your case, is as mentioned in my first post. CL is only passing a 32 char field, but the RPG expects it to be 100. Thus, the garbage in the last 68 chars prevent %trim from trimming anything. HTH, Charles > -----Original Message----- > From: michael@xxxxxxxxxxxxxxxxxx [mailto:michael@xxxxxxxxxxxxxxxxxx] > Sent: Wednesday, September 08, 2004 10:08 AM > To: Midrange Systems Technical Discussion > Subject: RE: %Len problem > > > the length of an expression (%Len(%Trim(somevar)) won't return the > length of the fixed field. > > > -------- Original Message -------- > > Subject: RE: %Len problem > > From: CWilt@xxxxxxxxxxxx > > Date: Wed, September 08, 2004 9:59 am > > To: midrange-l@xxxxxxxxxxxx > > > > Others have pointed out that the %len of a fixed length > field is always the > > defined size. They do call it fixed length for a reason! <grin> > > > > But just wanted to point out that you will run into other > problems if you > > are indeed calling this from the command line as you say. > > > > You'll run into the well know problem of passing variables > > 32 char's from > > a command line. CL is only passing you 32 characters but > the RPG program > > expects 100. Notice the 'yada' followed by 28 blanks, > followed by 68 x'00'. > > > > This is discussed in the FAQ. If you need more help, you > might want to move > > the message to the RPG list. > > > > > > Charles > > > > > > > > > > > -----Original Message----- > > > From: michael@xxxxxxxxxxxxxxxxxx > [mailto:michael@xxxxxxxxxxxxxxxxxx] > > > Sent: Wednesday, September 08, 2004 9:33 AM > > > To: Midrange Systems Technical Discussion > > > Subject: RE: %Len problem > > > > > > > > > Good call... > > > > > > > EVAL sndmsg:x > > > > > > 00000 A8818481 40404040 40404040 40404040 - yada > > > > > > 00010 40404040 40404040 40404040 40404040 - > > > > > > 00020 40000000 00000000 00000000 00000000 - > > > ............... > > > 00030 00000000 00000000 00000000 00000000 - > > > ................ > > > 00040 00000000 00000000 00000000 00000000 - > > > ................ > > > 00050 00000000 00000000 00000000 00000000 - > > > ................ > > > 00060 00000000 ........ ........ ........ - > > > ................ > > > > > > > > > SndMsg is an entry parameter, and I'm calling it from a > command line, > > > and therefore only 4 bytes (in my example) are > 'guaranteed', and I'm a > > > moron. > > > > > > Thanks... > > > > > > > -------- Original Message -------- > > > > Subject: Re: %Len problem > > > > From: rob@xxxxxxxxx > > > > Date: Wed, September 08, 2004 9:25 am > > > > To: "Midrange Systems Technical Discussion" > > > <midrange-l@xxxxxxxxxxxx> > > > > > > > > What is the value of SndMsg in hex? > > > > > > > > Rob Berendt > > > > -- > > > > Group Dekko Services, LLC > > > > Dept 01.073 > > > > PO Box 2000 > > > > Dock 108 > > > > 6928N 400E > > > > Kendallville, IN 46755 > > > > http://www.dekko.com > > > > > > > > > > > > > > > > > > > > > > > > michael@xxxxxxxxxxxxxxxxxx > > > > Sent by: midrange-l-bounces@xxxxxxxxxxxx > > > > 09/08/2004 08:20 AM > > > > Please respond to > > > > Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxx> > > > > > > > > > > > > To > > > > midrange-l <midrange-l@xxxxxxxxxxxx> > > > > cc > > > > > > > > Fax to > > > > > > > > Subject > > > > %Len problem > > > > > > > > > > > > > > > > > > > > > > > > > > > > What's up with this? Here's the definition of a couple > > > of fields... > > > > > > > > D SndMsg S 100 > > > > D SndMsgSize S 10U 0 > > > > Here's the calc... > > > > > > > > C Eval SndMsgSize = > %Len(%Trim(SndMsg)) > > > > > > > > and here's what I see in debug... > > > > > > > > EVAL SndMsgSize > > > > SNDMSGSIZE = 000000100. > > > > EVAL SndMsg > > > > SNDMSG = > > > > > > > ....5...10...15...20...25...30...35...40...45...50...55...60 > > > > 1 'yada > > > ' > > > > 61 ' ' > > > > > > > > I would expect to see SNDMSGSIZE = 0000000004. > > > > > > > > -- > > > > This is the Midrange Systems Technical Discussion > > > (MIDRANGE-L) mailing > > > > list > > > > To post a message email: MIDRANGE-L@xxxxxxxxxxxx > > > > To subscribe, unsubscribe, or change list options, > > > > visit: http://lists.midrange.com/mailman/listinfo/midrange-l > > > > or email: MIDRANGE-L-request@xxxxxxxxxxxx > > > > Before posting, please take a moment to review the archives > > > > at http://archive.midrange.com/midrange-l. > > > > > > > > > > > > -- > > > > This is the Midrange Systems Technical Discussion > > > (MIDRANGE-L) mailing list > > > > To post a message email: MIDRANGE-L@xxxxxxxxxxxx > > > > To subscribe, unsubscribe, or change list options, > > > > visit: http://lists.midrange.com/mailman/listinfo/midrange-l > > > > or email: MIDRANGE-L-request@xxxxxxxxxxxx > > > > Before posting, please take a moment to review the archives > > > > at http://archive.midrange.com/midrange-l. > > > > > > -- > > > This is the Midrange Systems Technical Discussion > > > (MIDRANGE-L) mailing list > > > To post a message email: MIDRANGE-L@xxxxxxxxxxxx > > > To subscribe, unsubscribe, or change list options, > > > visit: http://lists.midrange.com/mailman/listinfo/midrange-l > > > or email: MIDRANGE-L-request@xxxxxxxxxxxx > > > Before posting, please take a moment to review the archives > > > at http://archive.midrange.com/midrange-l. > > > > > -- > > This is the Midrange Systems Technical Discussion > (MIDRANGE-L) mailing list > > To post a message email: MIDRANGE-L@xxxxxxxxxxxx > > To subscribe, unsubscribe, or change list options, > > visit: http://lists.midrange.com/mailman/listinfo/midrange-l > > or email: MIDRANGE-L-request@xxxxxxxxxxxx > > Before posting, please take a moment to review the archives > > at http://archive.midrange.com/midrange-l. > > -- > This is the Midrange Systems Technical Discussion > (MIDRANGE-L) mailing list > To post a message email: MIDRANGE-L@xxxxxxxxxxxx > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/mailman/listinfo/midrange-l > or email: MIDRANGE-L-request@xxxxxxxxxxxx > Before posting, please take a moment to review the archives > at http://archive.midrange.com/midrange-l. >
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.