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

Tema: Lectura archivo secuencial

  1. #1
      Junior
    G

    Registrado
    abril de 2015
    Ubicación
    Panama
    Mensajes
    61
    Última visita
    01.07.2020

    Agradecimientos
     
    Recibidos
    2
    Enviados
    6

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

    Gadget Lectura archivo secuencial

    Hola Amigos estoy migrando un archivo excel a un archivo plano de ahi a powercobol tengo dificultad al leer un archivo secuencial con mas de 50 caracteres la linea de lectura es la siguiente:
    CODE Código:
    1. 000002&09/06/15&TBI&"AYER VOMITO 4 VECES HOY DECAIDOHA TENIDO ERLICHIA"&ENRO+DEXA HEPAT&&&&&5.6&38.6&&

    El "&" es el separador de campo.

    Pero al leer lo toma de esta manera
    CODE Código:
    1. 000002&09/06/15&TBI&"AYER VOMITO 4 VECES HOY DECAIDO
    2. HA TENIDO ERLICHIA"&ENRO+DEXA HEPAT&&&&&5.6&38.6&&

    COBOL Código:
    1.   Perform varying I  from I by 1 until D(I) = "&" OR I > 700                                                      
    2.     CONTINUE  
    3.        move D(I) to NOM(II)
    4.        ADD 1 TO II
    5.        end-perform.

    lectura en cobol.

    "ojo al crear un tema no aparece el marcador de cobol en el foro."

    0 Not allowed!

  2. #2
      Administrador
    Avatar de Kuk

    Registrado
    enero de 2015
    Ubicación
    Madrid
    Edad
    38
    Mensajes
    2,157
    Última visita
    Ayer a las 23:18

    Agradecimientos
     
    Recibidos
    957
    Enviados
    827

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

    Predeterminado

    @Gatomalo, posiblemente haya un salto de línea de por medio.

    Cómo tienes definida la FD ?

    Cita Iniciado por Gatomalo Ver Mensaje
    "ojo al crear un tema no aparece el marcador de cobol en el foro."
    Gracias, ya está corregido

    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
      Junior
    d

    Registrado
    febrero de 2017
    Ubicación
    Caba Argentina
    Mensajes
    66
    Última visita
    14.10.2022

    Agradecimientos
     
    Recibidos
    9
    Enviados
    3

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

    Predeterminado

    Hola y algo asi ...

    COBOL Código:
    1.    UNSTRING campo_total_ a_leer DELIMITED BY "&"
    2.           INTO campo1 campo2 campo3 etc.
    Saludos

    0 Not allowed!

  4. #4
      Junior
    G

    Registrado
    abril de 2015
    Ubicación
    Panama
    Mensajes
    61
    Última visita
    01.07.2020

    Agradecimientos
     
    Recibidos
    2
    Enviados
    6

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

    Configuración

    COBOL Código:
    1.  FD REPORTE  LABEL RECORD IS STANDARD.
    2.  01 REC-REPOR PIC X(2000).

    0 Not allowed!

  5. #5
      Administrador
    Avatar de Kuk

    Registrado
    enero de 2015
    Ubicación
    Madrid
    Edad
    38
    Mensajes
    2,157
    Última visita
    Ayer a las 23:18

    Agradecimientos
     
    Recibidos
    957
    Enviados
    827

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

    Predeterminado

    @drvedia1981, para ello hay que conocer el número de separaciones. Si son simepre de la misma cantidad entonces valdría.

    @Gatomalo, pues yo creo que lo más seguro es que haya un X"0A" o X"0D" o X"0D0A" ahí donde te corta la línea.

    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.

  6. #6
      Junior
    G

    Registrado
    abril de 2015
    Ubicación
    Panama
    Mensajes
    61
    Última visita
    01.07.2020

    Agradecimientos
     
    Recibidos
    2
    Enviados
    6

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

    Predeterminado

    Tambien pienso igual pero como puedo encontrar ese comando para borrar de la linea ??

    0 Not allowed!

  7. #7
      Administrador
    Avatar de Kuk

    Registrado
    enero de 2015
    Ubicación
    Madrid
    Edad
    38
    Mensajes
    2,157
    Última visita
    Ayer a las 23:18

    Agradecimientos
     
    Recibidos
    957
    Enviados
    827

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

    Predeterminado

    @Gatomalo, se me ocurre lo siguiente:

    En caso de que el número de campos (separados por &) sea siempre el mismo (aunque no contenga nada, la cantidad de dicho carácter siempre es la misma en cada registro), lo que puedes hacer es contarlos para cada registro "lógico".

    Por ejemplo, si sabes que siempre debe haber 10 & por registro, los vas contando. Si ves que has llegado al final de los datos del registro leído, pero el contador de &-s es inferior a 10, lees el registro siguiente con READ pero sigues tratándolo como si fuera el anterior, es decir continuas el contado y la extracción de datos para el registro de destino actual.
    Lo que quiero decir, es que hagas un o varios READ del fichero de entrada hasta que obtengas el registro de salida "lógico".

    En caso de que la cantidad de &-s es variable, ahora mismo lo veo un poco chungo de hacer...

    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
      Junior
    G

    Registrado
    abril de 2015
    Ubicación
    Panama
    Mensajes
    61
    Última visita
    01.07.2020

    Agradecimientos
     
    Recibidos
    2
    Enviados
    6

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

    PC

    Si reviso la cadena y reemplazo el X"0A" o X"0D" o X"0D0A" por blanco
    ¿Como seria la sintaxis?

    0 Not allowed!

  9. #9
      Administrador
    Avatar de Kuk

    Registrado
    enero de 2015
    Ubicación
    Madrid
    Edad
    38
    Mensajes
    2,157
    Última visita
    Ayer a las 23:18

    Agradecimientos
     
    Recibidos
    957
    Enviados
    827

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

    Predeterminado

    @Gatomalo, no se puede. Es decir, se puede hacer la acción en sí, pero no en este caso. Porque dicho carácter significa "salto de línea" que equivale a "fin registro" para el COBOL.

    Salvo que vayas leyendo por bytes, uno por uno, y reemplaces todos los saltos de linea creando así un único registro conteniendo todo el churro...

    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.

  10. #10
      Junior
    G

    Registrado
    abril de 2015
    Ubicación
    Panama
    Mensajes
    61
    Última visita
    01.07.2020

    Agradecimientos
     
    Recibidos
    2
    Enviados
    6

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

    Predeterminado

    Logre solucionar como este archivo venia del excel hice un reemplazo alt-010 por espacio del tabulador y quito todos los saltos de linea.

    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] Lectura del ultimo registro
    Por jmeza en el foro PowerCOBOL (ActiveX, v4 - v11)
    Respuestas: 4
    Último Mensaje: 05.02.2018, 04:13
  2. [Sintaxis] Error de lectura en archivo
    Por jmeza en el foro PowerCOBOL (ActiveX, v4 - v11)
    Respuestas: 2
    Último Mensaje: 12.12.2017, 13:13
  3. [Sintaxis] Grabación/Lectura archivo de configuración
    Por Dasije en el foro WinDev
    Respuestas: 0
    Último Mensaje: 08.09.2016, 02:04

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
  •