Tema: Inner Join
Ver Mensaje Individual
  #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