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

plz help

Former Member
0 Likes
500

sir,

i have to access dat from same field in two diffrent columns.

For eg:

SELECT aerfmg algort amatnr amblnr awerks bbudat INTO CORRESPONDING FIELDS OF

TABLE itab FROM mseg AS a INNER JOIN mkpf AS b ON

amblnr = bmblnr WHERE

a~werks = '1000' AND

a~mblnr IN ('4900000088','4900000086','4900000096','4900000104','4900000107','4900000091','4900000092','4900000093','5000000074' ) AND

a~matnr = 'DC0018' AND

a~lgort = 'FGS' AND

a~bwart = '101' AND

b~budat IN period.

SELECT algort aerfmg amatnr amblnr awerks bbudat INTO CORRESPONDING FIELDS OF

itab FROM mseg AS a INNER JOIN mkpf AS b ON

amblnr = bmblnr WHERE

a~werks = '1000' AND

a~mblnr = '4900000001' AND

a~matnr = 'DC0018' AND

a~lgort = 'EXS' AND

a~bwart = '311' AND

b~budat IN period.

ENDSELECT.

in this i want erfmg value to be in two different columns

3 REPLIES 3
Read only

Former Member
0 Likes
452

Hi,

in your itab have an additional new field.

after your select statement, loop at itab, assign the erfmg value to the new field in your itab and modify the internal table.

Read only

Former Member
0 Likes
452

Hi,

You can try like this....

create table itab with fields,

erfmg type tablename-erfmg,

erfmg1 type tablename-erfmg,lgort type tablename-lgort,

matnr type tablename-matnr and so on...

take all the fields you require in that internal table....

and change your select query like this..

******************************************

SELECT aerfmg algort amatnr amblnr awerks bbudat INTO CORRESPONDING FIELDS OF

TABLE itab FROM mseg AS a INNER JOIN mkpf AS b ON

amblnr = bmblnr WHERE

a~werks = '1000' AND

a~mblnr IN ('4900000088','4900000086','4900000096','4900000104','4900000107','4900000091','4900000092','4900000093','5000000074' ) AND

a~matnr = 'DC0018' AND

a~lgort = 'FGS' AND

a~bwart = '101' AND

b~budat IN period.

loop at itab.

itab-erfmg1 = itab-erfmg.

endloop.

SELECT algort aerfmg amatnr amblnr awerks bbudat INTO CORRESPONDING FIELDS OF

itab FROM mseg AS a INNER JOIN mkpf AS b ON

amblnr = bmblnr WHERE

a~werks = '1000' AND

a~mblnr = '4900000001' AND

a~matnr = 'DC0018' AND

a~lgort = 'EXS' AND

a~bwart = '311' AND

b~budat IN period.

ENDSELECT.

***********************************************

the changes which i have made are in bold characters check it out.

Reward if helpful.

with regards,

Syed

Read only

Former Member
0 Likes
452

Try This

declare an additinal field in your internal table.

eg: erfmg1

select data into work area

SELECT algort aerfmg amatnr amblnr awerks bbudat INTO CORRESPONDING FIELDS OF itab

FROM mseg AS a INNER JOIN mkpf AS b ON

amblnr = bmblnr WHERE

a~werks = '1000' AND

a~mblnr = '4900000001' AND

a~matnr = 'DC0018' AND

a~lgort = 'EXS' AND

a~bwart = '311' AND

b~budat IN period.

itab-erfmg1 = a~erfng or itab-erfmg = mkpf-erfmg

append itab.

clear itab.

ENDSELECT.