Para mi que el problema puede ser que tengas algún campo con valors
alfanuméricos que no se puedan convertir a numéricos, por eso te daría error
de datos decimales. Lo podes verificar antes con esta sentencia,
corregirlos a numéricos y luego hacer la copia.
SELECT Cast(CAMPO1 AS numeric), Cast(CAMPO2 AS numeric),
Cast(CAMPO3 AS numeric) FROM filea
Ejemplo:
CAMPO1 CAMPO2 CAMPO3
A 01 A2
CAST function CAST function CAST function
+++++++ 1 +++++++
Lo que no te pueda convertir a numérico, te lo va a mostrar con ++++++ y ya
lo podrás ordenar por el resultado, para verificar los registros que no
estén bien. Aunque cuando se trata de hacer un insert de los campos como el
ejemplo que te pongo a continuación, el sistema te va a dar el numero de
registro que no pudo convertir.
insert into fileb
select
Cast(CAMPO1 AS numeric),
Cast(CAMPO1 AS numeric),
Cast(CAMPO1 AS numeric)
from filea
Te recomiendo que, sea cual sea la forma que utilices para copiarlos,
verifiques antes el contenido, pues , por ejemplo, el MOVE te va a mover un
campo que tenga letras y te va a dejar un numero, que supongo, no es lo que
queres.
Saludos.
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Sonia Ramírez
Castillo
Sent: Miércoles, 10 de Febrero de 2010 07:50 a.m.
To: [email protected]; forum.help400
Subject: Re: Cambio de Estructura de Archivo
Hola Wilfredo
La única manera es con CPYF y *NOCHK, siempre que tengan la misma longitud
de fichero. El mando CHGPF no te funciona si los campos son claves...
Deberías decirnos cuales son los verdaderos campos, porque en el ejemplo
que has puesto, si tiene que funcionar. Y por supuesto si haces un
programa debería de funcionar, ya que los campos de unos de los ficheros
los tienes que renombrar porque son distintos. Hace poco, he hecho algo
parecido cambiando la clave de númerica a alfa, y lo que he hecho es crear
el fichero vacio con las DDS's nuevas y luego CPYF con *NOCHK (porque
tienen la misma longitud).
Un saludo
Sonia Ramírez
Técnica de Sistemas
Burke (Sotfware y Servicios)
> Gracias a todos por la ayuda, he intetado hacerlo con el CPYF y mueve
> datos no deseados, también lo hice con CHGPF y genera el error de 'Datos
> Decimales'
>
> He optado por hacer un programa Free donde creo una estructura de datos de
> ambos archivos con la opción QUALIFIED luego con la función EVAL_CORR
> mover los datos, lamentablemente también genera datos no deseable y da un
> error de datos decimales. La única solución es tratar de mover cada campo
> individualmente.
>
> Gracias amigos.
>
> ----------------------------------------
>
> From: "Victor Almonacid" <[email protected]>
> Sent: Tuesday, February 09, 2010 4:38 PM
> To: [email protected], "forum.help400"
> <[email protected]>
> 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