Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

inner join

Former Member
0 Likes
1,283

not working ?

TABLES : vbak ,vbap.

DATA : BEGIN OF itab OCCURS 0,

   vbeln TYPE vbak-vbeln,

   erdat TYPE vbak-erdat,

   erzet TYPE vbak-erzet,

   posnr TYPE vbap-posnr,

   matwa TYPE vbap-matwa,

   posar TYPE vbap-posar,

   END OF itab.

DATA gt_orn LIKE STANDARD TABLE OF itab.

SELECT

   vb~vbeln

   vb~erdat

   vb~erzet

   vp~posnr

   vp~matwa

   vp~posar

   INTO CORRESPONDING FIELDS OF TABLE itab

   FROM

   vbak AS vb

   INNER JOIN

   vbap AS vp

   ON

   vb~vbeln = vp~vbeln

   WHERE

   vb~erdat = '14.11.2013'.

   LOOP AT gt_orn INTO itab.

   WRITE: / vbap-vbeln , vbak-erdat, vbak-erzet.

ENDLOOP.

1 ACCEPTED SOLUTION
Read only

nabheetscn
SAP Champion
SAP Champion
0 Likes
1,229

Change like this

TABLES : vbak ,vbap.

DATA : BEGIN OF itab OCCURS 0,

   vbeln TYPE vbak-vbeln,

   erdat TYPE vbak-erdat,

   erzet TYPE vbak-erzet,

   posnr TYPE vbap-posnr,

   matwa TYPE vbap-matwa,

   posar TYPE vbap-posar,

   END OF itab.

DATA gt_orn LIKE STANDARD TABLE OF itab.

data:lv_datum type erdat.

lv_datum = '20131114'.

SELECT

   vb~vbeln

   vb~erdat

   vb~erzet

   vp~posnr

   vp~matwa

   vp~posar

   INTO CORRESPONDING FIELDS OF TABLE itab

   FROM

   vbak AS vb

   INNER JOIN

   vbap AS vp

   ON

   vb~vbeln = vp~vbeln

   WHERE

   vb~erdat = lv_datum.

   LOOP AT gt_orn INTO itab.

   WRITE: / vbap-vbeln , vbak-erdat, vbak-erzet.

ENDLOOP.

7 REPLIES 7
Read only

nabheetscn
SAP Champion
SAP Champion
0 Likes
1,230

Change like this

TABLES : vbak ,vbap.

DATA : BEGIN OF itab OCCURS 0,

   vbeln TYPE vbak-vbeln,

   erdat TYPE vbak-erdat,

   erzet TYPE vbak-erzet,

   posnr TYPE vbap-posnr,

   matwa TYPE vbap-matwa,

   posar TYPE vbap-posar,

   END OF itab.

DATA gt_orn LIKE STANDARD TABLE OF itab.

data:lv_datum type erdat.

lv_datum = '20131114'.

SELECT

   vb~vbeln

   vb~erdat

   vb~erzet

   vp~posnr

   vp~matwa

   vp~posar

   INTO CORRESPONDING FIELDS OF TABLE itab

   FROM

   vbak AS vb

   INNER JOIN

   vbap AS vp

   ON

   vb~vbeln = vp~vbeln

   WHERE

   vb~erdat = lv_datum.

   LOOP AT gt_orn INTO itab.

   WRITE: / vbap-vbeln , vbak-erdat, vbak-erzet.

ENDLOOP.

Read only

arivazhagan_sivasamy
Active Contributor
0 Likes
1,229

Hi Semih,

Please pass the date like below

vb~erdat = '20131114'.

Arivazhagan S

Read only

Former Member
0 Likes
1,229

And also change "INTO CORRESPONDING FIELDS OF TABLE itab" statement to gt_orn

Read only

Former Member
0 Likes
1,229

tables : vbak , vbap.

data : begin of gt_itab occurs 0,

   vbeln  like vbap-vbeln,

   posnr like  vbap-posnr,

   matnr like vbap-matnr,

   arktx like vbap-arktx,

   kunnr like vbak-kunnr,

   erdat like vbak-erdat,

   end of gt_itab.

   data gt_tab  like standard table of gt_itab.

   select

     vb~vbeln  vb~posnr

     vb~matnr  vb~arktx

     vk~kunnr  vk~erdat

     into corresponding fields of table gt_tab

     from 

     vbap as vb

     inner join

     vbak as vk

     on

     vb~vbeln = vk~vbeln

     where

     vb~posnr = 20.

     

   LOOP AT gt_tab INTO gt_itab.

   WRITE: / vbap-vbeln , vbap-posnr , vbap-matnr , vbap-arktx,

   vbak-kunnr, vbak-erdat.

ENDLOOP.

Read only

0 Likes
1,229

tables : vbak , vbap.

data : begin of gt_itab occurs 0,

   vbeln  like vbap-vbeln,

   posnr like  vbap-posnr,

   matnr like vbap-matnr,

   arktx like vbap-arktx,

   kunnr like vbak-kunnr,

   erdat like vbak-erdat,

   end of gt_itab.

   data gt_tab  like standard table of gt_itab.

   select

     vb~vbeln  vb~posnr

     vb~matnr  vb~arktx

     vk~kunnr  vk~erdat

     into corresponding fields of table gt_tab

     from 

     vbap as vb

     inner join

     vbak as vk

     on

     vb~vbeln = vk~vbeln

     where

     vb~posnr = 20.

     

   LOOP AT gt_tab

   WRITE: / gt_tab -vbeln , gt_tab -posnr , gt_tab -matnr , gt_tab -arktx,

   gt_tab -kunnr, gt_tab -erdat.

ENDLOOP.

Read only

0 Likes
1,229

thank you

Read only

0 Likes
1,229

Change your erdat field's date in query like below. Because no data found about 20131411

SELECT k~vbeln k~erdat k~erzet p~posnr p~matwa p~posar

          INTO CORRESPONDING FIELDS OF TABLE gt_itab

          FROM vbap AS p

            INNER JOIN vbak AS k ON p~vbeln = k~vbeln

         WHERE  k~erdat like '%1998%'.

Best Regards

Omer Faruk