2007 Nov 22 7:10 PM
when I give in source code of function module the below statements:
SELECT vbeln bsark vtweg spart vdatu
FROM vbak
INTO TABLE itab WHERE
erdat IN s_erdat AND
vkorg IN s_vkorg AND
vtweg IN s_vtweg AND
bsark IN s_bsark AND
spart IN s_spart.
it shows the following error.
The IN operator with s_erdat is followed neither by an internal table nor by a value list.
Plz suggest what to do.
Plz reply it's urgent.
2007 Nov 22 7:17 PM
Hi Ajay
are you using this select query in Function module.If yes,then I guess you need to change the select query.IN operator is generally used with select-options.try
SELECT vbeln bsark vtweg spart vdatu
FROM vbak
INTO TABLE itab WHERE
erdat eq s_erdat AND
vkorg eq s_vkorg AND
vtweg eq s_vtweg AND
bsark eq s_bsark AND
spart eq s_spart.
For FM you can use
FOR ALL ENTRIES INstatement.
A
2007 Nov 22 7:12 PM
Remember this is for report selction screen not FM
SELECT vbeln bsark vtweg spart vdatu
FROM vbak
<b>INTO CORRESPONDING FIELDS OF TABLE itab WHERE</b>
erdat IN s_erdat AND
vkorg IN s_vkorg AND
vtweg IN s_vtweg AND
bsark IN s_bsark AND
spart IN s_spart.
in FM you can use IN statement if you have table of selection otherwise you will have to use EQ instead of IN depending on the BR.
Cheers
A
2007 Nov 22 7:16 PM
S_ERDAT is not declared as either a select-option or range table. How did you declare it?
Rob
2007 Nov 22 7:17 PM
Hi Ajay
are you using this select query in Function module.If yes,then I guess you need to change the select query.IN operator is generally used with select-options.try
SELECT vbeln bsark vtweg spart vdatu
FROM vbak
INTO TABLE itab WHERE
erdat eq s_erdat AND
vkorg eq s_vkorg AND
vtweg eq s_vtweg AND
bsark eq s_bsark AND
spart eq s_spart.
2007 Nov 22 7:20 PM
| User | Count |
|---|---|
| 6 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |