HP3000-L Archives

February 1999, Week 1

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Therm-O-Link <[log in to unmask]>
Reply To:
Therm-O-Link <[log in to unmask]>
Date:
Tue, 2 Feb 1999 09:47:54 -0500
Content-Type:
text/plain
Parts/Attachments:
text/plain (122 lines)
Joe Geiser writes:

>Your receiving field (the X(8) field) should be:
>
>  FIELD-A        PIC X(8)  JUSTIFY RIGHT.
>
>MOVE INPUT-FLD TO FIELD-A.

You know, I've never been able to get this to work.  If the INPUT-FLD is 
X(8) and FIELD-A is X(8) also, then I always end up with the same data in 
FIELD-A as was in INPUT-FLD.

Example:

3      01  PROGRAM-WORK-AREA.
3.1        03  ACCEPT-STRING           PIC  X(8).
3.2        03  RIGHT-JUST-STRING       PIC  X(8)   JUST RIGHT.
3.3        03  ACCEPT-NUMBER           PIC  9(8).
3.4   $PAGE
3.5   *****************************************************************
3.6   ***  P R O C E D U R E   D I V I S I O N
3.7   *****************************************************************
3.8    PROCEDURE DIVISION.
3.9    DECLARATIVES.
4      S0000-JKP082-DEBUG SECTION                  01.
4.1       USE FOR DEBUGGING ON ALL PROCEDURES.
4.2    P0000-DEBUG-PARAGRAPH.
4.3        DISPLAY DEBUG-ITEM.
4.4    END DECLARATIVES.
4.5   *****************************************************************
4.6    S0100-JKP082-INIT SECTION                   03.
4.7    P1000-INITIALIZATION.
4.8        DISPLAY "TESTING COBOL ACCEPTS".
4.9        DISPLAY " ".
5     
5.1        DISPLAY "ENTER A NUMBER".
5.2        MOVE LOW-VALUES             TO ACCEPT-STRING.
5.3        ACCEPT ACCEPT-STRING.
5.4        DISPLAY " ".
5.5        DISPLAY "YOU ENTERED [", ACCEPT-STRING, "]"
5.6                "<--- ACCEPT STRING  PIC X(8)".
5.7        DISPLAY " ".
5.8        MOVE ACCEPT-STRING          TO RIGHT-JUST-STRING.
5.9        DISPLAY "RIGHT JUST [", RIGHT-JUST-STRING, "]"
6                  "<--- RIGHT JUST STRING  PIC X(8) JUST RIGHT".
6.1        DISPLAY " ".
6.2        MOVE ACCEPT-STRING          TO ACCEPT-NUMBER.
6.3        DISPLAY "ACCEPT NUMBER [", ACCEPT-NUMBER, "]"
6.4                "<--- ACCEPT NUMBER  PIC 9(8)".
6.5        MOVE RIGHT-JUST-STRING      TO ACCEPT-NUMBER.
6.6        DISPLAY "RIGHT JUST NUMBER [", ACCEPT-NUMBER, "]"
6.7                "<--- ACCEPT NUMBER  PIC 9(8)".
6.8   
6.9        MOVE LOW-VALUES             TO RIGHT-JUST-STRING.
7          DISPLAY "ENTER ANOTHER NUMBER".
7.1        ACCEPT RIGHT-JUST-STRING.
7.2        DISPLAY " ".
7.3        DISPLAY "YOU ENTERED [", RIGHT-JUST-STRING, "]"
7.4                "<--- RIGHT JUST STRING  PIC X(8) JUST RIGHT".
7.5        MOVE RIGHT-JUST-STRING      TO ACCEPT-NUMBER.
7.6        DISPLAY "RIGHT JUST NUMBER [", ACCEPT-NUMBER, "]"
7.7                "<--- ACCEPT NUMBER  PIC 9(8)".
7.8   
7.9        STOP RUN.


When run this produces:

TESTING COBOL ACCEPTS
 
ENTER A NUMBER
23
 
YOU ENTERED [23]<--- ACCEPT STRING  PIC X(8)
 
RIGHT JUST [23]<--- RIGHT JUST STRING  PIC X(8) JUST RIGHT
 
ACCEPT NUMBER [23]<--- ACCEPT NUMBER  PIC 9(8)
RIGHT JUST NUMBER [23]<--- ACCEPT NUMBER  PIC 9(8)
ENTER ANOTHER NUMBER
34
 
YOU ENTERED [34]<--- RIGHT JUST STRING  PIC X(8) JUST RIGHT
RIGHT JUST NUMBER [34]<--- ACCEPT NUMBER  PIC 9(8)


If I change the LOW-VALUES to SPACES then it produces this:

TESTING COBOL ACCEPTS
 
ENTER A NUMBER
23
 
YOU ENTERED [23      ]<--- ACCEPT STRING  PIC X(8)
 
RIGHT JUST [23      ]<--- RIGHT JUST STRING  PIC X(8) JUST RIGHT
 
ACCEPT NUMBER [23      ]<--- ACCEPT NUMBER  PIC 9(8)
RIGHT JUST NUMBER [23      ]<--- ACCEPT NUMBER  PIC 9(8)
ENTER ANOTHER NUMBER
34
 
YOU ENTERED [34      ]<--- RIGHT JUST STRING  PIC X(8) JUST RIGHT
RIGHT JUST NUMBER [34      ]<--- ACCEPT NUMBER  PIC 9(8)


Also, note that I don't get any zeroes in the numeric field at all.


So, what I have always done is either control the input so that it 
is pre-edited to be all numeric (including any leading zeroes) and 
accepted it directly into a numeric-defined field.  Or accept free 
form data (without leading zeroes) and convert it using a byte-by-byte 
move from the input field into a receiving field where I right justify 
it myself and fill leading zeroes, thereby making it numeric.


Jim Phillips                            Manager of Information Systems
E-Mail: [log in to unmask]      Therm-O-Link, Inc.
Phone: (330) 527-2124                   P. O. Box 285
  Fax: (330) 527-2123                   Garrettsville, Ohio  44231

ATOM RSS1 RSS2