Lo podrías hacer con dos campos adicionales y dos punteros. Te defines dos campos (campo1 y campo2) de la misma longitud de registro de FICHERO y las palabras clave BASED(puntero1) y BASED(puntero2) y dos punteros (puntero1 y puntero2), inicializados con los valores INZ(%ADDR(leido)) y INZ(%ADDR(viejo)).
De esta manera en campo1 tendrás siempre lo mismo que en leido y en campo2 lo mismo que en viejo. moviendo campo1 a campo2 estás cargando en la estructura de datos viejo el contenido de la estructura de datos leido.
No sé si queda claro o me he liado.
Saludos.
Juan Carlos.
-----Mensaje original-----
De: [EMAIL PROTECTED] [SMTP:[EMAIL PROTECTED] En nombre de Jose Bermúdez
Enviado el: martes, 18 de octubre de 2005 9:40
Para: [email protected]
Asunto: Operaciones con estructuras de datos
Quisiera saber si hay la posibiliad de pasar el contendio de una estructura a otra sin tener que ir campo a campo de dicha estructura.
Guardar la informacion de la estructura leido en la estructura viejo sin necesidad de ir campo a campo.
EJEMPLO
Guardar la información de la estructura leido en la estructura viejo sin necesidad de ir campo a campo
D leido E DS ExtName(FICHERO)
D viejo E DS ExtName(FICHERO) Prefix(A$_)
C Key chain Fichero
C* En este momento tengo rellenos todos los campos de la estructura leido.
C* Quiero de alguna manera cómoda y sin tener que cambiar el programa si cambia el fichero guardar los valores originales.
C eval a$_campo1=campo1
C eval a$_campo2=campo2
C ....
C eval a$_campoN=campoN
Un Saludo.
José Bermúdez
--
No virus found in this incoming message.
Checked by AVG Anti-Virus.
Version: 7.0.344 / Virus Database: 267.12.2/140 - Release Date: 18/10/2005
--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.344 / Virus Database: 267.12.2/140 - Release Date: 18/10/2005
