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 11/02/08, 10:26:59
Avatar de Driau
Driau Driau is offline
Senior Member
 
Fecha de Ingreso: ago 2007
Mensajes: 235
Ayuda con un simple SELECT.... :-(

Hola...estoy intentando hacer un select de varios tipos de movimiento (BWART) Si hago esto:

SELECT MBLNR GJAHR MENGE
FROM MSEG
INTO CORRESPONDING FIELDS OF TABLE IT_EXPO_MSEG
WHERE MATNR = P_MATNR
AND GJAHR = P_ANYO_TMP
AND BWART = 202.


No hay problema...la seleccion es correcta.
Pero si añado mas movimientos para que me coja los (712, 901, etc..)

SELECT MBLNR GJAHR MENGE
FROM MSEG
INTO CORRESPONDING FIELDS OF TABLE IT_EXPO_MSEG
WHERE MATNR = P_MATNR
AND GJAHR = P_ANYO_TMP
AND BWART = 202
OR BWART = 201
OR BWART = 712
OR BWART = 901
OR BWART = 101
OR BWART = 911
OR BWART = 501
OR BWART = 262
OR BWART = 531
OR BWART = MUE.


Cuando mira la tabla interna en el campo GJAHR...me coge los años que le da la gana. Alguien ve algo que yo no veo????

Gracias!
Responder Con Cita
  #2  
Viejo 11/02/08, 10:31:05
ballan ballan is offline
Senior Member
 
Fecha de Ingreso: oct 2006
Mensajes: 671
Deberias ponerlo asi:

SELECT MBLNR GJAHR MENGE
FROM MSEG
INTO CORRESPONDING FIELDS OF TABLE IT_EXPO_MSEG
WHERE MATNR = P_MATNR
AND GJAHR = P_ANYO_TMP
AND (BWART = 202
OR BWART = 201
OR BWART = 712
OR BWART = 901
OR BWART = 101
OR BWART = 911
OR BWART = 501
OR BWART = 262
OR BWART = 531
OR BWART = MUE).

Quiza tengas que dejar hueco en los parentesis, de todas formas seria mucho mas recomendable que introdujeras los movimientos en un rango, haciendo algo asi:

ranges: s_bwart for mseg-bwart

s_bwart-sign = 'I'
s_bwart-option = 'EQ'
s_bwart-low = '202'.
append s_bwart.
clear s_bwart-low.

s_bwart-low = '301'.
append s_bwart.
clear s_bwart-low.

... aqui vas añadiendo todos los movimientos que quieras y luego haces el select asi

SELECT MBLNR GJAHR MENGE
FROM MSEG
INTO CORRESPONDING FIELDS OF TABLE IT_EXPO_MSEG
WHERE MATNR = P_MATNR
AND GJAHR = P_ANYO_TMP
AND BWART IN s_bwart
Responder Con Cita
  #3  
Viejo 11/02/08, 11:03:03
Avatar de Driau
Driau Driau is offline
Senior Member
 
Fecha de Ingreso: ago 2007
Mensajes: 235
perfecto!

he probado lo que me has dicho. Lo del SELECT no sabia que podia hacerlo...pero funciona. Lo de los 'OR' no se por que motivo..no me funciona.

Pero bueno...el resto todo bien..gracias!!!
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 18:39:31.


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