‎2008 Oct 03 7:44 AM
i want to put a section query on table vbrp vbfa and vbrk based on vbrk-vbeln and vbfa-erdat..i hav written this code but its not working.. can nnbdy suggest me sth..
SELECT v1~vbeln AS vbeln
v1~kunag AS kunag
v1~vkorg AS vkorg
v1~netwr AS netwr
v2~ntgew AS ntgew
v2~matnr AS matnr
v3~erdat AS erdat
INTO CORRESPONDING fields of table it_data1
FROM vbrk AS v1
INNER JOIN vbrp AS v2
ON v1vbeln = v2vbeln
INNER JOIN vbfa AS v3
ON v2vbeln = v3vbeln
WHERE v1~vbeln eq s_vbeln .
delete it_data1 where erdat not in s_erdat.
thanks in advance....
‎2008 Oct 03 7:48 AM
in VBFA just understand the meaning of vbeln and vbelv.
I think it will solve u'r problem.
S@meer
‎2008 Oct 03 8:09 AM
Try this code
SELECT v1~vbeln
v1~kunag
v1~vkorg
v1~netwr
v2~ntgew
v2~matnr
v3~erdat
INTO CORRESPONDING FIELDS OF TABLE it_data1
FROM vbrk AS v1
INNER JOIN vbrp AS v2
ON v1vbeln = v2vbeln
INNER JOIN vbfa AS v3
ON v1vbeln = v3vbeln " v1 not v2
WHERE v1~vbeln EQ s_vbeln .
Regards
Bala Krishna
Edited by: Bala Krishna on Oct 3, 2008 12:39 PM
Edited by: Bala Krishna on Oct 3, 2008 12:39 PM
‎2008 Oct 03 7:52 AM
hi
try with this code...
SELECT v1~vbeln
v1~kunag
v1~vkorg
v1~netwr
v2~ntgew
v2~matnr
v3~erdat INTO CORRESPONDING fields of table it_data1
FROM vbrk AS v1
INNER JOIN vbrp AS v2
ON v1vbeln = v2vbeln
INNER JOIN vbfa AS v3
ON v2vbeln = v3vbeln
WHERE v1~vbeln in s_vbeln .
loop at it_data1 into wa_data1 where erdat not in s_erdat.
delete it_data1 from wa_data1.
endloop.
‎2008 Oct 03 8:02 AM
hi .....
its giving me an error s_erdat is not an internal table.... s_erdat and s_vbeln are parameter names...
‎2008 Oct 03 8:08 AM
hi
try this....
SELECT v1~vbeln
v1~kunag
v1~vkorg
v1~netwr
v2~ntgew
v2~matnr
v3~erdat INTO CORRESPONDING fields of table it_data1
FROM vbrk AS v1
INNER JOIN vbrp AS v2
ON v1vbeln = v2vbeln
INNER JOIN vbfa AS v3
ON v2vbeln = v3vbeln
WHERE v1~vbeln EQ s_vbeln .
loop at it_data1 into wa_data1 where erdat NE s_erdat.
delete it_data1 from wa_data1.
endloop.
‎2008 Oct 03 7:53 AM
Hi,
If S_vbeln is select-options then-
write-
SELECT v1~vbeln
v1~kunag
v1~vkorg
v1~netwr
v2~ntgew
v2~matnr
v3~erdat
INTO CORRESPONDING fields of table it_data1
FROM vbrk AS v1
INNER JOIN vbrp AS v2
ON v1vbeln = v2vbeln
INNER JOIN vbfa AS v3
ON v2vbeln = v3vbeln
WHERE v1~vbeln IN s_vbeln
and v3~erdat IN s_erdat.
And do not use into corresponding fields of , better make a internal table with the specified fields and use into table.
‎2008 Oct 03 7:55 AM
Hi,
Try like this.....
SELECT v1~vbeln AS vbeln
v1~kunag AS kunag
v1~vkorg AS vkorg
v1~netwr AS netwr
v2~ntgew AS ntgew
v2~matnr AS matnr
v3~erdat AS erdat
INTO CORRESPONDING fields of table it_data1
FROM vbrk AS v1
INNER JOIN vbrp AS v2
ON v1~vbeln = v2~vbeln
INNER JOIN vbfa AS v3
ON v1~vbeln = v3~vbeln
WHERE v1~vbeln in s_vbeln
and v3~erdat in s_erdat.
Hope it will helps
‎2008 Oct 03 8:09 AM
Hi,
If s_vbeln and s_erdat is parameters not select-options means
SELECT v1~vbeln AS vbeln
v1~kunag AS kunag
v1~vkorg AS vkorg
v1~netwr AS netwr
v2~ntgew AS ntgew
v2~matnr AS matnr
v3~erdat AS erdat
INTO CORRESPONDING fields of table it_data1
FROM vbrk AS v1
INNER JOIN vbrp AS v2
ON v1~vbeln = v2~vbeln
INNER JOIN vbfa AS v3
ON v1~vbeln = v3~vbeln
WHERE v1~vbeln eq s_vbeln
and v3~erdat ne s_erdat.