Я написал программу Cobol Report Writer, но не могу ее скомпилировать - PullRequest
0 голосов
/ 07 ноября 2018

Я написал это после того, как прочитал, что Cobol поддерживает Report Writer, но потом обнаружил, что версия z / OS, которую мы имеем здесь в школе, на самом деле ее не поддерживает.

Мне интересно, есть ли способ легко преобразовать его в базовый Cobol или есть какой-нибудь компилятор, который я мог бы найти и использовать.

Спасибо за любую помощь, которую вы можете предложить.

Ответы [ 2 ]

0 голосов
/ 09 ноября 2018

Семейство IBM COBOL предоставляет Report Writer. Все, что вам нужно, это плагин компилятора. Ищите продукт 5798-DYR COBOL Автор отчетов Прекомпилятор. Работает без проблем. Нет необходимости конвертировать любой код. Запросите бесплатное онлайн руководство пользователя.

0 голосов
/ 09 ноября 2018

увидев REPORT SECTION; да, это может быть легко преобразовано.

Для преобразования необходимо сделать выбор между использованием IBM POSITIONING или стандартного COBOL ADVANCING в операторе WRITE; и END-OF-PAGE исключение или написание собственного кода для перехода на следующую страницу.

Я изменил интервал и внес несколько исправлений в оригинал. Я создал 120 записей для тестовых данных, все случайные числа.

   REPORT SECTION.
   RD  PRODUCT-REPORT 
       PAGE LIMIT 59
       HEADING 1
       FIRST DETAIL 6
       LAST DETAIL 59.

   01  HEAD1 TYPE PH. 
     03  LINE 1.
       05  COLUMN 1  PIC X(5) VALUE 'DATE:'.
       05  COLUMN 8  PIC 9(2) SOURCE WS-CD-MONTH.
       05  COLUMN 10 PIC X VALUE '/'.
       05  COLUMN 11 PIC 9(2) SOURCE WS-CD-DAY.
       05  COLUMN 13 PIC X VALUE '/'.
       05  COLUMN 14 PIC 9(2) SOURCE WS-CD-YEAR.
       05  COLUMN 33 PIC X(19) VALUE 'MASTER PRODUCT LIST'.
       05  COLUMN 72 PIC X(5) VALUE 'PAGE:'.
       05  COLUMN 77  PIC ZZ9 SOURCE PAGE-COUNTER.

     03  LINE 2.
       05  COLUMN 1  PIC X(5) VALUE 'TIME:'.
       05  COLUMN 9  PIC 9(2) SOURCE WS-CD-HOURS.
       05  COLUMN 11 PIC X VALUE ':'.
       05  COLUMN 12 PIC 9(2) SOURCE WS-CD-MINUTES.
       05  COLUMN 72 PIC X(8) VALUE 'PRODLIST'.

     03  LINE 4.
       05  COLUMN 1  PIC X(5) VALUE 'CODE:'.
       05  COLUMN 8  PIC X(5) VALUE 'TYPE:'.
       05  COLUMN 18 PIC X(12) VALUE 'DESCRIPTION:'.
       05  COLUMN 66 PIC X(6) VALUE 'PRICE:'.

     03  LINE 5.
       05 COLUMN 1 PIC X(80) VALUE ALL '='.

   01  PRODLINE TYPE DE. 
     03 LINE PLUS 1.
       05 COLUMN 1  PIC X(5) SOURCE PRODCODE.
       05 COLUMN 8  PIC X(8) SOURCE PRODTYPE.
       05 COLUMN 18 PIC X(32) SOURCE PRODDESC.
       05 COLUMN 66 PIC $ZZZ,ZZZ,ZZ9 SOURCE PRODCOST.

Запустил программу и получил этот частичный вывод.

DATE:  11/08/18                 MASTER PRODUCT LIST                    PAGE:  1 
TIME:   15:54                                                          PRODLIST 

CODE:  TYPE:     DESCRIPTION:                                    PRICE:         
================================================================================
47638  54784935  48116892                                        $  1,461,160   
26450  06251370  81421270                                        $  7,765,877   
...