×

Good News Everybody!

The new search engine is LIVE!

Please report any problems to david (at) midrange.com.




oh, one more thing. That super duper MOVE opcode does not require me to
check if the char7 is blank. It will just auto set the rate to 0 if char7
is blank. The DS overlay or %dec.., on the other hand, is not so kind on
this.


"hockchai Lim" <lim.hock-chai@xxxxxxxxxxxxxxx> wrote in message
news:mailman.17578.1291321885.2702.rpg400-l@xxxxxxxxxxxxxxx
Yes, using overlay is the best choice and I normally use this approach.
But sometime I ran into a situation where the char7 field is actually
comes from a file and I've read the file to the result-ds (likerec). In
this case, I etiher perform the %dec calculation or use base pointer to
achieve the overlay. So...I still miss that move feature....


"Barbara Morris" <bmorris@xxxxxxxxxx> wrote in message
news:mailman.17576.1291321252.2702.rpg400-l@xxxxxxxxxxxxxxx
On 12/2/2010 2:35 PM, hockchai Lim wrote:
...
Now look at the code below. The value of the rate would be 12345.67,
which
is what I wanted, after executing the MOVE statement.:
D char7 S 7a inz('1234567')
D rate S 7 2

C move char7 rate

In that MOVE, your char7 is actually being interpreted as a zoned-decimal
value. Say char7 was '123456N', you would get -12345.65 in your rate
field.

I think it would be much better to be explicit about what is happening,
by using a data structure that describes the nature of char7:

D ds
D char7 7a inz('1234567')
D char7num 7s 2 overlay(char7)

D rate S 7 2

C eval rate = char7num

Arguably that is easier to understand than using %SUBST or %INT with
division.





As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2026 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.