2007 Jul 16 8:31 AM
Hi,
I want to join 3 tables vbak, vbap, makt.
This is the way i wrote the program, but i didnt know how to inner join for the 3 rd table.
Plz correct this,
TYPES:
BEGIN OF TY_OUTPUT,
KUNNR TYPE VBAK-KUNNR,
VBELN TYPE VBAK-VBELN,
AUDAT TYPE VBAK-AUDAT,
VBTYP TYPE VBAK-VBTYP,
MATNR TYPE VBAP-MATNR,
ZMENG TYPE VBAP-ZMENG,
NETPR TYPE VBAP-NETPR,
NETWR TYPE VBAP-NETWR,
MAKTX TYPE MAKT-MAKTX,
END OF TY_OUTPUT.
DATA:
ST_OUTPUT TYPE TY_OUTPUT,
IT_OUTPUT TYPE TY_OUTPUT.
SELECT-OPTIONS SKUNNR FOR ST_OUTPUT-KUNNR.
SELECT-OPTIONS SAUDAT FOR ST_OUTPUT-AUDAT.
SELECT-OPTIONS SVBTYP FOR ST_OUTPUT-VBTYP.
SELECT VBAKKUNNR VBAKVBELN VBAKAUDAT VBTYP VBAKVBTYP VBAPMATNR VBAPZMENG VBAPNETPR VBAPNETWR MAKT~MAKTX INTO TABLE IT_OUTPUT FROM VBAK INNER JOIN VBAP ON
VBAKVBELN EQ VBAPVBELN WHERE VBAKKUNNR IN SKUNNR VBAKAUDAT IN SAUDAT VBAK~VBTYP IN SVBTYP.
Thanks
2007 Jul 16 8:38 AM
Hi try like this
TYPES:
BEGIN OF TY_OUTPUT,
KUNNR TYPE VBAK-KUNNR,
VBELN TYPE VBAK-VBELN,
AUDAT TYPE VBAK-AUDAT,
VBTYP TYPE VBAK-VBTYP,
MATNR TYPE VBAP-MATNR,
ZMENG TYPE VBAP-ZMENG,
NETPR TYPE VBAP-NETPR,
NETWR TYPE VBAP-NETWR,
MAKTX TYPE MAKT-MAKTX,
END OF TY_OUTPUT.
DATA:
ST_OUTPUT TYPE TY_OUTPUT,
IT_OUTPUT TYPE TY_OUTPUT.
SELECT-OPTIONS: SKUNNR FOR ST_OUTPUT-KUNNR.
SELECT-OPTIONS: SAUDAT FOR ST_OUTPUT-AUDAT.
SELECT-OPTIONS: SVBTYP FOR ST_OUTPUT-VBTYP.
SELECT VBAK~KUNNR VBAK~VBELN VBAK~AUDAT VBAK~VBTYP VBAP~MATNR VBAP~ZMENG VBAP~NETPR VBAP~NETWR MAKT~MAKTX INTO TABLE IT_OUTPUT
FROM VBAK
INNER JOIN VBAP ON VBAK~VBELN = VBAP~VBELN
WHERE VBAK~KUNNR = SKUNNR
VBAK~AUDAT = SAUDAT
VBAK~VBTYP = SVBTYP.
<u><b>
Check this sample</b></u>
Select single Vbrk~Bukrs Vbrk~Kunrg Vbrk~Vbeln
Vbrk~Fkdat Vbrk~Bstnk_Vf Vbrk~Zterm
Tvzbt~Vtext
Vbak~Vbeln Vbak~Bstdk
Likp~Vbeln Likp~lfdat Likp~Lfuhr
into w_vbrk
from vbrk
inner join Tvzbt on Tvzbt~Zterm = Vbrk~Zterm and
Tvzbt~Spras = sy-langu
Inner join Vbfa as SalesLnk
on SalesLnk~vbeln = pu_vbeln and
SalesLnk~vbtyp_v = c_order
inner join Vbak on Vbak~Vbeln = SalesLnk~Vbelv
Inner join Vbfa as DeliveryLnk
on DeliveryLnk~vbeln = pu_vbeln and
DeliveryLnk~vbtyp_v = c_Delivery
inner join Likp on Likp~Vbeln = DeliveryLnk~Vbelv
where vbrk~vbeln = pu_Vbeln.
Reward all helpfull answers
Regards
Pavan
Hi,
I want to join 3 tables vbak, vbap, makt.
This is the way i wrote the program, but i didnt know how to inner join for the 3 rd table.
Plz correct this,
TYPES:
BEGIN OF TY_OUTPUT,
KUNNR TYPE VBAK-KUNNR,
VBELN TYPE VBAK-VBELN,
AUDAT TYPE VBAK-AUDAT,
VBTYP TYPE VBAK-VBTYP,
MATNR TYPE VBAP-MATNR,
ZMENG TYPE VBAP-ZMENG,
NETPR TYPE VBAP-NETPR,
NETWR TYPE VBAP-NETWR,
MAKTX TYPE MAKT-MAKTX,
END OF TY_OUTPUT.
DATA:
ST_OUTPUT TYPE TY_OUTPUT,
IT_OUTPUT TYPE TY_OUTPUT.
SELECT-OPTIONS SKUNNR FOR ST_OUTPUT-KUNNR.
SELECT-OPTIONS SAUDAT FOR ST_OUTPUT-AUDAT.
SELECT-OPTIONS SVBTYP FOR ST_OUTPUT-VBTYP.
SELECT VBAKKUNNR VBAKVBELN VBAKAUDAT VBTYP VBAKVBTYP VBAPMATNR VBAPZMENG VBAPNETPR VBAPNETWR MAKT~MAKTX INTO TABLE IT_OUTPUT FROM VBAK INNER JOIN VBAP ON
VBAKVBELN EQ VBAPVBELN WHERE VBAKKUNNR IN SKUNNR VBAKAUDAT IN SAUDAT VBAK~VBTYP IN SVBTYP.
Thanks
2007 Jul 16 8:36 AM
Hi,
The below code would help you.
TYPES:
BEGIN OF TY_OUTPUT,
KUNNR TYPE VBAK-KUNNR,
VBELN TYPE VBAK-VBELN,
AUDAT TYPE VBAK-AUDAT,
VBTYP TYPE VBAK-VBTYP,
MATNR TYPE VBAP-MATNR,
ZMENG TYPE VBAP-ZMENG,
NETPR TYPE VBAP-NETPR,
NETWR TYPE VBAP-NETWR,
MAKTX TYPE MAKT-MAKTX,
END OF TY_OUTPUT.
DATA:
ST_OUTPUT TYPE TY_OUTPUT,
IT_OUTPUT TYPE TY_OUTPUT.
SELECT-OPTIONS SKUNNR FOR ST_OUTPUT-KUNNR.
SELECT-OPTIONS SAUDAT FOR ST_OUTPUT-AUDAT.
SELECT-OPTIONS SVBTYP FOR ST_OUTPUT-VBTYP.
SELECT VBAK~KUNNR
VBAK~VBELN
VBAK~AUDAT
VBAK~VBTYP
VBAP~MATNR
VBAP~ZMENG
VBAP~NETPR
VBAP~NETWR
MAKT~MAKTX
INTO TABLE IT_OUTPUT
FROM VBAK
INNER JOIN VBAP ON VBAKVBELN EQ VBAPVBELN
INNER JOIN MAKT ON VBAPMATNR EQ MAKTMATNR
WHERE VBAK~KUNNR IN SKUNNR
VBAK~AUDAT IN SAUDAT
VBAK~VBTYP IN SVBTYP
MAKT~SPRAS EQ SY-LANGU.
<b>Reward points if this helps,</b>
Kiran
2007 Jul 16 8:36 AM
Hi,
TYPES:
BEGIN OF TY_OUTPUT,
KUNNR TYPE VBAK-KUNNR,
VBELN TYPE VBAK-VBELN,
AUDAT TYPE VBAK-AUDAT,
VBTYP TYPE VBAK-VBTYP,
MATNR TYPE VBAP-MATNR,
ZMENG TYPE VBAP-ZMENG,
NETPR TYPE VBAP-NETPR,
NETWR TYPE VBAP-NETWR,
MAKTX TYPE MAKT-MAKTX,
END OF TY_OUTPUT.
DATA:
ST_OUTPUT TYPE TY_OUTPUT,
IT_OUTPUT TYPE TY_OUTPUT.
SELECT-OPTIONS SKUNNR FOR ST_OUTPUT-KUNNR.
SELECT-OPTIONS SAUDAT FOR ST_OUTPUT-AUDAT.
SELECT-OPTIONS SVBTYP FOR ST_OUTPUT-VBTYP.
<b>SELECT VBAKKUNNR VBAKVBELN VBAKAUDAT VBTYP VBAKVBTYP VBAPMATNR VBAPZMENG VBAPNETPR VBAPNETWR MAKT~MAKTX INTO TABLE IT_OUTPUT FROM VBAK INNER JOIN VBAP ON
VBAKVBELN EQ VBAPVBELN INNER JOIN MAKT ON VBAPMATNR EQ MAKTMATNR WHERE VBAKKUNNR IN SKUNNR VBAKAUDAT IN SAUDAT VBAK~VBTYP IN SVBTYP</b>
Regards,
Himanshu
2007 Jul 16 8:38 AM
Hi try like this
TYPES:
BEGIN OF TY_OUTPUT,
KUNNR TYPE VBAK-KUNNR,
VBELN TYPE VBAK-VBELN,
AUDAT TYPE VBAK-AUDAT,
VBTYP TYPE VBAK-VBTYP,
MATNR TYPE VBAP-MATNR,
ZMENG TYPE VBAP-ZMENG,
NETPR TYPE VBAP-NETPR,
NETWR TYPE VBAP-NETWR,
MAKTX TYPE MAKT-MAKTX,
END OF TY_OUTPUT.
DATA:
ST_OUTPUT TYPE TY_OUTPUT,
IT_OUTPUT TYPE TY_OUTPUT.
SELECT-OPTIONS: SKUNNR FOR ST_OUTPUT-KUNNR.
SELECT-OPTIONS: SAUDAT FOR ST_OUTPUT-AUDAT.
SELECT-OPTIONS: SVBTYP FOR ST_OUTPUT-VBTYP.
SELECT VBAK~KUNNR VBAK~VBELN VBAK~AUDAT VBAK~VBTYP VBAP~MATNR VBAP~ZMENG VBAP~NETPR VBAP~NETWR MAKT~MAKTX INTO TABLE IT_OUTPUT
FROM VBAK
INNER JOIN VBAP ON VBAK~VBELN = VBAP~VBELN
WHERE VBAK~KUNNR = SKUNNR
VBAK~AUDAT = SAUDAT
VBAK~VBTYP = SVBTYP.
<u><b>
Check this sample</b></u>
Select single Vbrk~Bukrs Vbrk~Kunrg Vbrk~Vbeln
Vbrk~Fkdat Vbrk~Bstnk_Vf Vbrk~Zterm
Tvzbt~Vtext
Vbak~Vbeln Vbak~Bstdk
Likp~Vbeln Likp~lfdat Likp~Lfuhr
into w_vbrk
from vbrk
inner join Tvzbt on Tvzbt~Zterm = Vbrk~Zterm and
Tvzbt~Spras = sy-langu
Inner join Vbfa as SalesLnk
on SalesLnk~vbeln = pu_vbeln and
SalesLnk~vbtyp_v = c_order
inner join Vbak on Vbak~Vbeln = SalesLnk~Vbelv
Inner join Vbfa as DeliveryLnk
on DeliveryLnk~vbeln = pu_vbeln and
DeliveryLnk~vbtyp_v = c_Delivery
inner join Likp on Likp~Vbeln = DeliveryLnk~Vbelv
where vbrk~vbeln = pu_Vbeln.
Reward all helpfull answers
Regards
Pavan