Cobol Foro

Cobol Foro (https://www.cobolforo.es/index.php)
-   Más entornos y compiladores COBOL (https://www.cobolforo.es/forumdisplay.php?f=31)
-   -   [Compilador] IBM COBOL for Linux - Error al compilar (https://www.cobolforo.es/showthread.php?t=1600)

dariodr 26 de enero de 2023 05:30

IBM COBOL for Linux - Error al compilar
 
Buenas coboleros tengo este codigo simple de archivos, lo he compilado con: GNUCOBOL y funciona bien, lo he compilado con RMCOBOL y funciona bien, pero a la hora de compilar con IBM COBOL me aparece este error no se que significa:
Código:

IBM COBOL for Linux 1.1.0 compile started
cob3: ../../../../wscobolpp/wds/cblle/mrm/qlnslkup.c:489: Semantic_lookupLocalByType: La declaración `isNamedEntryAndDataNameOrSpecialRegisterOrTypeOrScreen(tempDictHdl) == 1' no se cumple.

cob2: cob3 terminated with signal 6 (Abortado).

Les pego el codigo

Código COBOL:
  1.        IDENTIFICATION DIVISION.
  2.        PROGRAM-ID. AGENDA.
  3.      *
  4.        ENVIRONMENT DIVISION.
  5.        INPUT-OUTPUT SECTION.
  6.        FILE-CONTROL.
  7.            SELECT AGENDA ASSIGN TO "agenda.dat"
  8.                ORGANIZATION IS SEQUENTIAL
  9.                ACCESS MODE IS SEQUENTIAL.
  10.      *
  11.        DATA DIVISION.
  12.        FILE SECTION.
  13.        FD  AGENDA.
  14.        01  PERSONA.
  15.            03 NOMBRE      PIC X(39).
  16.            03 EDAD        PIC 99.
  17.            03 DIRECCION   PIC X(40).
  18.            03 TELEFONO    PIC 9(7).
  19.      *
  20.        WORKING-STORAGE SECTION.
  21.        01  I    PIC 999.
  22.      *
  23.        PROCEDURE DIVISION.
  24.        PROCESO.
  25.            OPEN OUTPUT AGENDA.
  26.  
  27.            DISPLAY "NOMBRE:" NO ADVANCING.
  28.            ACCEPT NOMBRE.
  29.            DISPLAY "EDAD: " NO ADVANCING.
  30.            ACCEPT EDAD.
  31.            DISPLAY "DIRECCION: "NO ADVANCING.
  32.            ACCEPT DIRECCION.
  33.            DISPLAY "TELEFONO: " NO ADVANCING.
  34.            ACCEPT TELEFONO.
  35.  
  36.            WRITE PERSONA.
  37.  
  38.            CLOSE AGENDA.
  39.  
  40.            GOBACK.
  41.  

Kuk 26 de enero de 2023 08:45

@dariodr, en esta parte de código:

Código COBOL:
  1.      SELECT AGENDA ASSIGN TO "agenda.dat"

Cámbialo por

Código COBOL:
  1.      SELECT AGENDA ASSIGN TO AGENDA

Y a ver si compila.

dariodr 26 de enero de 2023 12:15

Nada, aun aparece ese error. Alguien sabe de que se trata.
Salu2.

JCantero 26 de enero de 2023 19:28

Eso tiene pinta de algun problema del compilador. Debe de faltar algo.

Has probado a ejecutar el compilador solo ? ( sin poner programa para compilar)

Y ver que mensaje da.......

JCantero 26 de enero de 2023 19:42

Echale tambien un vistazo a ese link.

Opciones de enlace y compilación de la aplicación IBM COBOL for AIX

Como siempre, IBM poniendo las cosas faciles los jodios.

dariodr 29 de enero de 2023 03:02

Resuelto, solo era colocar RECORD MODE IS F, despues del FD.
Siempre los de IBM complicando las cosas.

Código COBOL:
  1. IDENTIFICATION DIVISION.
  2.        PROGRAM-ID. AGENDA.
  3.      *
  4.        ENVIRONMENT DIVISION.
  5.        INPUT-OUTPUT SECTION.
  6.        FILE-CONTROL.
  7.            SELECT AGENDA ASSIGN TO "agenda.dat"
  8.                ORGANIZATION IS SEQUENTIAL
  9.                ACCESS MODE IS SEQUENTIAL.
  10.      *
  11.        DATA DIVISION.
  12.        FILE SECTION.
  13.        FD  AGENDA
  14.               RECORDING MODE IS F.  (Faltaba esta clausula)
  15.        01  PERSONA.
  16.            03 NOMBRE      PIC X(39).
  17.            03 EDAD        PIC 99.
  18.            03 DIRECCION   PIC X(40).
  19.            03 TELEFONO    PIC 9(7).
  20.      *
  21.        WORKING-STORAGE SECTION.
  22.        01  I    PIC 999.
  23.      *
  24.        PROCEDURE DIVISION.
  25.        PROCESO.
  26.            OPEN OUTPUT AGENDA.
  27.  
  28.            DISPLAY "NOMBRE:" NO ADVANCING.
  29.            ACCEPT NOMBRE.
  30.            DISPLAY "EDAD: " NO ADVANCING.
  31.            ACCEPT EDAD.
  32.            DISPLAY "DIRECCION: "NO ADVANCING.
  33.            ACCEPT DIRECCION.
  34.            DISPLAY "TELEFONO: " NO ADVANCING.
  35.            ACCEPT TELEFONO.
  36.  
  37.            WRITE PERSONA.
  38.  
  39.            CLOSE AGENDA.
  40.  
  41.            GOBACK.


La franja horaria es GMT +2. Ahora son las 13:03.

Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.