Hallo,
vielleicht hilft dies:

The usual way to make Query convert alpha to numeric is with the microsecond function.
For example, suppose you have a two-byte alpha field with a right-adjusted, zero-filled month number.
You can convert the alpha value to a number like this:


Field Expression
MIC microsecond(
'2002-01-01-00.00.00.0000' ||
month)


I suppose this is cute, but I don't like this method and avoid using it in production. The microsecond function cannot handle more than six digits. The number has to be right-adjusted and zero-filled. I think this method is just plain goofy.
To introduce the method I prefer, here's a question from a reader in Italy:
What do you think about using the SQL CAST operation to convert alpha values to numerics?
-- Rossano

I think SQL is a good way to go. Query/400 can read SQL views in the same way it reads logical files.
The following SQL command creates a view that defines the alpha field amount as a nine-digit packed-decimal field with two decimal positions:
create view myview as
select key, dec(amount,9,2) as amt from mydata

The following SQL commands convert alpha fields to numeric values:
select real(amount) from mydata
select double(amount) from mydata
select int(month) from mydata
select cast (amount as double) from mydata

gruss Tarasik