Ver Mensaje Individual
  #2
Antiguo 3 de septiembre de 2018, 17:07
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

Traspaso fichero sef04x a sef04 con diferentes claves y datos.

Código COBOL:
  1.            select sef04x assign to random, nombre-sef04x
  2.                   organization indexed
  3.                   access mode dynamic
  4.                   record key is sef04x-clave
  5.                   alternate record key is sef04x-documento
  6.                                           with duplicates
  7.                   alternate record key is sef04x-usuario with duplicates
  8.                   alternate record key is sef04x-fecha with duplicates
  9.                   file status is fs-sef04x.
  10.  
  11.            select sef04 assign to random, nombre-sef04
  12.                   organization indexed
  13.                   access mode dynamic
  14.                   record key is sef04-clave
  15.                   alternate record key is sef04-documento
  16.                                           with duplicates
  17.                   alternate record key is sef04-usuario with duplicates
  18.                   alternate record key is sef04-fecha with duplicates
  19.                   alternate record key is sef04-exp  with duplicates
  20.                   alternate record key is sef04-futuro  with duplicates
  21.                   file status is fs-sef04.

Código COBOL:
  1.  
  2.       traspasa-fichero.
  3.           open input sef04x
  4.           if fs-sef04x not = '00'
  5.                 move 'sef04x' to f-nombre
  6.                 move fs-sef04 to f-error
  7.                 move 'abrir ' to f-que
  8.                 perform sacar-error
  9.                 go acabamos
  10.           end-if.
  11.           perform open-o-sef04
  12.           perform close-sef04
  13.           perform open-io-sef04
  14.           if fs-sef04 not = '00'
  15.                 move 'sef04' to f-nombre
  16.                 move fs-sef04 to f-error
  17.                 move 'abrir ' to f-que
  18.                 perform sacar-error
  19.                 go acabamos
  20.           end-if
  21.           initialize reg-sef04x
  22.           start sef04x key >= sef04x-clave end-start
  23.            read sef04x next record end-read
  24.            perform until fin-sef04x
  25.             move reg-sef04x to reg-sef04
  26.     **** mover todos los campos de la fd
  27.             initialize sef04-exp sef04-futuro
  28.             write reg-sef04 end-write
  29.             read sef04x next record end-read
  30.            end-perform.
  31.            close sef04x.
  32.            close sef04.
  33.  
JCantero is offline   Responder Con Cita