View previous topic :: View next topic
|
Author |
Message |
jaffarhussain
New User
Joined: 26 Nov 2010 Posts: 30 Location: Hyderabad
|
|
|
|
Code: |
IF WS0Z-CCYYWK NOT < WS0Z-CCYYLW
AND WS0Z-CCYYWK NOT > WS0Z-CCYYHI
*-----> DATE IS NOW WITHIN WINDOW
*-----> OVERLAY CENTURY VALUE.
MOVE WS0Z-CENTWK TO DAT73C DAT83C DAT61C DATCTY
DAT23C
GO TO F8120-Z.
*-----> * ADD 200 FOR NEXT CENTURY
ADD 200 TO WS0Z-CCYYWK.
IF WS0Z-CCYYWK NOT < WS0Z-CCYYLW
AND WS0Z-CCYYWK NOT > WS0Z-CCYYHI
*-----> DATE IS NOW WITHIN WINDOW
*-----> OVERLAY CENTURY VALUE.
MOVE WS0Z-CENTWK TO DAT73C DAT83C DAT61C DATCTY
DAT23C
GO TO F8120-Z.
F8120-Z.
EXIT. |
|
|
Back to top |
|
|
Bill Woodger
Moderator Emeritus
Joined: 09 Mar 2011 Posts: 7309 Location: Inside the Matrix
|
|
|
|
As well as tagging-on to the end of an old topic, you seem to have forgotten to include an actual question.
Edit: and code tags... |
|
Back to top |
|
|
dbzTHEdinosauer
Global Moderator
Joined: 20 Oct 2006 Posts: 6966 Location: porcelain throne
|
|
|
|
as well as use CODE tags. |
|
Back to top |
|
|
Bill Woodger
Moderator Emeritus
Joined: 09 Mar 2011 Posts: 7309 Location: Inside the Matrix
|
|
|
|
Code: |
IF ( WS0Z-CCYYWK NOT < WS0Z-CCYYLW )
AND ( WS0Z-CCYYWK NOT > WS0Z-CCYYHI )
*-----> DATE IS NOW WITHIN WINDOW
*-----> OVERLAY CENTURY VALUE.
MOVE WS0Z-CENTWK TO DAT73C DAT83C DAT61C DATCTY
DAT23C
ELSE
*-----> * ADD 200 FOR NEXT CENTURY
ADD 200 TO WS0Z-CCYYWK
IF ( WS0Z-CCYYWK NOT < WS0Z-CCYYLW )
AND ( WS0Z-CCYYWK NOT > WS0Z-CCYYHI )
*-----> DATE IS NOW WITHIN WINDOW
*-----> OVERLAY CENTURY VALUE.
MOVE WS0Z-CENTWK TO DAT73C DAT83C DAT61C DATCTY
DAT23C
END-IF
END-IF
.
F8120-Z.
EXIT. |
Could be something like what you want.
Don't like the data-names, don't like the style/content of the comments, but such is life.
You are repeating a test, have LT & GT on same test (are you deliberately ignoring EQ?). So you could restructure the whole thing, if that is your question. You could. |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10873 Location: italy
|
|
|
|
this is one of the cases where a GOTO is acceptable,
if You indent for readability, AND YOU HAVE A few more IFs
the IF ELSE END_IF will indent too much |
|
Back to top |
|
|
Bill Woodger
Moderator Emeritus
Joined: 09 Mar 2011 Posts: 7309 Location: Inside the Matrix
|
|
|
|
The code can be made more maintainable and self-documenting.
Code: |
PERFORM XX-PROCESS-IN-DATE-WINDOW
ADD A-VALUE-OF-200-WHICH-MEANS-SOMETHING TO WS0Z-CCYYWK.
PERFORM XX-PROCESS-IN-DATE-WINDOW
F8120-Z.
EXIT.
XX-PROCESS-IN-DATE-WINDOW SECTION.
IF ( WS0Z-CCYYWK NOT < WS0Z-CCYYLW )
AND ( WS0Z-CCYYWK NOT > WS0Z-CCYYHI )
MOVE WS0Z-CENTWK TO DAT73C
DAT83C
DAT61C
DATCTY
DAT23C
END-IF
.
|
|
|
Back to top |
|
|
|