Portal | Manuals | References | Downloads | Info | Programs | JCLs | Mainframe wiki | Quick Ref

Author Message
LlewellynNaicker

New User

Joined: 22 Mar 2005
Posts: 5

 Posted: Wed Sep 27, 2006 6:38 pm    Post subject: Getting the length of a variable data string Hi all I have a problem where I am trying to get the length of a variable data string. Basically it is a group of fields but not a copybook and I need to calculate the length with out doing a perform and calculating byte by byte. Can anyone give me an easier way to do it. Your help is much appreciated. Regards Llewellyn Naicker

MFRASHEED

Active User

Joined: 14 Jun 2005
Posts: 186
Location: USA

Posted: Wed Sep 27, 2006 8:12 pm    Post subject: Re: Getting the length of a variable data string

If i understood issue correctly, here is what you can use.

You can move the group of fields under one level and get length of the whole level.

Example:
 Code: 01  WS-fields.                            05  WS-FLD1               PIC X(6).     05  WS-FLD2               PIC X(9).     05  WS-FLD1               PIC X(8). 01 WS-FLD-LEN               PIC S9(3)

and use following code

 Code: MOVE LENGTH OF WS-FIELDS                                              TO WS-FLD-LEN
LlewellynNaicker

New User

Joined: 22 Mar 2005
Posts: 5

 Posted: Thu Sep 28, 2006 11:05 am    Post subject: Re: Getting the length of a variable data string Hi there thanx so much for your reply. I was not sure if that statement would work but will try it out.
shreevamsi

Active User

Joined: 23 Feb 2006
Posts: 305

 Posted: Thu Sep 28, 2006 12:28 pm    Post subject: hi LlewellynNaicker, If you are not sure...abt the lenght of the variable withut trailing spaces, here is a method...you can follow. 1. Reverse the String 2. Search for the non space charecter from the begining of the reversed string. Get the No of trailing Spaces 3. Subtract the number of spaces from the lenght of the variable with spaces. ~Vamsi
elangomvs

New User

Joined: 07 Apr 2006
Posts: 4

Posted: Tue Oct 17, 2006 4:10 pm    Post subject: Re: Getting the length of a variable data string

 LlewellynNaicker wrote: Hi all I have a problem where I am trying to get the length of a variable data string. Basically it is a group of fields but not a copybook and I need to calculate the length with out doing a perform and calculating byte by byte. Can anyone give me an easier way to do it. Your help is much appreciated. Regards Llewellyn Naicker

hi,

do like this

01 STR1 PIC X(80).
01 LEN PIC 99.

PROCEDURE DIVISION.

PERFORM VARYING I FROM 80 BY -1 UNTIL STR1(I:1) > SPACES
END-PERFORM.

MOVE I TO LEN.

now the data name LEN have the actual length.
elangomvs

New User

Joined: 07 Apr 2006
Posts: 4

 Posted: Tue Oct 17, 2006 4:15 pm    Post subject: hi, do like this 01 STR1 PIC X(80). 01 LEN PIC 99. 01 I PIC 99. PROCEDURE DIVISION. PERFORM VARYING I FROM 80 BY -1 UNTIL STR1(I:1) > SPACES END-PERFORM. MOVE I TO LEN. now the data name LEN have the actual length. >>> ELANGO G
 All times are GMT + 6 Hours
 Page 1 of 1

Search our Forum:

 Topic Author Forum Replies Posted Similar Topics line 52: Name or string > 250 char... Ashishpanpaliya CLIST & REXX 5 Sat Oct 14, 2017 2:29 am Copy 4 byte of data from the last rec... arunsoods DFSORT/ICETOOL 9 Fri Oct 06, 2017 12:15 pm sort records based on length exceeds ... maxsubrat DFSORT/ICETOOL 7 Wed Oct 04, 2017 4:48 pm opening a dataset after reading it fr... arunsoods DFSORT/ICETOOL 5 Wed Oct 04, 2017 3:54 pm PS file data should be passed as symb... d_sarlie JCL & VSAM 15 Tue Oct 03, 2017 5:18 am

 © 2003-2017 IBM MAINFRAME Software Support Division
 Job Vacancies | Forum Rules | Bookmarks | Subscriptions | FAQ | Polls | Contact Us