MUNDOSAP

MUNDOSAP (foro/index.php)
-   NOTICIAS PRINCIPALES (foro/forumdisplay.php?f=2)
-   -   función con join de 4 tablas (foro/showthread.php?t=74605)

orfilia 16/09/15 00:11:59

función con join de 4 tablas
 
Hola, buanas noches, les cuento que soy nueva en sap y necesito crear una funcion que mediante un select haga el join de 4 tablas.
Estas son: USR02 ; USR21; ADRP; ADR6. debo mostrar los campos: BNAME; CLASS; NAME_TEXT; SMTP_ADDR. una de las cosas que me esta costando mucho es hacer el join de estas tablas, alguien me puede dar una mano? :confused:

sconoredhot 16/09/15 17:44:02

hola
 
Hola,

Ahi te va el código, lo probé y funciona, cualquier cosa me avisas.

REPORT z_test_sebas2.

PARAMETERS: p_user TYPE usr02-bname.

TYPES: BEGIN OF ty_prueba,
bname TYPE usr02-bname,
class TYPE usr02-class,
persnumber TYPE usr21-persnumber,
addrnumber TYPE usr21-addrnumber,
name_text TYPE adrp-name_text,
smtp_addr TYPE adr6-smtp_addr,
END OF ty_prueba.

DATA: wa_prueba TYPE ty_prueba.



SELECT SINGLE a~bname a~class b~persnumber b~addrnumber c~name_text d~smtp_addr
INTO wa_prueba
FROM usr02 AS a
INNER JOIN usr21 AS b
ON a~bname = b~bname
INNER JOIN adrp AS c
ON b~persnumber = c~persnumber
INNER JOIN adr6 AS d
ON b~addrnumber = d~addrnumber
AND b~persnumber = d~persnumber
WHERE a~bname = p_user.

IF sy-subrc EQ 0.
WRITE: wa_prueba-bname.
SKIP.
WRITE: wa_prueba-class.
SKIP.
WRITE: wa_prueba-persnumber.
SKIP.
WRITE: wa_prueba-addrnumber.
SKIP.
WRITE: wa_prueba-name_text.
SKIP.
WRITE: wa_prueba-smtp_addr.
ENDIF.

Saludos!

orfilia 17/09/15 00:37:03

Hola Sebas! Mil gracias!
Me sirvio de 10, lo acabo de probar porque en el trabajo no tengo internet!

Saludos!


Husos Horarios son GMT. La hora en este momento es 10:43:21.

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