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

relation between knb1 and adr6

Former Member
0 Likes
3,901

Hi,

I´m searching for the relation between the table KNB1 and the ADR6 to find the email of a customer, but I´m having serious problems.

Can someone help me, please????

Thanks!!

1 ACCEPTED SOLUTION
Read only

Former Member
2,795

Here is the code for you Email id from KNB1 and ADR6 .....

REPORT  ZAASD line-size  100.

tables  :  KNA1 , knb1 , adr6 .

data :  begin of  IT_DATA occurs  0 .
include  structure    KNB1  .
 DATA  :end of iT_DATA .
*
data :  begin of  IT_DATA2    occurs  0,
kunnr  LIKE  kna1-kunnr ,
adrnr  LIKE  KNA1-adrnr,
addrnumber  LIKE  adr6-addrnumber ,
SMTP_ADDR   like  adr6-SMTP_ADDR ,
end of iT_DATA2  .


select-options  :s_kunnr  for  knb1-kunnr..


*
SELECT *  FROM KNB1 INTO  TABLE IT_DATA
WHERE KUNNR IN s_kunnr.
*
IF sy-subrc EQ 0.
  SELECT KNA1~KUNNR kna1~adrnr   adr6~addrnumber  adr6~SMTP_ADDR    INTO  TABLE  IT_DATA2
    FROM KNA1 LEFT OUTER JOIN adr6 ON kna1~adrnr EQ adr6~addrnumber
    FOR ALL ENTRIES IN  IT_DATA
    WHERE KNA1~KUNNR  EQ IT_DATA-KUNNR .

ENDIF.

LOOP AT IT_DATA2 .
WRITE  :  / IT_DATA2-KUNNR  , IT_DATA2-ADRNR  ,IT_DATA2-SMTP_ADDR  .
ENDLOOP.

reward points if it is usefull....

Girish

Girish

Hi,

I´m searching for the relation between the table KNB1 and the ADR6 to find the email of a customer, but I´m having serious problems.

Can someone help me, please????

Thanks!!

14 REPLIES 14
Read only

Former Member
0 Likes
2,795

Hello,

<b>KNB1-PERNR and ADR6-PERNR

KNB1-ADRNR and ADR6-ADRNR</b>

VAsanth

Read only

Former Member
0 Likes
2,795

try KNA1/KNB1 and get ADRNR of customer to get data from ADR6.

Regards

peram

Read only

Former Member
0 Likes
2,795

Hi,

You can find PERNR in both tables.

Regards

Read only

0 Likes
2,795

In the table ADR6 I find the field persnumber, in the table KNB1 the field PERNR, and they are differents

Read only

0 Likes
2,795

using customer number from KNb1, goto KNA1 and get ADRNR for that customer, then goto ADR6 using ADRNR and find out the mail id

Read only

0 Likes
2,795

Hello,

DO like this.

data: lv_email like adr6-SMTP_ADDR.
Select single SMTP_ADDR from adr6 into lv_email where PERSNUMBER = knb1-pernr.
write: lv_email.

Vasanth

Read only

0 Likes
2,795

Thanks, but the persnumber and the pernr have differents values.

Read only

Former Member
0 Likes
2,795

You have to link via KNA1 (field ADRNR), then link KNA1 to KNB1

Read only

0 Likes
2,795

I tried it, but the field ADRNR not is unique.

Read only

0 Likes
2,795

This will be true if your customer is set up in more than one company code.

What data do you need from KNB1?

Read only

Former Member
2,796

Here is the code for you Email id from KNB1 and ADR6 .....

REPORT  ZAASD line-size  100.

tables  :  KNA1 , knb1 , adr6 .

data :  begin of  IT_DATA occurs  0 .
include  structure    KNB1  .
 DATA  :end of iT_DATA .
*
data :  begin of  IT_DATA2    occurs  0,
kunnr  LIKE  kna1-kunnr ,
adrnr  LIKE  KNA1-adrnr,
addrnumber  LIKE  adr6-addrnumber ,
SMTP_ADDR   like  adr6-SMTP_ADDR ,
end of iT_DATA2  .


select-options  :s_kunnr  for  knb1-kunnr..


*
SELECT *  FROM KNB1 INTO  TABLE IT_DATA
WHERE KUNNR IN s_kunnr.
*
IF sy-subrc EQ 0.
  SELECT KNA1~KUNNR kna1~adrnr   adr6~addrnumber  adr6~SMTP_ADDR    INTO  TABLE  IT_DATA2
    FROM KNA1 LEFT OUTER JOIN adr6 ON kna1~adrnr EQ adr6~addrnumber
    FOR ALL ENTRIES IN  IT_DATA
    WHERE KNA1~KUNNR  EQ IT_DATA-KUNNR .

ENDIF.

LOOP AT IT_DATA2 .
WRITE  :  / IT_DATA2-KUNNR  , IT_DATA2-ADRNR  ,IT_DATA2-SMTP_ADDR  .
ENDLOOP.

reward points if it is usefull....

Girish

Girish

Read only

0 Likes
2,795

Thanks Girish and everybody!!!

Read only

Former Member
0 Likes
2,795

thanks!!

Read only

Former Member
0 Likes
2,795

The help was very usefull.