Página 1 de 2 1 2 ÚltimoÚltimo
Resultados 1 al 10 de 12

Tema: Leer archivos RM Cobol desde PowerCobol

  1. #1
      Senior
    Avatar de Roger

    Registrado
    febrero de 2015
    Ubicación
    Lima
    Mensajes
    255
    Última visita
    04.02.2021

    Agradecimientos
     
    Recibidos
    82
    Enviados
    27

    Citaciones y menciones
     
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Poder de Reputación
    14

    Predeterminado Leer archivos RM Cobol desde PowerCobol

    Como se lee archivos generados en rmcobol con powercobol un compañero esta migrando su sistema y por el momento necesita trabajar con ambos.

    En el anterior foro (ESCOBOL) lei un post donde tenian esta pregunta lamentablemente nunca lo puse en practica.

    0 Not allowed!

  2. #2
      Administrador
    Avatar de Kuk

    Registrado
    enero de 2015
    Ubicación
    Madrid
    Edad
    37
    Mensajes
    2,088
    Última visita
    Ayer a las 15:47

    Agradecimientos
     
    Recibidos
    908
    Enviados
    784

    Citaciones y menciones
     
    Mentioned
    40 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    12 Post(s)
    Poder de Reputación
    10

    Predeterminado

    @Roger, no estoy seguro, pero los ficheros RM no son RMKF como los de PowerCOBOL? Si es así, se puede leer directamente, como si fueran de PowerCOBOL.

    0 Not allowed!
    ¿Te han ayudado? NO TE OLVIDES de darle al botón
    ¿Quieres dirigirte a alguien en tu post? Notifícale con una mención, tienes 2 opciones:
    1. Haciendo clic en el icono al lado de su nick
    2. Haciendo clic en el botón en el editor y escribiendo su nick.

  3. #3
      Senior
    Avatar de Roger

    Registrado
    febrero de 2015
    Ubicación
    Lima
    Mensajes
    255
    Última visita
    04.02.2021

    Agradecimientos
     
    Recibidos
    82
    Enviados
    27

    Citaciones y menciones
     
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Poder de Reputación
    14

    Predeterminado

    Logre leer los archivos grabados en rmcobol cambiando algunos terminos
    COBOL Código:
    1. FD  MAEPROV LABEL RECORD STANDARD.
    por
    COBOL Código:
    1. FD MAEPROV GLOBAL EXTERNAL LABEL RECORD STANDARD.



    COBOL Código:
    1.  SELECT MAEPROV ASSIGN RANDOM "MAEPROV.DAT"
    2.                   ORGANIZATION INDEXED
    3.                   ACCESS DYNAMIC
    4.                   RECORD KEY KEY-PVD
    5.                   ALTERNATE RECORD AL1-PV DUPLICATES
    6.                   FILE STATUS FILE-STATUS.


    COBOL Código:
    1. SELECT MAEPROV ASSIGN TO "MAEPROV.DAT"
    2.                   ORGANIZATION INDEXED
    3.                   ACCESS DYNAMIC
    4.                   RECORD KEY KEY-PVD
    5.                   ALTERNATE RECORD AL1-PV DUPLICATES
    6.                   FILE STATUS FILE-STATUS.


    algunas consideraciones el archivo en rmcobol no debe contener
    COMP-6 COMP-3.

    pero no puedo grabar-regrabar ni eliminar.

    0 Not allowed!

  4. #4
      Super Moderador
    Avatar de Josber

    Registrado
    febrero de 2015
    Ubicación
    Alicante
    Mensajes
    694
    Última visita
    Hoy a las 14:14

    Agradecimientos
     
    Recibidos
    385
    Enviados
    314

    Citaciones y menciones
     
    Mentioned
    33 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    6 Post(s)
    Poder de Reputación
    35
    Activista del Foro / Point Value: 0 Agradecimientos / Point Value: 0

    Predeterminado

    Pureba a poner en la declaración de la FD la cláusula BTRV.

    COBOL Código:
    1. FD MAEPROV GLOBAL EXTERNAL LABEL RECORD STANDARD BTRV.

    Las clausulas GLOBAL, EXTERNAL , no son obligatorias, pero si no las pones, te tocará declaral los ficheros en cada "subprograma" que definas en en FORM.

    Además, yo pongo también la clausula OPTIONAL, que lo que hace es que si el fichero no existe, lo crea, para evitar errores de STATUS 35.

    Ya nos dirás algo

    Un saludo.-

    0 Not allowed!

  5. #5
      Acabo de llegar...
    A

    Registrado
    febrero de 2015
    Ubicación
    Montevideo
    Edad
    64
    Mensajes
    27
    Última visita
    30.11.2022

    Agradecimientos
     
    Recibidos
    14
    Enviados
    3

    Citaciones y menciones
     
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Poder de Reputación
    0

    Predeterminado

    Hola a todos,

    Realmente los archivos de Rmcobol (versión 0), son leidos y actualizados sin problemas por los programas powercobol.
    Los cambios en la sintaxis son los que mencionan.
    Nosotros además agregamos el LOCK MODE IS AUTOMATIC, para controlar los archivos y los registros lockeados (recomiendo hacer pruebas lockeando con un cobol e intentando acceder desde el otro para ver el comportamiento)
    Con respecto al tema de la versión, el rmcobol 7 por defecto utiliza la versión 2 (ponemos RUN-INDEX-FILES DEFAULT-FILE-VERSION-NUMBER=0 en el archivo de configuración). El tema es que si se crean con versión 2, al abrirlos en Power podés leerlos pero al abrirlos para grabar o regrabar va a dar un error 90)
    Los COMP-6 no existen en Powercobol, y para leerlos se puede hacer una tabla de conversión para leerlos, y obviamente lo mismo para regrabarlos.
    El BTRV no es necesario.

    espero que les sirva.
    armando

    0 Not allowed!

  6. #6
      Senior
    Avatar de Roger

    Registrado
    febrero de 2015
    Ubicación
    Lima
    Mensajes
    255
    Última visita
    04.02.2021

    Agradecimientos
     
    Recibidos
    82
    Enviados
    27

    Citaciones y menciones
     
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Poder de Reputación
    14

    Predeterminado

    Armando
    No logro entenderte,los archivos que estoy manipulando fueron creados por rmcobol v5.20 segun lo que manifiestas son versión 0 los puedos leer mas no grabar ni eliminarme manda un error JMW0005I-U THE ERROR OCCURRED IN THE COBOL ERROR REPORT "INTERNAL ERROR=22939"

    Me informan que los archivos creados por powercobol se pueden leer por rmcobol
    si es asi pasaria la data a power para que se puedan leer, grabar, eliminar por ambas.

    Voy a probar luego les informo como me fue.

    0 Not allowed!

  7. #7
      Administrador
    Avatar de Kuk

    Registrado
    enero de 2015
    Ubicación
    Madrid
    Edad
    37
    Mensajes
    2,088
    Última visita
    Ayer a las 15:47

    Agradecimientos
     
    Recibidos
    908
    Enviados
    784

    Citaciones y menciones
     
    Mentioned
    40 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    12 Post(s)
    Poder de Reputación
    10

    Predeterminado

    @Armando, qué tipo es realmente el COMP-6 de RM ? Lo mismo que en MicroFocus?

    @Roger, a veces, cuando el fichero está en grabación y se queda en un bucle, corte de luz o cualquier historia, los ficheros indexados en Power se quedan afectados también y se puede solo leerlos. Lo que yo suelo hacer es un simple programa que lo que hace es coger en lectura el fichero dañado, y escribirlo en uno nuevo registro por registro (en un bucle claramente). No se tarda nada en hacerlo.

    0 Not allowed!
    ¿Te han ayudado? NO TE OLVIDES de darle al botón
    ¿Quieres dirigirte a alguien en tu post? Notifícale con una mención, tienes 2 opciones:
    1. Haciendo clic en el icono al lado de su nick
    2. Haciendo clic en el botón en el editor y escribiendo su nick.

  8. #8
      Guardián del Foro
    Avatar de Fito

    Registrado
    febrero de 2015
    Ubicación
    Córdoba, Villa María
    Edad
    51
    Mensajes
    350
    Última visita
    Hoy a las 15:21

    Agradecimientos
     
    Recibidos
    184
    Enviados
    186

    Citaciones y menciones
     
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Poder de Reputación
    24
    Agradecimientos / Point Value: 0 Guardián del Foro / Point Value: 0 Activista del Foro / Point Value: 0

    Predeterminado

    Roger:

    Al principio, cuando estaba pasando de rm85 5.20 a power trabajaba con los dos al mismo tiempo.
    Hice los cambios como decis y dicen todos.

    por ejmplo:

    COBOL Código:
    1.     select optional archivo assign to "archivos.dat"
    2.        organization indexed
    3.        acces dynamic
    4.        lock mode is automatic
    5.        record key is archivo-clave
    6.        alternate record key is archivo-clave2 with duplicates
    7.        file status is st-archivo.

    el comp-6 no funciona, pero el comp-3 si, los campos signados necesariamente los dejé comp-3.

    Hay que tener cuidado con la definición de claves alternativas. Para leer un archivo creado en rm con power, el orden de definición tiene que ser en el orden que está en el archivo, no sé si me explico.

    Y un problema que tuve, es que cuando trabajaba con los archivos en power en rm me daba un error de bloqueo. No insvestigué mucho sobre el tema, porque no usé mucho tiempo los dos sistemas. Así que no sé si ese error se puede salvar.

    Saludos...

    0 Not allowed!

  9. #9
      Senior
    Avatar de Roger

    Registrado
    febrero de 2015
    Ubicación
    Lima
    Mensajes
    255
    Última visita
    04.02.2021

    Agradecimientos
     
    Recibidos
    82
    Enviados
    27

    Citaciones y menciones
     
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Poder de Reputación
    14

    Predeterminado

    Gracias por su ayuda amigos del foro

    Hice la prueba lei el archivo rmcobol con un programa en power cobol y lo volvi a grabar en power, reemplaze este archivo en la carpeta de rmcobol.
    Ahora puedo leer, grabar, modificar, eliminar en rmcobol y power
    COBOL Código:
    1. select optional archivo assign to "archivos.dat"
    2.        organization indexed
    3.        acces dynamic
    4.        lock mode is automatic
    5.        record key is archivo-clave
    6.        alternate record key is archivo-clave2 with duplicates
    7.        file status is st-archivo.

    con la sintaxis del lock controlo que ambos programas puedan leer a la vez un mismo registro.

    agradecimiento a Fanny Ojeda no se que nombre tiene en este foro.

    0 Not allowed!

  10. #10
      Acabo de llegar...
    A

    Registrado
    febrero de 2015
    Ubicación
    Montevideo
    Edad
    64
    Mensajes
    27
    Última visita
    30.11.2022

    Agradecimientos
     
    Recibidos
    14
    Enviados
    3

    Citaciones y menciones
     
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Poder de Reputación
    0

    Predeterminado

    Roger
    Nosotros creamos archivos tanto desde un lenguaje como del otro, y se leen y se graban indistintamente, pero teniendo la precaucion en rm de que el runtime este configurado con version 0.
    Con respecto a los campos signados, optamos por decirle donde va el signo, y usamos:
    COBOL Código:
    1. 02 IMPORTE-SLC          PIC S9(12)V99 SIGN TRAILING SEPARATE.

    Los COMP-3 no los usamos.

    Los COMP-6 empezamos a investigar para convertir el archivo de texto byte a byte a numerico, o sea si tenemos por ejemplo:
    si el campo comp-6 es de 12, en power seria un alfa de 6 (cada byte representa 2 digitos).
    entonces si lees el alfa cada uno de esos 6 bytes representa 2 digitos numericos.
    te armas una tabla con los valores hexadecimales para encontrar cada byte leido
    COBOL Código:
    1.     01 W-PASE.
    2.         02 W-LINE01 PIC X VALUE X"01".
    3.         02 W-LINE02 PIC X VALUE X"02".
    4.         02 W-LINE03 PIC X VALUE X"03".
    5.         02 W-LINE04 PIC X VALUE X"04".
    6.                 ....
    7.                         02 W-LINE99 PIC X VALUE X"99".
    8.         02 W-LINE00 PIC X VALUE X"00".
    9.     01 TABLA-PASE REDEFINES W-PASE.
    10.         02 ELEM-PASE OCCURS 100 PIC X.
    y vas obteniendo los digitos empaquetados.
    (nota: tenes que tener en cuenta que tambien estan los campos signados, pero tambien tienen su hexa , o sea vas a tener 10 variables mas para los positivos y 10 mas para los negativos -representacion de c/u de los 10 digitos con signo, recomiendo ver con el editor de archivos del fujitsu los valores decimales)

    Resumiendo, se puede y anda bien.
    Alguien comentaba el tema del orden de las claves en la select con respecto al orden en la FD. En rm no importa, pero en Power si.

    0 Not allowed!

Página 1 de 2 1 2 ÚltimoÚltimo

Información de Tema

Usuarios Viendo este Tema

Actualmente hay 1 usuarios viendo este tema. (0 miembros y 1 visitantes)

Temas Similares

  1. [Sintaxis] Leer archivos Cobol desde VB6
    Por drvedia1981 en el foro PowerCOBOL V3L10 (Win32)
    Respuestas: 8
    Último Mensaje: 31.01.2018, 01:53
  2. [Información] Leer puerto RS232 desde PowerCobol v9
    Por Jovimabo en el foro PowerCOBOL (ActiveX, v4 - v11)
    Respuestas: 13
    Último Mensaje: 18.10.2016, 17:00
  3. [Información] Leer archivo AcuCobol con PowerCobol
    Por Roger en el foro PowerCOBOL (ActiveX, v4 - v11)
    Respuestas: 7
    Último Mensaje: 28.09.2016, 11:44
  4. [Información] Leer y llenar archivos PDF
    Por lfortuny en el foro PowerCOBOL (ActiveX, v4 - v11)
    Respuestas: 12
    Último Mensaje: 24.04.2016, 20:36
  5. [Información] Crear archivos DBF desde COBOL (sin ODBC)
    Por Joseg en el foro PowerCOBOL (ActiveX, v4 - v11)
    Respuestas: 4
    Último Mensaje: 16.03.2016, 17:36

Marcadores

Marcadores

Permisos de Publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •