MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 17/08/07, 12:06:35
Bushido_222 Bushido_222 is offline
Junior Member
 
Fecha de Ingreso: ago 2007
Mensajes: 16
FOR ALL ENTRIES con distintos campos

Resulta que tengo una tabla interna T_LBF01 con un campo LIFNR (que es un CHAR de 10), y otra tabla interna T_CDHDR con un campo OBJECTID (que es un CHAR de 90)
La tabla T_LBF01 ya esta cargada con datos y la uso en un FOR ALL ENTRIES para cargar la tabla T_CDHDR (la cargo con la tabla standard CDHDR) en el cual el campo OBJECTID tiene que ser igual a T_LBF01-LIFNR (que es un CHAR de 90).
Quedaria asi:

SELECT OBJECTCLAS OBJECTID CHANGENR
FROM CDHDR
INTO TABLE T_CDHDR
FOR ALL ENTRIES IN T_LFB1_AUX
WHERE OBJECTCLAS = 'KRED' AND
OBJECTID = T_LFB1-LIFNR AND.

Pero como saben OBJECTID(CHAR de 90) Y T_LFB1-LIFNR(CHAR de 10) tienen que ser del mismo tipo y tamaño.

En la especificacion me piden que complete T_LFB1-LIFNR con ceros a la izquerda.

Soy novato, alguien tiene idea de como podria resolver este problema de manera relativamente performante?
Responder Con Cita
  #2  
Viejo 17/08/07, 15:56:06
conrad10ar conrad10ar is offline
Banned
 
Fecha de Ingreso: mar 2006
Mensajes: 296
A ese campo de 10 metelo en una variable que crees del mismo tipo de la de 90.

Y para completar el resto del campo con ceros, tenés que hacer un unpack de esa variable y listo.

Espero haberte ayudado.

Saludos!
Responder Con Cita
  #3  
Viejo 17/08/07, 15:57:57
azua14 azua14 is offline
Senior Member
 
Fecha de Ingreso: jul 2007
Mensajes: 140
Bueno..yo le cambiaría el tipo al campo lifnr de la tabla interna..eso si la tienes definida campo a campo...si lo que haces es declarar la tabla interna como una estructura ya existente...le pondría un campo extra..digamos LIFNUM..y le movería el valor del campo correspondiente ahi...
de ahi puedes hacer la comparacion entre tu campo objid y el lifnum

DATA: BEGIN OF t_interna OCCURS 0.
INCLUDE STRUCTURE z_tablaz.
DATA: lifnum(3) TYPE c,
END OF t_interna.

Ojala te ayude..
Saludos
Promethevs
Responder Con Cita
  #4  
Viejo 17/08/07, 17:33:18
Bushido_222 Bushido_222 is offline
Junior Member
 
Fecha de Ingreso: ago 2007
Mensajes: 16
Muchas gracias, me sirven las 2.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 22:29:20.


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