Ver la Versión Completa : COPIAR una estructura a un campo tipo texto con separaciones
Consultor Oscuro
25/06/10, 22:40:49
Hola a todos, tengo una duda en cuanto a la copia de datos de tipo caracter de una estructura a un campo de texto
Siendo ORIGEN una estructura con 6 campos tipo C de extensión 7, y Destino_txt un campo txt con 70 de longitud. Como copiar dichos campos en el campo de texto separándolos siempre por 2 espacios?
Pensé en utilizar el write pero no sé cómo usarlo eficazmente e indicarle los espacios de separación entre campo y campo. Saludos y gracias de antemano por la ayuda que puedan brindarme.
A ver si te sirve esto,
es código, no se si habrá alguna función que lo haga:
* Estructura
TYPES: BEGIN OF ty_tyl_est,
campo1(7) TYPE c,
campo2(7) TYPE c,
campo3(7) TYPE c,
campo4(7) TYPE c,
campo5(7) TYPE c,
campo6(7) TYPE c,
END OF ty_tyl_est.
DATA: lw_est TYPE ty_tyl_est.
DATA: lv_destino_txt_1 TYPE char70,
lv_destino_txt_2 TYPE char70,
lv_destino_txt_3 TYPE char70.
* Rellenar estructura
CLEAR: lw_est.
lw_est-campo1 = 'Campo01'.
lw_est-campo2 = 'Campo02'.
lw_est-campo3 = 'Campo03'.
lw_est-campo4 = 'Campo04'.
lw_est-campo5 = 'Campo05'.
lw_est-campo6 = 'Campo06'.
* 1 espacio de separación
CONCATENATE
lw_est-campo1 lw_est-campo2
lw_est-campo3 lw_est-campo4
lw_est-campo5 lw_est-campo6
INTO lv_destino_txt_1 SEPARATED BY space.
WRITE lv_destino_txt_1.
* 2 espacios de separación
CONCATENATE
lw_est-campo1 space lw_est-campo2 space
lw_est-campo3 space lw_est-campo4 space
lw_est-campo5 space lw_est-campo6 space
INTO lv_destino_txt_2 SEPARATED BY space.
WRITE lv_destino_txt_2.
* 3 espacios de separación
CONCATENATE
lw_est-campo1 space space lw_est-campo2 space space
lw_est-campo3 space space lw_est-campo4 space space
lw_est-campo5 space space lw_est-campo6 space space
INTO lv_destino_txt_3 SEPARATED BY space.
WRITE lv_destino_txt_3.
Resultado:
Campo01 Campo02 Campo03 Campo04 Campo05 Campo06
Campo01 Campo02 Campo03 Campo04 Campo05 Campo06
Campo01 Campo02 Campo03 Campo04 Campo05 Campo06
Areli Sierra
02/07/10, 15:19:10
yo meteria los campos en su respectivas work areas y despues utilizaria en "concatenate"
concatenate workarea1 workarea2 workarea3
si lo quieres con espacio:
concatenate workarea1 ' ' workarea2 ' ' workarea3 .... into destino_txt.
www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web