Foro de programación ABAP
SAP / ABAP => Programación ABAP => Mensaje iniciado por: carlos manuel en 18 de Mayo de 2010, 04:03:05 pm
-
Saludos a todos nececito ayuda si les es posible colaborar conmigo estoy creando unos reportes ALV y tengo inconvenientes con un INNER JOIN
en la las tablas esto es lo que he hecho po rl momento pero no me da los resultados.
si le es posible espero su colavoracion.
DATA: BEGIN OF wa,
vgbel TYPE vbrp-vgbel,
vbeln TYPE vbrp-vbeln,
vbelv TYPE vbfa-vbelv,
vbtyp_n TYPE vbfa-vbtyp_n,
kunnr type kna1-kunnr,
tknum TYPE vttk-tknum,
name1 TYPE kna1-name1,
/bev1/rpfar1 TYPE vttk-/bev1/rpfar1,
END OF wa,
itab LIKE SORTED TABLE OF wa
WITH UNIQUE KEY vgbel vbelv vbtyp_n vbeln tknum /bev1/rpfar1 .
SELECT p~vgbel f~vbelv f~vbeln f~vbeln b~tknum b~/bev1/rpfar1 c~kunnr c~name1
INTO CORRESPONDING FIELDS OF TABLE itab
FROM ( ( ( vbrp AS p
INNER JOIN vbfa AS f ON p~vgbel = f~vbeln AND
p~vgbel = f~vbelv )
INNER JOIN vttk AS b ON p~vgbel = b~/bev1/rpfar1 AND
f~vbeln = b~tknum )
INNER JOIN kna1 AS c ON b~/bev1/rpfar1 = c~kunnr
)
WHERE b~/bev1/rpfar1 <> 0 AND
c~kunnr <> 0 .
LOOP AT itab INTO wa.
AT NEW vgbel.
WRITE: / wa-vgbel, wa-vbeln , wa-vbelv ,wa-vbtyp_n,wa-kunnr ,wa-tknum .
ENDAT.
WRITE / wa-kunnr.
ENDLOOP.
-
Hola,
No se si será esto que te digo, pero veo algo raro en el INNER que marco de color rojo.
SELECT p~vgbel f~vbelv f~vbeln f~vbeln b~tknum b~/bev1/rpfar1 c~kunnr c~name1
INTO CORRESPONDING FIELDS OF TABLE itab
FROM ( ( ( vbrp AS p
INNER JOIN vbfa AS f ON p~vgbel = f~vbeln AND
p~vgbel = f~vbelv )
INNER JOIN vttk AS b ON p~vgbel = b~/bev1/rpfar1 AND
f~vbeln = b~tknum )
INNER JOIN kna1 AS c ON b~/bev1/rpfar1 = c~kunnr
)
WHERE b~/bev1/rpfar1 <> 0 AND
c~kunnr <> 0 .
¿Puede ser que en lugar de un AND, tengas que poner un OR?
... f~vbeln y f~vbelv lo estas igualando al mismo campo p~vgbel.
Un saludo.