Ver Mensaje Individual
  #2
Antiguo 5 de agosto de 2021, 12:04
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 27.09.2026 07:41
Posts Posts: 442
Likes enviados Enviados: 167
Likes recibidos Recibidos: 269

El problema lo tienes en que debes de poner una variable al describir el fichero en vez de un literal. Y rellenar la variable en tiempo de ejecución con el contenido deseado.

Cambia esto SELECT PreviRed ASSIGN DISK "C:\INFORMES\WS-PREVIRED" por WS-PREVIRED Y rellena el nombre de fichero deseado en esa variable antes de hacer el open.

O prueba esto..........

En vez de poner esto:

Código COBOL:
  1. SELECT PreviRed ASSIGN DISK "C:\INFORMES\WS-PREVIRED"
  2. ORGANIZATION IS LINE SEQUENTIAL
  3. FILE STATUS FILE-STATUS.

Pon esto:

Código COBOL:
  1. SELECT PreviRed ASSIGN DISK WS-PREVIRED
  2. ORGANIZATION IS LINE SEQUENTIAL
  3. FILE STATUS FILE-STATUS.


Y antes de hacer el OPEN, rellena el nombre de fichero. Por ejemplo:

Código COBOL:
  1. WORKING-STORAGE SECTION.
  2. 01 fecha pic x(6).
  3. 01 WS-PREVIRED pic x(80).
  4.  
  5. *
  6. *
  7. *
  8.  
  9. PROCEDURE DIVISION.
  10.  
  11. accept fecha from time.
  12.  
  13. initialize  WS-PREVIRED.
  14.  
  15. string "C:\INFORMES"  delimited by size
  16.             fecha delimited by size into WS-PREVIRED
  17.  
  18.  
  19.  

O rellenar el nombre del fichero con algo parecido a esto:

Código COBOL:
  1. string "C:\INFORMES\fichero-"  delimited by size
  2.             fecha(1:2) '-' fecha (3:2) '-'  fecha (5:2) delimited by size into WS-PREVIRED
JCantero is offline   Responder Con Cita