Hola de nuevo, realmente es como dice Santiago, en la mayoría de los casos los 
campos son empaquetados de 3,0 P,  un amigo, Programador desde S/34 me sugirió 
usar la Hoja I y definir aquí los campos que sufrieron el cambio y mover 
solamente estos ya que los demás seran copiado automaticamente. Aquí le dejo el 
programa.

 *---------------------------------------------------------------
FCjtbtra   if   e             Disk    Rename(CjtbtraR:A_Cjtbtra)         /* 
Archivo actual
FCjtbtraB  if a e             Disk                                              
      /* Archivo con los nuevos cambios
 *---------------------------------------------------------------
IA_Cjtbtra
I              Tintra                      A_Tintra
I              Titr01                      A_Titr01
I              Titr02                      A_Titr02
I              Titr03                      A_Titr03
I              Titr04                      A_Titr04
 *------------------------------------------------------------------
 * Rutina Principal
 *------------------------------------------------------------------
C                   Exsr      Load_Datos
C                   Eval      *InLr   =   *On
 *------------------------------------------------------------------
 * Load_Datos :  Carga Datos Originales a Nueva Estructura
 *------------------------------------------------------------------
c     Load_Datos    Begsr

c                   Read      A_Cjtbtra
c                   Dow       Not %Eof()

c                   Move      A_Tintra      Tintra        /* del  archivo viejo 
al nuevo
c                   Move      A_Titr01      Titr01
c                   Move      A_Titr02      Titr02
c                   Move      A_Titr03      Titr03
c                   Move      A_Titr04      Titr04

c                   Write     Cjtbtrar
c                   Clear                   Cjtbtrar

c                   Read      A_Cjtbtra
c                   EndDo

C                   Endsr

Como pueden notar esto funciona perfectamente  y me evita tener que mover cada 
campo individual del archivo que por cierto tiene bastante campo definido.

Gracias a todo y ojalá esto ayude en el futuro algunos de Ustedes

----------------------------------------

From: "Santiago G Martí" <[email protected]>
Sent: Wednesday, February 10, 2010 1:53 PM
To: "forum.help400" <[email protected]>
Subject: Re: Cambio de Estructura de Archivo

Hola Sonia,
¿Seguro que el CPYF *NOCHK te ha funcionado?

Si es así, es que los campos numéricos eran desempaquetados, lo cual no es
muy habitual.

En el ejemplo que plantea Wilfredo el Campo_1 era 3.0, es decir, de 3
dígitos, empaquetados ocupando 2 bytes, con lo cual al hacer el CPY el
nuevo Campo_1 recibiría estos 2 bytes, posiblemente ilegibles, más el
primer byte del Campo_2.

Saludos,
---------------------------
Santiago Martí
Dusen, S.A.
---------------------------

Sonia Ramírez
Castillo
rke.com> [email protected],
Enviado por: "forum.help400"
forum.help400-bou
[email protected] cc
os.es
Asunto
Re: Cambio de Estructura de Archivo
10/02/2010 15:00

Por favor,
responda a
"forum.help400"

> Sent: Tuesday, February 09, 2010 4:38 PM
> To: [email protected], "forum.help400"
>
> Subject: Re: Cambio de Estructura de Archivo
>
> El siguiente comando hace una copia de todos los registros de un archivo
> fisico a otro, moviendo el registro completo, sin considerar los campos
> individualmente...
>
> Es ideal cuando ambos registros son del mismo largo...en caso contrario
> hay que tener cuidado porque se puede truncar o rellenar con valores no
> deseados y ahí quizás conviene hacer un programa para mover campo a
> campo....
>
>
> CPYF FROMFILE(BIBLIOTECA/PFILEA) TOFILE(BIBLIOTECA/PFLIEB)
> MBROPT(*REPLACE) FMTOPT(*NOCHK)
>
>
> Espero te sirva
>
>
> From: Wilfredo Ramirez
> Sent: Tuesday, February 09, 2010 5:11 PM
> To: [email protected]
> Subject: Cambio de Estructura de Archivo
>
> Saludos amigos del Forum,
> a ver si alguien me da una idea o me pueda dar un ejemplo con este
> inconveniente que tengo. Resulta que la empresa donde laboro me ha
> asignado un proyecto el
> cual involucra alrededor de mil programas. Este consiste en cambiar la
> estructura de varios archivos físicos, Ejemplo,
> el PF Filea esta estructurado como sigue,
> Campo_1 3,0
> Campo_2 5A
> Campo_3 7,2
> Campo_4 3,0
>
> y la nueva estructura seria PF Fileb,
> Campo_1 3A
> Campo_2 5A
> Campo_3 7,2
> Campo_4 3A
>
> Despues de hacer esto cambio he ejecutado el comando CHGPF para que asuma
> el nuevo cambio pero este genera un error de datos no compatible, he
> optado por hacer un
> un programa para mover campo a campo hacia la nueva estructura (tienen
los
> mismo nombre de campo), mi pregunta es si existe una una mejor manera de
> mover de
> forma conjunta todos los campos del archivo Filea al archivo Fileb, de
ser
> esto posible me pueden dar un ejemplo.
>
> Gracias a todos por toda la ayuda posible...
>
> Wilfredo Ramírez
> Outsourcing Externo
> Santo Domingo, Rep. Dominicana
>
> ----------------------------------------
>
> ____________________________________________________
> © Publicaciones Help400, S.L. - Todos los
> derechos reservados http://www.help400.es
> ----------------------------------------------------
> Para darte de baja visita la siguente URL:
> http://listas.combios.es/mailman/listinfo/forum.help400
>
> ____________________________________________________
> © Publicaciones Help400, S.L. - Todos los
> derechos reservados http://www.help400.es
> ----------------------------------------------------
> Para darte de baja visita la siguente URL:
> http://listas.combios.es/mailman/listinfo/forum.help400

____________________________________________________
© Publicaciones Help400, S.L. - Todos los
derechos reservados http://www.help400.es
----------------------------------------------------
Para darte de baja visita la siguente URL:
http://listas.combios.es/mailman/listinfo/forum.help400

____________________________________________________
© Publicaciones Help400, S.L. - Todos los
derechos reservados http://www.help400.es
----------------------------------------------------
Para darte de baja visita la siguente URL:
http://listas.combios.es/mailman/listinfo/forum.help400


____________________________________________________
© Publicaciones Help400, S.L. - Todos los
derechos reservados http://www.help400.es
----------------------------------------------------
Para darte de baja visita la siguente URL:
http://listas.combios.es/mailman/listinfo/forum.help400

Responder a