× 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.



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 thread ...


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.