Cobol Foro
Navegación en el Foro
Retroceder   Cobol Foro Entornos de desarrollo y compiladores Cobol GnuCOBOL (OpenCOBOL)
GnuCOBOL (OpenCOBOL) El compilador gratuito y Open Source cada vez más popular.
 
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Compilador] IBM COBOL for Linux - Error al compilar dariodr Más entornos y compiladores COBOL 5 29 de enero de 2023 03:02
[Duda] Ayuda con ejercicio de Cobol abi4997 COBOL - General 4 28 de octubre de 2022 18:46
[Compilador] Error al compilar con Winspool.lib fastpho PowerCOBOL (ActiveX, v4 - v11) 4 24 de agosto de 2022 16:40
[Sintaxis] Error al compilar open Cobol Pabloegues PowerCOBOL (ActiveX, v4 - v11) 1 8 de julio de 2021 17:27
[Compilador] Error al compilar con claves alternativas diego_1970 RM/COBOL 1 17 de junio de 2016 08:31

Respuesta
 
Herramientas

  #11
Antiguo 30 de octubre de 2022, 17:53
Josber
Moderador Global
Activista del Foro: Activista del Foro - Issue reason: Por aportar manuales y enriquecer  Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos 
Última Actividad 20.09.2026 12:17
Posts Posts: 883
Likes enviados Enviados: 418
Likes recibidos Recibidos: 492

@vortal, te está diciendo que esas variables, (BORRAR-PAN, P-UND-TRANS, etc), no existen, tienes que definirlas en la WORKING correspondiente

Un salu2.-
Josber is offline   Responder Con Cita
  #12
Antiguo 30 de octubre de 2022, 19:03
vortal
Forero Junior
Última Actividad 31.10.2022 02:11
Posts Posts: 7

@JCantero @Josber Bueno despues de un rato ya el .cbl se pudo compilar pero no funciona bien el exe. no se si en la parte de WORKINGlo hice bien. Disculpa si molesto mucho pero es que soy muy nuevo en cobol y no lo entiendo mucho la verdad

Código COBOL:
  1. IDENTIFICATION DIVISION.
  2.         PROGRAM-ID. AGENCIA-DE-TOURS.
  3.         ENVIRONMENT DIVISION.
  4.         INPUT-OUTPUT SECTION.
  5.        
  6.        FILE-CONTROL.
  7.      *>  *SELECT DE UNIDAD DE TRANSPORTE  
  8.        SELECT UNIDAD-TRANSPORTE
  9.          ASSIGN TO "TRANSPT.DAT"
  10.          ORGANIZATION IS INDEXED
  11.          ACCESS MODE IS DYNAMIC
  12.          RECORD KEY IS UNIDADTRANSPT-ID
  13.          FILE STATUS IS ESTUNDTRAN.
  14.  
  15.       * SELECT DE TOURS
  16.        SELECT TOURS
  17.          ASSIGN TO "TOURS.DAT"
  18.          ORGANIZATION IS INDEXED
  19.          ACCESS MODE IS DYNAMIC
  20.          RECORD KEY IS TOURS-ID
  21.          FILE STATUS IS ESTTOURS.
  22.  
  23.       * SELECT DE TOURS-ORGANIZADOS
  24.        SELECT TORGN
  25.        ASSIGN TO "TORGN.DAT"
  26.        ORGANIZATION IS INDEXED
  27.        ACCESS MODE IS DYNAMIC
  28.        RECORD KEY IS TORGN-ID
  29.        FILE STATUS IS ESTTORGN.
  30.  
  31.       * SELECT DE TURISTAS
  32.        SELECT TURISTAS
  33.        ASSIGN TO "TURISTA.DAT"
  34.        ORGANIZATION IS INDEXED
  35.        ACCESS MODE IS DYNAMIC
  36.        RECORD KEY IS TURISTAS-ID
  37.        FILE STATUS IS ESTTURISTAS.
  38.  
  39.       * SELECT DE TURISTAS-DE-UN-
  40.      * TOURS
  41.        SELECT TURISTASTOURS
  42.        ASSIGN TO "TTOURS.DAT"
  43.        ORGANIZATION IS INDEXED
  44.        ACCESS MODE IS DYNAMIC
  45.        RECORD KEY IS TTOURS-ID
  46.        FILE STATUS IS ESTTURISTDTOURS.
  47.  
  48.        DATA DIVISION.
  49.        FILE SECTION.
  50.  
  51.        FD UNIDAD-TRANSPORTE
  52.             LABEL RECORD IS STANDARD
  53.             DATA RECORD IS REGISTRO-UND-TRANSPORTE.
  54.  
  55.        01 REGISTRO-UND-TRANSPORTE.
  56.        02 UNIDADTRANSPT-ID.
  57.        03 NO-PLACA-UND PIC X(10).
  58.        02 MARCA PIC X(20).
  59.        02 NOPUESTOS PIC 99.
  60.        02 NOMBREDUENO PIC X(30).
  61.        02 CEDULADUENO PIC X(10).
  62.        02 DIRECCIONHAB PIC X(30).
  63.        02 TLFHABITACION PIC X(10).
  64.        02 TLFCELULAR PIC X(10).
  65.        02 ST-UND-TRANS-DIS-S-NODIS-N PIC X(1).
  66.  
  67.        FD TOURS
  68.        LABEL RECORD IS STANDARD
  69.        DATA RECORD IS REGISTRO-TOURS.
  70.        01 REGISTRO-TOURS.
  71.        02 TOURS-ID.
  72.        03 REGION PIC X(10).
  73.        02 NUM-DIAS PIC 9(3).
  74.        02 COSTOXPERSONA PIC 9(7)V99.
  75.  
  76.        FD TORGN
  77.        LABEL RECORD IS STANDARD
  78.        DATA RECORD IS   REGISTRO-TORGN.
  79.        01 REGISTRO-TORGN.
  80.        02 TORGN-ID.
  81.        03 J-REGION PIC X(10).
  82.        03 F-SALIDA.
  83.        04 A-SALIDA PIC 9(4).
  84.        04 M-SALIDA PIC 9(2).
  85.        04 D-SALIDA PIC 9(2).
  86.        02 PLACA-UND-ASIGND PIC X(10).
  87.        02 NUM-TURISTAS PIC 9(2).
  88.  
  89.        FD TURISTAS
  90.        LABEL RECORD IS STANDARD
  91.        DATA RECORD IS TURISTAS.
  92.        01 REGISTRO-TURISTAS.
  93.        02 TURISTAS-ID.
  94.        03 CED-PASPT PIC X(10).
  95.        02 NOMBRE PIC X(20).
  96.        02 APELLIDO PIC X(10).
  97.        02 DIRECCION PIC X(30).
  98.        02 TLFHABITACION PIC X(10).
  99.        02 TLFCELULAR PIC X(10).
  100.  
  101.        FD TURISTASTOURS
  102.        LABEL RECORD IS STANDARD
  103.        DATA RECORD IS REGISTRO-TTOURS.
  104.        01 REGISTRO-TTOURS.
  105.        02 TTOURS-ID.
  106.            03 TTREGION PIC X(10).
  107.             03 TTF-SALIDA.
  108.                   04 TTA-SALIDA PIC 9(4).
  109.                      04 TTM-SALIDA PIC 9(2).
  110.                      04 TTD-SALIDA PIC 9(2).
  111.               03 TTCED-PASPT PIC X(10).
  112.        02 ST-TTOURS-PART-1-RETIRADO-2   PIC 9(1).
  113.  
  114.        WORKING-STORAGE SECTION.
  115.  
  116.        77 ESTUNDTRAN PIC X(2).
  117.        77 ESTTOURS PIC X(2).
  118.        77 ESTTORGN PIC X(2).
  119.        77 ESTTURISTAS PIC X(2).
  120.        77 ESTTURISTDTOURS PIC X(2).
  121.        01 BORRAR-PAN PIC X(1).
  122.        01 P-UND-TRANS PIC X(1).
  123.        01 P-UNDTRANS2 PIC X(1).
  124.        
  125.        01 VARITRAB.
  126.        02 OPMENU PIC 99 VALUE 0.
  127.        02 SW-SALIDA PIC 9 VALUE 0.
  128.        02 SW-EXISTE PIC 9 VALUE 0.
  129.  
  130.        SCREEN SECTION.
  131.        01 MENUINICIO.
  132.        02 LINE 5 VALUE " 01 REGISTRO DE UNIDADES".
  133.        02 LINE 6 VALUE " 02 REGISTRO DE TOURS".
  134.        02 LINE 7 VALUE " 03 REGISTRO DE TOURS ORGANIZADOS ".
  135.        02 LINE 8 VALUE " 04 REGISTRO DE TURISTAS".
  136.        02 LINE 9 VALUE " 05 REGISTRO DE TURISTAS DE UN TOURS".
  137.        02 LINE 10 VALUE " 06 CONSULTA UNIDADES DE TRANSPT DISPONIBLES".
  138.            02 LINE 11 VALUE " 07 CONSULTA TOURS PARA FECHA DE SALIDA".
  139.            02 LINE 12 VALUE " 08 CONSULTA TURISTAS PARTICIPANTES TOURS".
  140.            02 LINE 13 VALUE " 09 CONSULTA TOURS EFECTUADOS EN UN MES".
  141.            02 LINE 20 VALUE "   SELECCIONE LA OPCION DESEADA".
  142.            02 LINE 20 PIC ZZ USING OPMENU.
  143.  
  144.        PROCEDURE DIVISION.
  145.  
  146.        INICIO.
  147.            INITIALIZE VARITRAB.
  148.            VERIFICA-ARCHIVOS.
  149.            OPEN INPUT UNIDAD-TRANSPORTE
  150.            IF ESTUNDTRAN = "35"
  151.            OPEN OUTPUT UNIDAD-TRANSPORTE.
  152.            CLOSE UNIDAD-TRANSPORTE.
  153.  
  154.        MENUPPAL1.
  155.            MOVE 0 TO OPMENU.
  156.  
  157.        MENUPPAL2.
  158.            DISPLAY BORRAR-PAN.
  159.            DISPLAY MENUINICIO.
  160.            ACCEPT MENUINICIO.
  161.            EVALUATE OPMENU
  162.            WHEN  1  PERFORM  REGIS-UND1 THRU
  163.            F-REGIS-UND UNTIL
  164.            SW-SALIDA = 2
  165.            WHEN 99  GO TO FIN
  166.            END-EVALUATE.
  167.            GO TO MENUPPAL1.
  168.      *REGISTRO DE UNIDADES DISPONIBLES
  169.  
  170.         REGIS-UND1.
  171.            INITIALIZE REGISTRO-UND-TRANSPORTE.
  172.  
  173.         REGIS-UND2.
  174.            MOVE 0 TO SW-SALIDA
  175.            DISPLAY BORRAR-PAN.
  176.            MOVE SPACES TO P-UND-TRANS.
  177.            DISPLAY P-UND-TRANS.
  178.            ACCEPT P-UND-TRANS.
  179.            IF P-UND-TRANS = SPACES
  180.            MOVE 2 TO SW-SALIDA
  181.            GO TO F-REGIS-UND
  182.            END-IF.
  183.  
  184.        REGIS-UND3.
  185.            OPEN INPUT UNIDAD-TRANSPORTE.
  186.            READ UNIDAD-TRANSPORTE
  187.            INVALID KEY
  188.            MOVE 1 TO SW-EXISTE
  189.            GO TO REGIS-UND4
  190.            NOT INVALID KEY
  191.            MOVE 2 TO SW-EXISTE
  192.            DISPLAY P-UNDTRANS2.
  193.  
  194.        REGIS-UND4.
  195.            CLOSE UNIDAD-TRANSPORTE.
  196.  
  197.        REGIS-UND5.
  198.            ACCEPT P-UNDTRANS2.
  199.        REGIS-UND6.
  200.            OPEN I-O UNIDAD-TRANSPORTE
  201.            EVALUATE SW-EXISTE
  202.            WHEN 1
  203.            MOVE "S" TO
  204.            ST-UND-TRANS-DIS-S-NODIS-N
  205.            WRITE          REGISTRO-UND-TRANSPORTE
  206.            END-WRITE
  207.  
  208.                WHEN 2
  209.            REWRITE          REGISTRO-UND-TRANSPORTE
  210.            END-REWRITE
  211.            END-EVALUATE.
  212.            CLOSE UNIDAD-TRANSPORTE.
  213.            MOVE 0 TO SW-EXISTE.
  214.            REGIS-UND7.
  215.            GO TO REGIS-UND1.
  216.            F-REGIS-UND.
  217.  
  218.        FIN.
  219.            STOP RUN.
vortal is offline   Responder Con Cita
  #13
Antiguo 30 de octubre de 2022, 20:24
JCantero
El Foro es mi casa
Activista del Foro: Activista del Foro - Issue reason: Por participación activa Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos de parte de los Foreros 
Última Actividad 02.09.2026 00:15
Posts Posts: 442
Likes enviados Enviados: 167
Likes recibidos Recibidos: 269

@vortal, la ultima version que has puesto funciona mas o menos.

Yo la he puesto en Open Cobol IDE y al darle a intro sale el menu. Aunque en un linea.

En la logica del program haces
Código COBOL:
  1. DISPLAY P-UND-TRANS.
pero P-UNID-TRANS esta en blanco, debes darle valor hacer display de una etiqueta, de esta forma
Código COBOL:
  1. display " INTRODUCIR UNIDADES DE TRANS"

Te pongo aqui un link del manual. Revisa en la pagina 8-4 que hay un ejemplo para que puedas aprender.

https://www.google.com/url?sa=t&sour...-vXKgLQ7o1a_kQ

- - - Updated - - -

El programa que estas intentando hacer parece muy complicado para el nivel que tienes.

Debes empezar con cosas mas faciles. Como hacer varias preguntas por pantalla, aceptar la respuesta y hacer algun calculo o montaje de string.

Cuando controles la pantalla ya podrias meterte a realizar lo que que has puesto mas arriba.
JCantero is offline   Responder Con Cita
  #14
Antiguo 22 de noviembre de 2022, 15:05
Paco_Diaz
Forero
Última Actividad 09.11.2024 09:15
Posts Posts: 56
Likes enviados Enviados: 11
Likes recibidos Recibidos: 14

Buenas.

@vortal, He descargado tu fuente, (1.cbl) porque el primero (agencia.cbl tambien lo descargue y es aun peor, se han cambiado margenes, etc.),lo he abierto con OpenCobolIDE, y los errores que yo veo son estos:

1.- LABEL RECORD Y DATA RECORD.
2.- REGISTRO-TURISTAS lo tienes definido 2 veces, en la linea 80 y en la 93.
3.- La SCREENSECTION, la tienes erronea, el 01 va en el margen A y el nombre en el margen B
4.- Todas las definiciones que tienes que se pasan de la columna 79, tienes que continuar en la linea siguiente poniendo un guion (-) en la columna 7 y sigues escribiendo.
5.- BORRAR-PAN no esta definida en ningun lado
6.- La linea 202 esta partida y continua en la 203
7.- P-UNDTRANS2 no esta definida
8.- NEXT SENTENCE es otra sentencia antigua

Por ahora he visto esos, no se si al descargarlo y abrirlo se ha podido "desvirtualizar" el codigo, y realmente no es como me sale, pero asi es como lo veo y esos son los errores que he detectado.

Espero haber podido ayudarte en algo

Un saludo. Paco.
Paco_Diaz is offline   Responder Con Cita
Respuesta



Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado

Saltar a Foro


La franja horaria es GMT +2. Ahora son las 15:54.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.