‎2008 Mar 26 9:28 AM
HI,
I have to develop a report in which I have to deal with 2 tables MKPF and MSEG. Can you please tell me which should I start with in my select st. in the
Start-Of-Selection. event block.
Thanks .
‎2008 Mar 26 9:42 AM
hi ,
tables:mseg,MKPF.
data: begin of it_mseg occurs 0,
MBLNR like mseg-MBLNR,
MJAHR like mseg-MJAHR,
ZEILE like mseg-ZEILE,
end of it_mseg.
data: begin of it_mkpf occurs 0,
MBLNR like mkpf-MBLNR,
MJAHR like mkpf-MJAHR,
BLART like mkpf-BLART,
end of it_mkpf.
select-options:s_mblnr for mkpf-mblnr.
select MBLNR
MJAHR
ZEILE
from mseg
into table it_mseg
where mblnr in s_mblnr.
select MBLNR
MJAHR
BLART
from mkpf
into table it_mkpf
for all entries in it_mseg
where mblnr = it_mseg-mblnr.
regards,
venkat.
‎2008 Mar 26 9:31 AM
Depends on what field you are using for the condition check . Usually posting dates so use MKPF. You may aswell inner join the two tables.
‎2008 Mar 26 9:36 AM
Hi,
You can start with the Table mkpf , however it depends on where you are using the conditional checks
‎2008 Mar 26 9:34 AM
SELECT AMBLNR AERDAT AERNAM AXBLNR ABLDAT ALIFNR AWERKS AIVAL
AMATDOC ASWERK AREV_DATE ARCAN BMATNR BGR_MADE BMBLNR BMJAHR B~MENGE
FROM MKPF AS A INNER JOIN MSEG AS B
ON AG1SNO = BG1SNO
INTO CORRESPONDING FIELDS OF TABLE ITAB
WHERE A~BUDAT IN ERDAT AND
A~LIFNR IN LIFNR AND
A~WERKS IN WERKS AND
B~MATNR IN MATNR.
‎2008 Mar 26 9:35 AM
‎2008 Mar 26 9:42 AM
I have this condition, to get the list of material with respect to the list from table mseg.....
‎2008 Mar 26 9:37 AM
see the sample code....
select single msegmblnr msegmenge msegdmbtr msegwerks mseg~lgort
msegbwart msegshkzg msegebeln msegebelp
into corresponding fields of table
output2 from mseg inner join mkpf on ( msegmblnr = mkpfmblnr and msegmjahr = mkpfmjahr )
and msegbwart = '351' and msegshkzg = 'S'
and mkpf~budat in s_date.
Regards
Sugumar G
‎2008 Mar 26 9:39 AM
HI,
First u should select from mkpf table that is master tabel
than based on u can selct the data from mseg table.
Please dont use join condition because we r using cluster table(MSEG) and pooled table.
‎2008 Mar 26 9:42 AM
hi ,
tables:mseg,MKPF.
data: begin of it_mseg occurs 0,
MBLNR like mseg-MBLNR,
MJAHR like mseg-MJAHR,
ZEILE like mseg-ZEILE,
end of it_mseg.
data: begin of it_mkpf occurs 0,
MBLNR like mkpf-MBLNR,
MJAHR like mkpf-MJAHR,
BLART like mkpf-BLART,
end of it_mkpf.
select-options:s_mblnr for mkpf-mblnr.
select MBLNR
MJAHR
ZEILE
from mseg
into table it_mseg
where mblnr in s_mblnr.
select MBLNR
MJAHR
BLART
from mkpf
into table it_mkpf
for all entries in it_mseg
where mblnr = it_mseg-mblnr.
regards,
venkat.
‎2008 Mar 26 9:47 AM
hi
its depend of the ur requirement....coz MSEG is the master table and MKPF hv posting date... better to do the inner join both of table
regatd
nawa
‎2008 Mar 26 9:50 AM
hi,
START-OF-SELECTION.
SELECT
MSEG~EXBWR
'MSEG~EXVKW
MSEG~GRUND
'MSEG~KDAUF
MSEG~KDEIN
MSEG~KDPOS
MSEG~KOSTL
MSEG~KUNNR
MSEG~KZBEW
INTO CORRESPONDING FIELDS OF TABLE ITAB
FROM MKPF INNER JOIN MSEG
ON MKPF~MANDT = MSEG~MANDT
AND MKPF~MBLNR = MSEG~MBLNR
AND MKPF~MJAHR = MSEG~MJAHR
FOR ALL ENTRIES IN MATNR
WHERE MATNR = MATNR-LOW
AND MSEG~AUFNR IN AUFNR
AND MKPF~BUDAT IN BUDAT
AND MSEG~BWART IN BWART
AND MSEG~CHARG IN CHARG
AND MSEG~DMBTR IN DMBTR
AND MSEG~KUNNR IN KUNNR
AND MSEG~LGORT IN LGORT
AND MSEG~LIFNR IN LIFNR
AND MKPF~MBLNR IN MBLNR
AND MKPF~MJAHR IN MJAHR
AND MSEG~SOBKZ IN SOBKZ
AND MKPF~USNAM IN USNAM
AND MKPF~VGART IN VGART
AND MSEG~WERKS IN WERKS
AND MSEG~XAUTO IN XAUTO
AND MKPF~XBLNR IN XBLNRRegards,
Ballack.
Reward Points if helpful.
‎2008 Mar 27 5:11 AM
Hi,
Start-Of-Selection.
MSEG TABLE
select mblnr lgort ablad wempf menge from mseg into corresponding
fields of table t_mseg where
werks = '5900' and
bwart = '101' and
bwart = '102' and
wempf = wa_mseg-wempf.
LOOP AT t_mseg INTO wa_mseg.
*MKPF TABLE
select budat mblnr xblnr from mkpf into corresponding
fields of table t_mkpf where
budat ge pa_sdate and
budat le pa_edate .
endloop.
****************************************************************
Are my select st. correct?
‎2008 Mar 27 5:27 AM
‎2008 Mar 27 5:45 AM
Hi,
Try like this.
select mblnr lgort ablad wempf menge from mseg into corresponding
fields of table t_mseg where
werks = '5900' and
bwart = '101' and
bwart = '102' .
*MKPF TABLE
select budat mblnr xblnr from mkpf into corresponding
fields of table t_mkpf
for all entries in t_mseg
where mblnr = t_mseg-mblnr and
budat ge pa_sdate and
budat le pa_edate .