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 18/02/09, 11:50:10
romario2 romario2 is offline
Senior Member
 
Fecha de Ingreso: abr 2006
Mensajes: 233
Red face Inner Join

Hola,

tengo una duda con este inner join, en la parte de:

ON a~bukrs = b~bukrs
AND a~kunnr = b~kunnr
* AND a~gjahr = b~gjahr
* AND a~blart = b~blart
* AND a~budat = b~budat
* AND a~gsber = b~gsber

no se si debo añadir más o menos condiciones, no me filtra bien el parámetro de año: p_gjahr y no se el motivo.


CLEAR it_bsid.
REFRESH it_bsid.
SELECT a~bukrs a~kunnr a~gjahr a~blart a~budat a~belnr a~xblnr a~gsber
INTO TABLE it_bsid
FROM bsid AS a
INNER JOIN bsad AS b
ON a~bukrs = b~bukrs
AND a~kunnr = b~kunnr
* AND a~gjahr = b~gjahr
* AND a~blart = b~blart
* AND a~budat = b~budat
* AND a~gsber = b~gsber
WHERE a~bukrs = p_bukrs
* AND a~gjahr = p_gjahr
AND a~blart IN s_blart
AND a~budat IN s_budat
AND a~kunnr IN rg_kunnr
AND a~gsber IN s_gsber.

Saludos y gracias,
Responder Con Cita
  #2  
Viejo 18/02/09, 13:17:46
Bmamba Bmamba is offline
Member
 
Fecha de Ingreso: jun 2008
Mensajes: 91
No me hagas mucho caso, pero has probado a hacer el ON con los siguientes campos: BUKRS, KUNNR, UMSKS, UMSKZ, AUGDT, AUGBL, ZUONR, GJAHR, BELNR, BUZEI ? (Los que aparecen como clave en ambas tablas)

Saludos
Responder Con Cita
  #3  
Viejo 18/02/09, 15:52:22
gugutin gugutin is offline
Member
 
Fecha de Ingreso: jul 2008
Localización: Badalona(Barcelona) España
Mensajes: 71
Hola romario,

No se exactamente que es lo que pretendes obtener, pero yo he tomado tu ejemplo y he hecho algunos cambios que a lo mejor te ayudan, asi que aqui te los dejo.
Ten encuenta que estas comparando partidas abiertas y partidas compensadas de clientes con lo que la seleccion de tantos campos iguales entre Bsid y Bsad no me paraece muy coherente.

report zpruebatonijoin.
tables: bsid, bsad.
parameter: p_bukrs like bsid-bukrs,
p_gjahr like bsid-gjahr.

data: it_bsid type standard table of bsid with header line.

clear it_bsid.
refresh it_bsid.

select a~bukrs a~kunnr a~gjahr a~blart a~budat a~belnr a~xblnr a~gsber
into corresponding fields of table it_bsid
from ( bsid as a
inner join bsad as b
on a~bukrs = b~bukrs
*and a~kunnr = b~kunnr
and a~gjahr = b~gjahr )
* and a~blart = b~blart
* and a~budat = b~budat
* and a~gsber = b~gsber )
where a~bukrs = p_bukrs
and a~gjahr = p_gjahr.
*and a~blart in s_blart
*and a~budat in s_budat
*and a~kunnr in rg_kunnr
*and a~gsber in s_gsber.

clear it_bsid.
loop at it_bsid.
write: / it_bsid-bukrs, it_bsid-kunnr.
endloop.

Espero que te haya podido ayudar.
Saludos.
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 19:43:18.


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