Cobol Foro

Cobol Foro (https://www.cobolforo.es/index.php)
-   RM/COBOL (https://www.cobolforo.es/forumdisplay.php?f=16)
-   -   [Compilador] Libreria Coblib.exe no funciona en RMC11 (https://www.cobolforo.es/showthread.php?t=820)

FerNav 13 de marzo de 2018 16:32

Libreria Coblib.exe no funciona en RMC11
 
Hola amigos Coboleros, estoy tratando de migrar de RM Cobol 5.3 de DOS a RM Cobol 11 para windows y me encuentro con el problema de que no tengo la posibilidad de utilizar la libreria COBLIB.EXE (colocada en el runcobol con la opcion L=coblib.exe, donde realizo llamadas a &FINDFIL para buscar archivos mensuales indexados con determinado filtro y luego ir recorriendolos abriendo y cerrando cada uno.
Ejemplo:
Código COBOL:
  1.             STRING  "C:\SISTEMA\ARCHIVOS\TAPA*.F01"
  2.                   DELIMITED SIZE  INTO FIND2.
  3.  
  4.            INITIALIZE FINDST.
  5.            CALL "&FINDFIL" USING FIND-ARGS.
  6.            PERFORM UNTIL FINDST NOT = ZEROES
  7.                INITIALIZE ARCTAPA-01
  8.               STRING FIND3  DELIMITED " "  INTO ARCTAPA-01 END-STRING
  9.               OPEN INPUT ADTAPA-01
  10.               ......
  11.               CLOSE ADTAPA-01  
  12.              IF FINDST = ZEROES CALL "&FINDFIL" USING FIND-ARGS END-IF        
  13.            END-PERFORM.  
  14.            CANCEL "&FINDFIL".
Esto realiza una lista de archivos mensuales tapa1801.f01 luego tapa1802.f01 y tapa1803.f01 (año y mes) entro a cada archivo y saco lo que necesito de cada uno, todos con la misma estructura.
Con este nuevo cobol no lo puedo utilizar mas, no me reconoce la libreria externa. Tal vez alguno de uds. tuvo el mismo problema o realiza lo mismo de otra forma.
Agradeceria su ayuda enormemente.
Perdón si realicé mal el post, es la 1er vez que publico algo
Muchas gracias

JCantero 14 de marzo de 2018 17:20

Realiza un call system para hacer un dir y tener los ficheros deseados en un fichero line sequential. Lo abres y cada linea es un fichero.


Código COBOL:
  1. 01 fichero pic x(80).
  2. 01 comando pic x(200).
  3.  
  4. initialize comando
  5. accept fichero from time
  6. move '.tmp' to fichero(9:)
  7.  
  8. string "cmd/c dir /b c:\SISTEMA\ARCHIVOS\TAPA*.F01 >"  delimited by size
  9.           fichero delimited by size into comando
  10. call "system" using comando.

En el fichero temporal fichero tienes el resultado.


La franja horaria es GMT +2. Ahora son las 14:45.

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