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

How do i write select

Former Member
0 Likes
530

Hi all,

I am declaring the internal table like below

data : begin of it_mska occurs 0.

include structure mska.

data : prctr like marc-prctr.

data : end of it_mska.

I want join the MSKA and MARC. But I want all the fields from MSKA and prctr from MARC.

help me in this .

regards,

Ajay

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
501

You'll want to add some WHERE clauses, but this should get you in the ball game


TABLES: mara, marc.

DATA : BEGIN OF it_mska OCCURS 0.
        INCLUDE STRUCTURE mska.
DATA : prctr LIKE marc-prctr.
DATA : END OF it_mska.


SELECT * INTO CORRESPONDING FIELDS OF TABLE it_mska
  FROM mara AS a
  JOIN marc AS b ON a~matnr = b~matnr.

3 REPLIES 3
Read only

Former Member
0 Likes
502

You'll want to add some WHERE clauses, but this should get you in the ball game


TABLES: mara, marc.

DATA : BEGIN OF it_mska OCCURS 0.
        INCLUDE STRUCTURE mska.
DATA : prctr LIKE marc-prctr.
DATA : END OF it_mska.


SELECT * INTO CORRESPONDING FIELDS OF TABLE it_mska
  FROM mara AS a
  JOIN marc AS b ON a~matnr = b~matnr.

Read only

Former Member
0 Likes
501

Hi,

do this way ....


data : begin of it_mska occurs 0.
include structure mska.
data : end of it_mska.

data : begin of it_marc occurs 0,
     matnr like marc-matnr,
     werks like marc-werks,
     prctr like marc-prctr,
   end of it_marc.

data : begin of it_final occurs 0.
include structure mska.
data : prctr like marc-prctr.
data : end of it_final.

select * from mska into table it_mska where <conditions>.
if sy-subrc = 0.
endif.

if not it_mska[] is initial.
  select matnr werks prctr from marc into it_marc 
     for all entries of it_mska
     where matnr = it_mska-matnr and
              werks = it_mska-werks.
  if sy-subrc = 0.
    sort it_marc by matnr werks.
  endif.
endif.
 
loop at it_mska.
  read table it_marc with key matnr = it_mska-matnr 
                                          werks = it_mska-werks.
  if sy-subrc = 0.
    move-corresponding it_marc to it_final.
    move-corresponding it_mska to it_final.
    append it_final.
    clear it_final.
 endif.
endloop. 
 

Read only

Former Member
0 Likes
501

Hi Ajay,

TABLES: mara, marc.

DATA : BEGIN OF it_mska OCCURS 0.

INCLUDE STRUCTURE mska.

DATA : prctr LIKE marc-prctr.

DATA : END OF it_mska.

Select *

into corresponding fields of table it_mska

from MSKA as S

LEFT OUTER JOIN MARC AS p ON smatnr = pmatnr

AND swerks = pwerks..

<REMOVED BY MODERATOR>

Thanks & Regards,

Khan.

Edited by: Alvaro Tejada Galindo on Apr 28, 2008 12:48 PM