Using %VALUES and %RANGE with OPNQRYF

Business Intelligence
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

From: Matthew Ferris To: Ted Holt

Can someone help with the syntax of the Open Query File (OPNQRYF) command? I have two questions:

1. Is the following the proper way to code the %VALUES parameter?

 QRYSLT('RESPT *EQ %VALUES( + "A7" "A8" "A9" "X5") *AND + PRDNO *EQ "' *CAT &PRDNO + *CAT '" ...ETC. 

I wish to select records for a given product number that has a response type equal to one of these values.

2. Can the range parameter be used on character as well as numeric data? I want to select records that fall within a date range, but I don't want to hard-code dates. If the dates are in character variables, can I use the range parameter? If so, what is the syntax? I tried something like the following, but it didn't seem to work.

 QRYSLT('SHPDAT *EQ + %RANGE('&BEGDT' '&ENDDT')') 

From: Ted Holt To: Matthew Ferris

You're right (if you finish the expression).

 QRYSLT('RESPT *EQ %VALUES("A7" + "A8" "A9" "X5") *AND PRDNO *EQ + "' *CAT &PRDNO *CAT '"') 

Range works for character data, but you need to concatenate double quotes around the range values.

 QRYSLT('SHPDAT *EQ %RANGE("' + *CAT &BEGDT *CAT '" "' *CAT + &ENDDT *CAT '")') 

If &BEGDT is 931001 and &ENDDT is 931015, this should resolve to:

 QRYSLT('SHPDAT *EQ + %RANGE("931001" "931015")') 

Hope you get it running!

BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

$0.00 Raised:
$