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


  • Subject: RE: Need Help on using Variable Numeric fields in OPNQRYF
  • From: Bill Graziano <Bill.Graziano@xxxxxxxx>
  • Date: Tue, 18 Jan 2000 09:57:13 -0500

Yes, Paul is correct. I failed to point out that my &FRDATE is defined as
*CHAR whereas yours is *DEC. You should declare another variable type *CHAR
and change your decimal *FRDATE to type *CHAR.

-----Original Message-----
From: Bill Graziano [mailto:Bill.Graziano@besi.com]
Sent: Tuesday, January 18, 2000 9:02 AM
To: 'RPG400-L@midrange.com'
Subject: RE: Need Help on using Variable Numeric fields in OPNQRYF


Mike, 
        I always find this difficult and keep a couple of examples to refer
to. It shouldn't make a difference but, I always declare a variable called
&QRYSLT. I change the value of &QRYSLT to my select clause and then OPNQRYF
FILE(FILENAME) QRYSLT(&QRYSLT). 

I compared your example to my example and this is what I come up with:

DCL        VAR(&FRDATE) TYPE(*CHAR) LEN(7) VALUE('0991201')
DCL        VAR(&QRYSLT) TYPE(*CHAR) LEN(50) /* CHANGE LENTH TO FIT SELECT
CLAUSE */               

CHGVAR     VAR(&QRYSLT) VALUE('(ABDATE *GE' *BCAT &FDATE *CAT')')
OVRDBF     FILE(ABCLF) SHARE(*YES)

OPNQRYF    FILE((ABCLF) QRYSLT(&QRYSLT)KEYFLD((ABCUST))

Of course, you do not have to declare a variable called &QRYSLT and you can
use *CAT instead of *BCAT. The tricky part is the single and double quotes.
I believe that I have them right. If this does not work, prompt on the line
of code, enter (ABDATE *GE' *BCAT &FDATE *CAT') and delete the extra quotes
that are inserted by not correct. 

Good luck
Bill

P.S. Find a working example and put it somewhere for three months from now
when you need it again. OPNQRY can be a real fustrating thing.

-----Original Message-----
From: Mike.Barton@ecsoft.co.uk [mailto:Mike.Barton@ecsoft.co.uk]
Sent: Tuesday, January 18, 2000 8:19 AM
To: RPG400-L@midrange.com
Subject: Re: Need Help on using Variable Numeric fields in OPNQRYF




Hi
     There are several solutions but here is the easiest (no guarantees):

use character version of &FRDATE and convert ABDATE into a character
form using %DIGITS function. Also include extra double quotes otherwise an
error
may occur.

e.g.
DCL        VAR(&FRDATE) TYPE(*CHAR) LEN(7) VALUE('0991201')

OVRDBF     FILE(ABCLF) SHARE(*YES)

        OPNQRYF    FILE((ABCLF)) +
                  QRYSLT('%DIGITS(ABDATE) *GE "' *CAT &FRDATE *CAT '" ')   +
                 KEYFLD((ABCUST))


Mike





S R <s.v.r@usa.net> on 18/01/2000 11:08:53

Please respond to RPG400-L@midrange.com

To:   RPG400-L@midrange.com
cc:    (bcc: Mike Barton/Wellingborough/UK/ECSOFT)

Subject:  Need Help on using Variable Numeric fields in OPNQRYF



START:      PGM

DCL        VAR(&FRDATE) TYPE(*DEC) LEN(7 0) VALUE(0991201)

OVRDBF     FILE(ABCLF) SHARE(*YES)

        OPNQRYF    FILE((ABCLF)) +
                  QRYSLT('ABDATE *GE ' *CAT &FRDATE    *CAT ' ')   +
                 KEYFLD((ABCUST))
CPD0712 30  Operand  does not have valid type for operator.

CPD0711 30  Operands in expression not same type.


I am trying to use the above CL to select the records from the file using
the
Numeric varible(FRDATE) but when compiling I getting the above errors in the
OPNQRYF statement. Can anyone please help me to fix this problem.

Regards,
S.Ramesh

____________________________________________________________________
Get free email and a permanent address at http://www.netaddress.com/?N=1
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator:
david@midrange.com
+---






+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator:
david@midrange.com
+---
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator:
david@midrange.com
+---
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---


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.