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

Getting error in select query

Former Member
0 Likes
1,098

Hi,

I have creatd a simple program to display customer wise sales details.but I am getting a error "wrong expression INNER in FROM clause: .the following program is:

TABLES: kna1,vbak.

SELECT-OPTIONS: customer FOR kna1-kunnr.

TYPE-POOLS:ztg1.

DATA: wa TYPE ztg1_wa,

itab TYPE ztg1_itab.

SELECT kna1kunnr vbakvbeln vbakerdat vbaknetwr INTO wa FROM kna1 innner JOIN vbak ON kna1kunnr = vbakkunnr WHERE kna1~kunnr IN customer.

APPEND wa TO itab.

ENDSELECT.

LOOP AT itab INTO wa.

AT FIRST.

WRITE:/ 'CUSTOMER SALES DETAILS'.

ENDAT.

AT NEW kunnr.

WRITE:/ 'CUSTOMER NUMBER',wa-kunnr.

ENDAT.

WRITE:/ wa-vbeln,wa-erdat,wa-netwr.

AT END OF KUNNR.

SUM.

WRITE:/ 'TOTAL AMOUNT:',WA-NETWR.

ENDAT.

AT LAST.

SUM.

WRITE:/'GRAND TOTAL:',WA-NETWR.

ENDAT.

ENDLOOP.

1 ACCEPTED SOLUTION
Read only

I355602
Product and Topic Expert
Product and Topic Expert
0 Likes
1,047

Hi,

Check your code you have written INNNER instead of INNER

Dont use SELECT...ENDSELECT

You can also use code like:-


TABLES: kna1,vbak.
SELECT-OPTIONS: customer FOR kna1-kunnr.
TYPES : BEGIN OF t_cust,
kunnr TYPE kunnr,
vbeln TYPE vbeln,
erdat TYPE erdat,
netwr TYPE netwr,
END OF t_cust.

DATA : itab TYPE STANDARD TABLE OF t_cust,
wa TYPE t_cust.

SELECT kna1~kunnr vbak~vbeln vbak~erdat vbak~netwr
INTO TABLE itab
FROM kna1
INNER JOIN vbak ON kna1~kunnr = vbak~kunnr
WHERE kna1~kunnr IN customer.

LOOP AT itab INTO wa.
  AT FIRST.
    WRITE:/ 'CUSTOMER SALES DETAILS'.
  ENDAT.
  AT NEW kunnr.
    WRITE:/ 'CUSTOMER NUMBER',wa-kunnr.
  ENDAT.
  WRITE:/ wa-vbeln,wa-erdat,wa-netwr.
  AT END OF kunnr.
    SUM.
    WRITE:/ 'TOTAL AMOUNT:',wa-netwr.
  ENDAT.
  AT LAST.
    SUM.
    WRITE:/'GRAND TOTAL:',wa-netwr.
  ENDAT.
ENDLOOP.

Regards,

Tarun

Edited by: Tarun Gambhir on Mar 6, 2009 10:22 AM

8 REPLIES 8
Read only

Former Member
0 Likes
1,047

why u r using selece and end select, remove that and use select into table instead of wa.

Read only

0 Likes
1,047

I used that also but got the same error...that time I used

SELECT kna1kunnr vbakvbeln vbakerdat vbaknetwr INTO table ITAB FROM kna1 innner JOIN vbak ON kna1kunnr = vbakkunnr WHERE kna1~kunnr IN customer

and didn't use append wa to itab & endselect...but got the same error.

Read only

Former Member
0 Likes
1,047

check the spelling of INNER.....

you have put INNNER....

correct it

Read only

Former Member
0 Likes
1,047

remove 'n' from innner

Read only

Former Member
0 Likes
1,047

SELECT kna1kunnr vbakvbeln vbakerdat vbaknetwr INTO wa FROM kna1 inner JOIN vbak ON kna1kunnr = vbakkunnr WHERE kna1~kunnr IN customer.

Try this...

Read only

I355602
Product and Topic Expert
Product and Topic Expert
0 Likes
1,048

Hi,

Check your code you have written INNNER instead of INNER

Dont use SELECT...ENDSELECT

You can also use code like:-


TABLES: kna1,vbak.
SELECT-OPTIONS: customer FOR kna1-kunnr.
TYPES : BEGIN OF t_cust,
kunnr TYPE kunnr,
vbeln TYPE vbeln,
erdat TYPE erdat,
netwr TYPE netwr,
END OF t_cust.

DATA : itab TYPE STANDARD TABLE OF t_cust,
wa TYPE t_cust.

SELECT kna1~kunnr vbak~vbeln vbak~erdat vbak~netwr
INTO TABLE itab
FROM kna1
INNER JOIN vbak ON kna1~kunnr = vbak~kunnr
WHERE kna1~kunnr IN customer.

LOOP AT itab INTO wa.
  AT FIRST.
    WRITE:/ 'CUSTOMER SALES DETAILS'.
  ENDAT.
  AT NEW kunnr.
    WRITE:/ 'CUSTOMER NUMBER',wa-kunnr.
  ENDAT.
  WRITE:/ wa-vbeln,wa-erdat,wa-netwr.
  AT END OF kunnr.
    SUM.
    WRITE:/ 'TOTAL AMOUNT:',wa-netwr.
  ENDAT.
  AT LAST.
    SUM.
    WRITE:/'GRAND TOTAL:',wa-netwr.
  ENDAT.
ENDLOOP.

Regards,

Tarun

Edited by: Tarun Gambhir on Mar 6, 2009 10:22 AM

Read only

Former Member
0 Likes
1,047

HI,

Check this

SELECT kna1~kunnr 
              vbak~vbeln 
              vbak~erdat 
              vbak~netwr 
      INTO TABLE ITAB 
    FROM kna1 INNER JOIN vbak 
        ON kna1~kunnr = vbak~kunnr 
  WHERE kna1~kunnr IN customer.

Read only

Former Member
0 Likes
1,047

Hi,

you shud write like this:

SELECT Akunnr Bvbeln Berdat Bnetwr

INTO wa

FROM kna1 AS A innner JOIN vbak AS B

ON Akunnr = Bkunnr

WHERE A~kunnr IN customer.

APPEND wa TO itab.

ENDSELECT.

Regards,

Neha