2007 Dec 12 11:19 AM
please help me to find the error
I am not able to fetch data.
*join t178t as x1
*on p1kondm = x1kondm
Error is in this above query part
without this its woriking
REPORT YINTERACTIVEPROGRAM01.
TABLES:VBAP,
VBPA,
VBRP,
VBRK,
KNA1,
ADRC,
TPAR,
TVKGG,
TVM1T,
TVM2T,
TVM3T,
TVM4T,
VBKD,
SZA1_D0100,
T178T.
TYPES:BEGIN OF TY_TAB,
VBELN LIKE VBAK-VBELN,
VKORG LIKE VBAK-VKORG,
ERDAT LIKE VBAK-ERDAT,
AUGRU LIKE VBAK-AUGRU,
BSTDK LIKE VBKD-BSTDK,
BSTDK_E LIKE VBKD-BSTDK_E,
spart like vbap-spart,
kondm like vbap-kondm,
waerk like vbap-waerk,
netwr like vbap-netwr,
kwmeng like vbap-kwmeng,
vkaus like vbap-vkaus,
land1 like vbpa-land1,
nrart like tpar-nrart,
vtext like tpar-vtext,
parvw like tpar-parvw,
name1 like adrc-name1,
name2 like adrc-name2,
name3 like adrc-name3,
name4 like adrc-name4,
ort01 like kna1-ort01,
pstlz like kna1-pstlz,
vtext like t178t-vtext,
END OF TY_TAB.
DATA: ITAB TYPE STANDARD TABLE OF TY_TAB WITH HEADER LINE.
parameters:salesno like itab-vbeln.
select s1~vbeln
s1~vkorg
s1~erdat
s1~augru
k1~BSTDK
k1~BSTDK_E
p1~spart
p1~kondm
p1~waerk
p1~netwr
p1~kwmeng
p1~vkaus
r1~land1
t1~nrart
t1~vtext
t1~parvw
n1~name1
n1~name2
n1~name3
n1~name4
c1~ort01
c1~pstlz
x1~vtext
into corresponding fields of table itab
from vbak as s1
join VBKD as k1
on s1vbeln = k1VBELN
join vbap as p1
on k1vbeln = p1vbeln
join t178t as x1
on p1kondm = x1kondm
join vbpa as r1
on p1vbeln = r1vbeln
join tpar as t1
on r1parvw = t1parvw
join ADRC as n1
on r1adrnr = n1addrnumber
join kna1 as c1
on r1land1 = c1land1
where k1vbeln = salesno and s1vbeln = salesno and p1~vbeln = salesno
and r1~vbeln = salesno.
loop AT ITAB.
WRITE : /(30)'VBELN: ', ITAB-VBELN,
/(30)'VKORG: ', ITAB-VKORG,
/(30)'ERDAT: ', ITAB-ERDAT,
/(30)'AUGRU: ', ITAB-AUGRU,
/(30)'BSTDK: ', ITAB-BSTDK,
/(30)'BSTDK_E:', ITAB-BSTDK_E,
/(30)'SPART: ', itab-spart,
/(30)'KONDM: ', itab-kondm,
/(30)'WAERK: ', itab-waerk,
/(18)'NETWR: ' , itab-netwr,
/(18)'KWMENG: ', itab-kwmeng,
/(10)'VKAUS:', itab-vkaus,
/(30)'LAND1:', itab-land1,
/(30)'NRART:', itab-nrart,
/(30)'PARVW:', itab-parvw,
/(30)'ADDR1:', itab-name1,
/(30)'ADDR2:', itab-name2,
/(30)'ADDR3:', itab-name3,
/(30)'ADDR4:', itab-name4,
/(30)'PSTLZ:', itab-pstlz,
/(30)'ORT01:', itab-ort01,
/(30)'Compiler desc:', itab-vtext.
uline.
ENDLOOP.
if sy-subrc <> 0.
write : / 'No data found'.
endif.
2007 Dec 12 11:44 AM
Hi,
i Got the output please check the where contition.
TABLES:VBAP,
VBPA,
VBRP,
VBRK,
KNA1,
ADRC,
TPAR,
TVKGG,
TVM1T,
TVM2T,
TVM3T,
TVM4T,
VBKD,
SZA1_D0100,
T178T.
TYPES:BEGIN OF TY_TAB,
VBELN LIKE VBAK-VBELN,
VKORG LIKE VBAK-VKORG,
ERDAT LIKE VBAK-ERDAT,
AUGRU LIKE VBAK-AUGRU,
BSTDK LIKE VBKD-BSTDK,
BSTDK_E LIKE VBKD-BSTDK_E,
spart like vbap-spart,
kondm like vbap-kondm,
waerk like vbap-waerk,
netwr like vbap-netwr,
kwmeng like vbap-kwmeng,
vkaus like vbap-vkaus,
land1 like vbpa-land1,
nrart like tpar-nrart,
vtext like tpar-vtext,
parvw like tpar-parvw,
name1 like adrc-name1,
name2 like adrc-name2,
name3 like adrc-name3,
name4 like adrc-name4,
ort01 like kna1-ort01,
pstlz like kna1-pstlz,
vtext like t178t-vtext,
END OF TY_TAB.
DATA: ITAB TYPE STANDARD TABLE OF TY_TAB WITH HEADER LINE.
parameters:salesno like itab-vbeln.
select s1~vbeln
s1~vkorg
s1~erdat
s1~augru
k1~BSTDK
k1~BSTDK_E
p1~spart
p1~kondm
p1~waerk
p1~netwr
p1~kwmeng
p1~vkaus
r1~land1
t1~nrart
t1~vtext
t1~parvw
n1~name1
n1~name2
n1~name3
n1~name4
c1~ort01
c1~pstlz
x1~vtext
into corresponding fields of table itab
from vbak as s1
join VBKD as k1
on s1vbeln = k1VBELN
join vbap as p1
on k1vbeln = p1vbeln
join t178t as x1
on p1kondm = x1kondm
join vbpa as r1
on p1vbeln = r1vbeln
join tpar as t1
on r1parvw = t1parvw
join ADRC as n1
on r1adrnr = n1addrnumber
join kna1 as c1
on r1land1 = c1land1
up to 10 rows.
*where k1vbeln = salesno and s1vbeln = salesno and p1~vbeln = salesno
*and r1~vbeln = salesno.
loop AT ITAB.
WRITE : /(30)'VBELN: ', ITAB-VBELN,
/(30)'VKORG: ', ITAB-VKORG,
/(30)'ERDAT: ', ITAB-ERDAT,
/(30)'AUGRU: ', ITAB-AUGRU,
/(30)'BSTDK: ', ITAB-BSTDK,
/(30)'BSTDK_E:', ITAB-BSTDK_E,
/(30)'SPART: ', itab-spart,
/(30)'KONDM: ', itab-kondm,
/(30)'WAERK: ', itab-waerk,
/(18)'NETWR: ' , itab-netwr,
/(18)'KWMENG: ', itab-kwmeng,
/(10)'VKAUS:', itab-vkaus,
/(30)'LAND1:', itab-land1,
/(30)'NRART:', itab-nrart,
/(30)'PARVW:', itab-parvw,
/(30)'ADDR1:', itab-name1,
/(30)'ADDR2:', itab-name2,
/(30)'ADDR3:', itab-name3,
/(30)'ADDR4:', itab-name4,
/(30)'PSTLZ:', itab-pstlz,
/(30)'ORT01:', itab-ort01,
/(30)'Compiler desc:', itab-vtext.
uline.
ENDLOOP.
if sy-subrc <> 0.
write : / 'No data found'.
endif.
2007 Dec 12 11:22 AM
Hi,
What type of error ur getting?????/
Dont use joins it will affect on performance, better to us FOR ALL ENTRIES.
Reagrds,
Prashant
2007 Dec 12 11:34 AM
hi,
u getting error while activating this report?
As here i am getting output....
Message was edited by:
Dhwani shah
2007 Dec 12 11:38 AM
No i am getting any data....there is a major problem while joining the T178T table how will i join it ?
2007 Dec 12 11:42 AM
hi,
ya thats true but i think u should not use these many joints...
U should use two or three internal tables.
Because here what is going to happen that if any table doesn't have data of specified condition than u will not get anything.
So better to use more select statements
2007 Dec 12 11:47 AM
Hi jyotirmoy,
I've checked your program in my system by including
>join t178t as x1
>on p1kondm = x1kondm
... I found nothing wrong....I'm getting some output as well
So first please check tables VBAP & T178T for entries against field KONDM in SE16...
2007 Dec 12 11:44 AM
Hi,
i Got the output please check the where contition.
TABLES:VBAP,
VBPA,
VBRP,
VBRK,
KNA1,
ADRC,
TPAR,
TVKGG,
TVM1T,
TVM2T,
TVM3T,
TVM4T,
VBKD,
SZA1_D0100,
T178T.
TYPES:BEGIN OF TY_TAB,
VBELN LIKE VBAK-VBELN,
VKORG LIKE VBAK-VKORG,
ERDAT LIKE VBAK-ERDAT,
AUGRU LIKE VBAK-AUGRU,
BSTDK LIKE VBKD-BSTDK,
BSTDK_E LIKE VBKD-BSTDK_E,
spart like vbap-spart,
kondm like vbap-kondm,
waerk like vbap-waerk,
netwr like vbap-netwr,
kwmeng like vbap-kwmeng,
vkaus like vbap-vkaus,
land1 like vbpa-land1,
nrart like tpar-nrart,
vtext like tpar-vtext,
parvw like tpar-parvw,
name1 like adrc-name1,
name2 like adrc-name2,
name3 like adrc-name3,
name4 like adrc-name4,
ort01 like kna1-ort01,
pstlz like kna1-pstlz,
vtext like t178t-vtext,
END OF TY_TAB.
DATA: ITAB TYPE STANDARD TABLE OF TY_TAB WITH HEADER LINE.
parameters:salesno like itab-vbeln.
select s1~vbeln
s1~vkorg
s1~erdat
s1~augru
k1~BSTDK
k1~BSTDK_E
p1~spart
p1~kondm
p1~waerk
p1~netwr
p1~kwmeng
p1~vkaus
r1~land1
t1~nrart
t1~vtext
t1~parvw
n1~name1
n1~name2
n1~name3
n1~name4
c1~ort01
c1~pstlz
x1~vtext
into corresponding fields of table itab
from vbak as s1
join VBKD as k1
on s1vbeln = k1VBELN
join vbap as p1
on k1vbeln = p1vbeln
join t178t as x1
on p1kondm = x1kondm
join vbpa as r1
on p1vbeln = r1vbeln
join tpar as t1
on r1parvw = t1parvw
join ADRC as n1
on r1adrnr = n1addrnumber
join kna1 as c1
on r1land1 = c1land1
up to 10 rows.
*where k1vbeln = salesno and s1vbeln = salesno and p1~vbeln = salesno
*and r1~vbeln = salesno.
loop AT ITAB.
WRITE : /(30)'VBELN: ', ITAB-VBELN,
/(30)'VKORG: ', ITAB-VKORG,
/(30)'ERDAT: ', ITAB-ERDAT,
/(30)'AUGRU: ', ITAB-AUGRU,
/(30)'BSTDK: ', ITAB-BSTDK,
/(30)'BSTDK_E:', ITAB-BSTDK_E,
/(30)'SPART: ', itab-spart,
/(30)'KONDM: ', itab-kondm,
/(30)'WAERK: ', itab-waerk,
/(18)'NETWR: ' , itab-netwr,
/(18)'KWMENG: ', itab-kwmeng,
/(10)'VKAUS:', itab-vkaus,
/(30)'LAND1:', itab-land1,
/(30)'NRART:', itab-nrart,
/(30)'PARVW:', itab-parvw,
/(30)'ADDR1:', itab-name1,
/(30)'ADDR2:', itab-name2,
/(30)'ADDR3:', itab-name3,
/(30)'ADDR4:', itab-name4,
/(30)'PSTLZ:', itab-pstlz,
/(30)'ORT01:', itab-ort01,
/(30)'Compiler desc:', itab-vtext.
uline.
ENDLOOP.
if sy-subrc <> 0.
write : / 'No data found'.
endif.
2007 Dec 12 12:11 PM
Hey u have done well but my requirement is against one vbeln i have to get beck the other values....so i cant ignore the where condition.