AS/400 Query

Is it possible to do any type of "If/Then" statement in Query.  I need to filter out some negative number results without filtering out the whole record with a statement saying that if the field is less than zero, move zero to a new field and then have that new field displayed on the report.

Thanks you.
pseilsAsked:
Who is Participating?
 
shalomcConnect With a Mentor CTOCommented:
If you use Query Management Queries rather than Query400, then it is possible.

In QMQRY, you can embed SQL in the query object, and use SQL case, like this:

table description
-------------------
item char 15
onhand dec 15,5

select item, case when onhand<0 then 0 else onhand end as onhand from inv_file


ShalomC
0
 
MurpheyApplication ConsultantCommented:
No not directly in 1 step, what you can do is create an Query that select all your records with "good" data and send them to a temp file.
in step 2 you take the dame query and filter the "Bad"records and append them to the same file (without the unwanted field(s)). In the temp file these fields will remain blank or zero.
Now you can generate the report.


0
 
tliottaCommented:
pseils:

If you mean the Query/400 product, the easiest way is to create an SQL VIEW that presents the data in the way you need it, then write your query over that view.

But this really isn't a task for Query/400. As mentioned by ShalomC, a Query Management query is better suited. One potential issue is that you don't have the SQL Development Kit product. That would make it harder.

Fortunately, you could still create and use QM queries; you'd just need to learn the details of do-it-yourself.

Tom
0
All Courses

From novice to tech pro — start learning today.