Application Development 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: 

Select Statement

Former Member
0 Kudos

Hi,

This is my program.

Here in the select statement(In Bold letters) I had selected KNa1KUNNR two times. If I keep the KNA1KUNNR for only one time iam getting the runtime error.

In the select options I had this statement. SKUNNR FOR ST_OUTPUT-KUNNR.(Instead of st_output-kunnr can i select from TY_OUTPUT-KUNNR).

This is the program.

TYPES:

BEGIN OF TY_OUTPUT,

KUNNR TYPE KNA1-KUNNR,

NAME1 TYPE KNA1-NAME1,

VBELN TYPE VBAK-VBELN,

POSEX TYPE VBAP-POSEX,

ZMENG TYPE VBAP-ZMENG,

NETPR TYPE VBAP-NETPR,

NETWR TYPE VBAP-NETWR,

END OF TY_OUTPUT.

DATA:

ST_OUTPUT TYPE TY_OUTPUT,

IT_OUTPUT TYPE TABLE OF TY_OUTPUT.

SELECT-OPTIONS SKUNNR FOR ST_OUTPUT-KUNNR.

SELECT KNA1KUNNR KNA1KUNNR VBAKVBELN VBAPPOSEX VBAPZMENG VBAPNETPR VBAP~NETWR INTO TABLE IT_OUTPUT

FROM VBAK INNER JOIN KNA1 ON KNA1KUNNR EQ VBAKKUNNR INNER JOIN VBAP ON VBAKVBELN EQ VBAPVBELN

WHERE KNA1~KUNNR IN SKUNNR.

IF SY-SUBRC EQ 0.

LOOP AT IT_OUTPUT INTO ST_OUTPUT.

WRITE:/ ST_OUTPUT-KUNNR, ST_OUTPUT-NAME1,ST_OUTPUT-VBELN,

ST_OUTPUT-POSEX, ST_OUTPUT-ZMENG,ST_OUTPUT-NETPR,ST_OUTPUT-NETWR.

ENDLOOP.

ENDIF.

Thanks.

2 REPLIES 2

Former Member
0 Kudos

Hi Keyur

instead of second kna1~kunnr

write kna1~name1

like below

SELECT KNA1KUNNR *KNA1NAME1* VBAKVBELN VBAPPOSEX VBAPZMENG VBAPNETPR VBAP~NETWR INTO TABLE IT_OUTPUT

FROM VBAK INNER JOIN KNA1 ON KNA1KUNNR EQ VBAKKUNNR INNER JOIN VBAP ON VBAKVBELN EQ VBAPVBELN

WHERE KNA1~KUNNR IN SKUNNR.

Reward if useful

Regards,

Talwinder

Edited by: Talwinder Singh on Apr 9, 2008 12:29 PM

Former Member
0 Kudos

Hi,

use

SELECT KNA1KUNNR *KNA1NAME1* VBAKVBELN VBAPPOSEX VBAPZMENG VBAPNETPR VBAP~NETWR INTO TABLE IT_OUTPUT

FROM VBAK INNER JOIN KNA1 ON KNA1KUNNR EQ VBAKKUNNR INNER JOIN VBAP ON VBAKVBELN EQ VBAPVBELN

WHERE KNA1~KUNNR IN SKUNNR.

or

SELECT KNA1KUNNR VBAKVBELN VBAPPOSEX VBAPZMENG VBAPNETPR VBAPNETWR INTO CORRESPONDING FIELDS OF TABLE IT_OUTPUT

FROM VBAK INNER JOIN KNA1 ON KNA1KUNNR EQ VBAKKUNNR INNER JOIN VBAP ON VBAKVBELN EQ VBAPVBELN

WHERE KNA1~KUNNR IN SKUNNR.

rgds,

bharat.