MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Duda con valores de tabla interna (foro/showthread.php?t=71389)

ximena251 08/04/14 21:53:28

Duda con valores de tabla interna
 
Buenas tardes aquí con una duda.
No sé como realizar una inversión de valores.
Si tengo un campo fname que tiene un valor de 6412345 y quiero
que quede 2345641 ¿Cómo hacerlo? solo encuentro como invertir la cadena... (5432146)
Gracias de antemano.

vanesamacri 08/04/14 22:09:08

Buenas tardes.

Hacé:

DATA variable TYPE string.

CONCATENATE fname+3 fname(3) INTO variable.

ximena251 09/04/14 15:38:51


Muchas gracias por la respuesta. :)

Mauricio Hidalgo 09/04/14 17:21:55

En este caso hay que mover a la izquierda tres posiciones. Así entonces sería

<tu_variable> = '6412345'.

SHIFT <tu_variable> LEFT BY 3 PLACES CIRCULAR.

Si el largo es variable deberás calcular cuantos lugares aplicar en el SHIFT.

Saludos

ximena251 09/04/14 18:31:13


Muchas gracias por la respuesta; abusando de tu amabilidad, tengo otra pequeña duda. Si quiero formar una cadena con el valor del campo de una tabla interna. ¿Cómo se hace?; es decir. Si tengo una constante = /ruta/.. y una variable que me guarda la fecha.
Concatenate contante 'CCCVVV' v_fecha into ...variable.

CCCVVV es un valor que contiene una tabla interna. (fname = 123456), ¿Cómo pongo ese valor del 'Concatenate' ?

Mauricio Hidalgo 09/04/14 18:48:03

No hay problema, sería algo así:

CONCATENATE contante <tabla_interna>-fname v_fecha into variable.

Tienes algún problema de sintaxis ?..si es así, muestra la declaración de tu tabla interna y como la estás accesando.

Saludos

ximena251 09/04/14 21:37:07


De hecho si, lo había hecho como lo mencionas, pero me manda un error :confused:

Spainnavar 10/04/14 10:07:48

Prueba con MOVEs
 
Prueba a meter los campos que te den error en variables char de la long necesaria. No se cual de los campos de dará error, peor prueba con los 3 si fuera necesario. La idea es esta...

DATA: var_aux1(mete aqui la longitud necesaria) TYPE c,
var_aux2(mete aqui la longitud necesaria) TYPE c.

MOVE constante TO var_aux1.
MOVE <tabla_interna>-fname TO var_aux2.

CONCATENATE var_aux1 var_aux2 v_fecha into variable.

No se si sera necesario hacerlo tambien con la variable v_fecha, pero inténtalo tambien

Ya nos dirás

Un saludo

ximena251 10/04/14 16:40:31

Ya había intentado hacerlo con Move, creo que el problema reside en que el <fs_cnst> -fname contiene más de un valor... es decir 123456, 2233456 ejemplos. Quizá si solo se apunte al primer valor o genere la cadena en cuanto a todos los valores que posea...ósea

constante.. fname(123456) fecha
constante...fname (2233456) fecha...
algo así...


Husos Horarios son GMT. La hora en este momento es 15:53:48.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web