|
Jay, This is a copy of the working-storage area that I use. Since it's a pointer to a character string, I use the same length as the charaacter-string being scanned. Since the pattern length cannot be longer than the string being scanned it standsto reason that the character-pattern must be <= the string size (IMO). Hope this helps Terry *---------------------------------------------------------------* * Parameter area for QCLSCAN * *---------------------------------------------------------------* * Define longest string you intend to scan * and move it to here 01 character-string pic x(112) value spaces. * Set this to the length of string that * you placed in character-string 01 string-len pic s9(3) value +112 comp-3. * Set this to the position you want to * start scanning for a pattern 01 start-pos pic s9(3) value +1 comp-3. * define longest pattern you intend to use * and move the pattern here 01 character-pattern pic x(112) value spaces. * Set this to the length of the pattern * you placed in character-pattern 01 pattern-len pic s9(3) value +0 comp-3. * Set this to "1" to translate your * character-string to Upper case first * -before- the scan begins 01 translate-char pic x(1) value '1'. * Set this to "1" to trim all trailing * blanks from character-string -before- * the scan begins 01 trim-blanks pic x(1) value '1'. * Set this to a "wildcard" value contained * in your pattern, to avoid mis-matches 01 wildcard-char pic x(1) value space. * Set by QCLSCAN to a value as follows: * Set by QCLSCAN to a value as follows: * --> GT 0 = Position in the string * --> 0 = Pattern not found * --> -1 = Pattern longer than string * --> -2 = Pattern length is LT 1 * --> -3 = 1st char in pattern is a * wildcard character * --> -4 = Pattern is blank and the * trim-blanks is a 1 * --> -5 = Starting position not valid 01 return-result pic s9(3) value +0 comp-3. call 'QCLSCAN' using character-string string-len start-pos character-pattern pattern-len translate-char trim-blanks wildcard-char return-result if return-result < +1 Perform action for a No-Find condition end-if > -----Original Message----- > From: > cobol400-l-bounces+terry.winchester=raymondcorp.com@xxxxxxxxxx > om > [mailto:cobol400-l-bounces+terry.winchester=raymondcorp.com@mi > drange.com] On Behalf Of Jay Sulzmann > Sent: Monday, August 16, 2004 10:15 AM > To: COBOL Programming on the iSeries/AS400 > Subject: Re: [COBOL400-L] Green-screen search argument > > > Terry, > > According to IBM's documentation, maximum length of > field-to-be-scanned > (parameter 1) is 999. Got that. > What is the maximum length of the pattern argument (parameter 4)? > > Thanks -- Jay > > ----- Original Message ----- > From: "Winchester Terry" <terry.winchester@xxxxxxxxxxxxxxx> > To: "'COBOL Programming on the iSeries/AS400'" > <cobol400-l@xxxxxxxxxxxx> > Sent: Monday, August 16, 2004 9:57 AM > Subject: RE: [COBOL400-L] Green-screen search argument > > > > Another option would be to call the QCLSCAN API. > > > > > -----Original Message----- > > > From: cobol400-l-bounces@xxxxxxxxxxxx > > > [mailto:cobol400-l-bounces@xxxxxxxxxxxx] On Behalf Of Jay Sulzmann > > > Sent: Monday, August 16, 2004 9:43 AM > > > To: COBOL Programming on the iSeries/AS400 > > > Subject: [COBOL400-L] Green-screen search argument > > > > > > > > > Good morning, > > > > > > Suppose in a subfile app I want to list only the entries that > > > contain a specific string value and filter out all others. > > > For example, I want to list only the customers that have > > > "JOHN" in their name. > > > > > > The search-argument is "JOHN" and the application needs to > > > display "JOHN SMITH", "BIG-JOHN", "SALLY JOHNSON". Suppose > > > the Customer Name is 30 bytes long. How do I construct an > > > INSPECT operation so that it looks at the customer name for > > > the string "JOHN" without including the 26 blanks? > > > > > > Cheers. -- Jay > > > > > > ================================= > > > Jay Sulzmann > > > AS/400 Senior Programmer/Analyst > > > AS/400 Certified RPG IV Developer > > > > > > Hainey Business Systems LLC > > > 8 East Canal Street > > > Dover, PA 17315 > > > > > > Tel: 717-718-9601 Ext. 231 > > > Fax: 717-292-9474 > > > AIM: bluejay0827 > > > Web: www.hbs-inc.com > > > ____________________________________ > > > Providing E-Business, EDI, AS/400 > > > Development and related services nationwide. > > > _______________________________________________ > > > This is the COBOL Programming on the iSeries/AS400 > > > (COBOL400-L) mailing list > > > To post a message email: COBOL400-L@xxxxxxxxxxxx > > > To subscribe, unsubscribe, or change list options, > > > visit: http://lists.midrange.com/mailman/listinfo/cobol400-l > > > or email: COBOL400-L-request@xxxxxxxxxxxx > > > Before posting, please take a moment to review the archives > > > at http://archive.midrange.com/cobol400-l. > > > > > _______________________________________________ > > This is the COBOL Programming on the iSeries/AS400 > (COBOL400-L) mailing > list > > To post a message email: COBOL400-L@xxxxxxxxxxxx > > To subscribe, unsubscribe, or change list options, > > visit: http://lists.midrange.com/mailman/listinfo/cobol400-l > > or email: COBOL400-L-request@xxxxxxxxxxxx > > Before posting, please take a moment to review the archives > > at http://archive.midrange.com/cobol400-l. > > > > > > > _______________________________________________ > This is the COBOL Programming on the iSeries/AS400 > (COBOL400-L) mailing list > To post a message email: COBOL400-L@xxxxxxxxxxxx > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/mailman/listinfo/cobol400-l > or email: COBOL400-L-request@xxxxxxxxxxxx > Before posting, please take a moment to review the archives > at http://archive.midrange.com/cobol400-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.