KCORAL/NCORAL/CANOAID言語
コンバージョン・サービス

KCORAL/NCORAL/CANOAID言語をCOBOLに変換します。(System−i版はWeb化対応も可能です)

CORAL言語はオンライン処理やバッチ処理を簡便に記述できる簡易言語で、日立の汎用機ユーザーでよく使われています。

CANOAIDはKCORALの文法をベースにリポジトリ機能やCASEツール機能付加したキャノンソフトウェア鰍フ言語で、日立やIBMの汎用機ユーザー向けに提供されています。(CANOAIDの汎用機版は2010年で保守打切りになっています)

当社ツールではCORAL/CANOAIDのシンタックス(文法)からCOBOL言語プログラムを自動生成することができます。

現在はSystem−i(AS/400[IBMi])だけでなく、IMS DB/DC対応版もあります。


以下にCORALをCOBOL言語に変換した例を掲載します。

このページのトップへ戻る

プログラム例

変換前 CORALソース(一部割愛)

      
      IGMNR02                                MPPR          
      DGMNM02         IGMNM02
      DGMNM04         OGMNM04
      DWRKDV020       UWRKDR020
      DGMNCTS00       UCTS
      *









      *REMARKS*************************************************
      *    1.SYSTEM   : トウロク システム                             *
      *    2.FUNCTION : ウリアゲ トウロク                            *
      *    3.ETC      :                                       *
      *********************************************************
           -EJECT-
           -NOGEN-
      *   ----------------------------------------
      *
      *               モジユ-ル  テイギシヨ
      *
      *   ----------------------------------------
      *
      T         メインコントロ-ル             ...  #00
      *
      T         ニユリヨクコウモクチエツク         ...  #10
      *
      T         トウロクDBツイカ         ...  #11
      *
      T         ガメンヒヨウジシヨリ          ...  #12
      *
           -EJECT-
      *   ----------------------------------------
      *
      *               リヤクシヨウ  テイギシヨ
      *
      *   ----------------------------------------
      *
      T         MIB                   ...  GMNM02I
      *
      T         MOB                   ...  GMNM02O
      *
      T         PFK                   ...  GMNM02I-PFK
           -EJECT-
      *        --------------------------------
      *
      *                 ワ-ク  エリア  テイギ
      *
      *        --------------------------------
               @GMNPR001  オ  テンカイ  スル.
               @GMNPR002  オ  テンカイ  スル.
               @GMNPR003  オ  テンカイ  スル.
               @GMNPR42D  オ  テンカイ  スル.
      *
      JWRKDR020-RD  SELECT  *
      -             FROM    WRKDR020
           -EJECT-
      ******************************************************************
      *                 メイン コントロ-ル                                     *
      ******************************************************************











       #00.
       #00-10.
               GMNM02  オ  ヨム.
                   オワリ  ナラ  #00-90  ヘ  イク.
      *
               GMNM02  オ  クリア  スル.
               SPACE    --->    ERRMSG-NO:GMNM02O
                                ERRMSG-XO:GMNM02O.
               'GMNM02' --->    NOW-MAP:CTS.
               'GMNT02' --->    NOW-TC:CTS.
               'GMNR02' --->    NOW-PGM:CTS.
               GMNPR003  オ  シヨキカ  スル.
               '00'     --->    ERR-CD:GMNPR003.
      *
               @GMNPR501  オ  テンカイ  スル.






       #00-90.
               シユウリヨウ.
           -EJECT-
           

      ******************************************************************
      *                 ニユリヨクコウモク チエツク                                 *
      ******************************************************************
       #10.
       #10-10.
               モシ  YORU-FLGI:GMNM02I = 'Y' OR 'N'
               デナケレバ
                   #10-20  オ  シヨリ  スル.
               #10-90  ヘ  イク.
               
               
               
                              
      *
       #10-20.
               @GMNPR101(YORU-FLGA:GMNM02O,11,39,'07')
               
                            オ  テンカイ  スル.
       #10-90.
               #10  オ  デル.
           -EJECT-


      ******************************************************************
      *                 トウロクDB ツイカ                                     *
      ******************************************************************
       #11.
       #11-10.
               モシ  ERR-CD:GMNPR003 = '00'  ナラ
                   #11-20  オ  シヨリ  スル.
               #11-90  ヘ  イク.
               
               
               
       #11-20.


      
    

このページのトップへ戻る

変換後 COBOLソース(一部割愛)

      
       IDENTIFICATION                            DIVISION.
       PROGRAM-ID.                               GMNR02.
       ENVIRONMENT                               DIVISION.
       INPUT-OUTPUT                              SECTION.
       FILE-CONTROL.
       DATA                                      DIVISION.
       FILE                                      SECTION.
       WORKING-STORAGE                           SECTION.
           COPY      GMNCTS00C.
           COPY      GMNM04I.
           COPY      GMNM04O.
              中略
           COPY      WRKDV020       ・・・・・
           COPY      WRKDV020I      ・・・・・
      *
      *REMARKS*************************************************
      *    1.SYSTEM   : トウロク システム                             *
      *    2.FUNCTION : ウリアゲ トウロク                            *
      *    3.ETC      :                                       *
      *********************************************************
           EJECT.
      *    -NOGEN-
      *   ----------------------------------------
      *
      *               モジユ-ル  テイギシヨ
      *
      *   ----------------------------------------
      *
      *T         メインコントロ-ル             ...  #00
      *
      *T         ニユリヨクコウモクチエツク         ...  #10
      *
      *T         トウロクDBツイカ         ...  #11
      *
      *T         ガメンヒヨウジシヨリ          ...  #12
      *
           EJECT.
      *   ----------------------------------------
      *
      *               リヤクシヨウ  テイギシヨ
      *
      *   ----------------------------------------
      *
      *T         MIB                   ...  GMNM02I
      *
      *T         MOB                   ...  GMNM02O
      *
      *T         PFK                   ...  GMNM02I-PFK
           EJECT.
      *        --------------------------------
      *
      *                 ワ-ク  エリア  テイギ
      *
      *        --------------------------------
           COPY      'GMNPR001'.
           COPY      'GMNPR002'.
           COPY      'GMNPR003'.
           COPY      'GMNPR42D'.
      *
      *JWRKDR020-RD  SELECT  * FROM    WRKDR020
           EJECT.
           
      ******************************************************************
      *                 メイン コントロ-ル                                     *
      ******************************************************************
       LINKAGE                                   SECTION.
           COPY      CPYLINK.
       PROCEDURE                                 DIVISION
           USING LINKAGE-AREA.
       MAIN-RTN SECTION.
       MAIN-RTN-START.
           PERFORM INIT-RTN
           PERFORM L00
           PERFORM FINAL-RTN.
       MAIN-RTN-EXT.
           EXIT.
       L00 SECTION.
       L00-10.
           CALL DSPAPI            USING LINKAGE-AREA
                                        DSPAPI-CTLI
                                        GMNM02-INF
                                        GMNM02I
              中略

           MOVE GMNM02-OUTCURS-LIN   TO WK-CURS-LIN
           MOVE GMNM02-OUTCURS-COL   TO WK-CURS-COL

              中略

           INITIALIZE GMNPR003
           MOVE '00'                 TO ERR-CD OF GMNPR003.
      *
           COPY      'GMNPR501'.

              中略

      *
       L00-90.
           PERFORM FINAL-RTN
              中略
           EJECT.

      ******************************************************************
      *                 ニユリヨクコウモク チエツク                                 *
      ******************************************************************
       L10 SECTION.
       L10-10.
           IF  GMNM02-YORU-FLG-I = 'Y' OR 'N'
           THEN
               CONTINUE
           ELSE
               PERFORM L10-20
                  THRU L10-20-EXT
           END-IF
           GO  TO  L10-90.
      *
       L10-20.
           COPY      'GMNPR101'      ・・・・・
       L10-20-EXT.
           EXIT.
       L10-90.
           GO  TO  L10-EXT.
       L10-EXT.
           EXIT.
           EJECT.
      ******************************************************************
      *                 トウロクDB ツイカ                                     *
      ******************************************************************
       L11 SECTION.
       L11-10.
           IF  ERR-CD OF GMNPR003 = '00'
           THEN
               PERFORM L11-20
                  THRU L11-20-EXT
           END-IF
           GO  TO  L11-90.
       L11-20.

              中略

      *--------------------------------------------
      *  初期処理
      *--------------------------------------------
       INIT-RTN SECTION.
       INIT-RTN-START.

              中略

      *ワークステーションID
           CALL '#JOBNAMEG' USING CD-SCA-TERMINAL.

      * DATE/TIME
           COPY ACDATETIME.

              中略

      *ファイルのオープン

       INIT-RTN-EXT. EXIT.
      *--------------------------------------------
      *  終了処理
      *--------------------------------------------
       FINAL-RTN SECTION.
       FINAL-RTN-START.

              中略

      * 画面出力域=>CTSに退避

              中略

      *ファイルのクローズ

       FINAL-RTN-EXT. EXIT.

      
    

このページのトップへ戻る