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

Error.

Former Member
0 Likes
1,128

Hi,

I am writing the program to innerjoin KUNNR and VBAK.

iam getting the error that Select options ended unexpectedly. Plz correct me.

TYPES:

BEGIN OF TY_OUTPUT,

KUNNR TYPE KNA1-KUNNR,

LAND1 TYPE KNA1-LAND1,

VBELN TYPE VBAK-VBELN,

AUDAT TYPE VBAK-AUDAT,

AUART TYPE VBAK-AUART,

NETWR TYPE VBAK-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 KNA1LAND1 KNA1NAME1 VBAKVBELN VBAKAUDAT VBAKAUART VBAK~NETWR INTO TABLE IT_OUTPUT.

FROM KNA1 INNERJOIN VBAK ON KNA1KUNNR EQ VBAKKUNNR WHERE KNA1~KUNNR IN SKUNNR.

WHERE KNA1~KUNNR IN SKUNNR.

IF SY-SUBRC EQ 0

LOOP AT IT_OUTPUT INTO ST_OUTPUT

WRITE:/ ST_OUTPUT.KUNNR, ST_OUTPUT.LAND1,

ST_OUTPUT_NAME1, ST_OUTPUT.VBELN,ST_OUTPUT.AUDAT,AT_OUTPUT.AUART,ST_OUTPUT.NETWR.

ENDLOOP.

This is my program.

Also plz tell me what is SKUNNR and why we r using that.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,103

also change the select statement as follows:

<b>

SELECT KNA1KUNNR KNA1LAND1 KNA1NAME1 VBAKVBELN VBAKAUDAT VBAKAUART VBAK~NETWR INTO TABLE IT_OUTPUT

FROM KNA1 INNERJOIN VBAK ON KNA1KUNNR EQ VBAKKUNNR WHERE KNA1~KUNNR IN SKUNNR.

</b>

Message was edited by:

Navneeth Bothra

11 REPLIES 11
Read only

Former Member
0 Likes
1,103

hi,

change the code as:

<b>SELECT-OPTIONS SKUNNR FOR ST_OUTPUT-KUNNR.</b>

remove the comma after select option and put a period.

Read only

0 Likes
1,103

Hi,

Now it is showing error here .

SELECT KNA1KUNNR KNA1LAND1 KNA1NAME1 VBAKVBELN VBAKAUDAT VBAKAUART VBAK~NETWR INTO TABLE IT_OUTPUT.

Error "FROM ...", "CONNECTION ...", "BYPASSING BUFFER", "PACKAGE SIZE ...", or "UP TO ... ROWS" expected after "IT_OUTPUT".

Read only

0 Likes
1,103

Hi,

TYPES:

BEGIN OF TY_OUTPUT,

KUNNR TYPE KNA1-KUNNR,

LAND1 TYPE KNA1-LAND1,

VBELN TYPE VBAK-VBELN,

AUDAT TYPE VBAK-AUDAT,

AUART TYPE VBAK-AUART,

NETWR TYPE VBAK-NETWR,

END OF TY_OUTPUT.

DATA:

ST_OUTPUT TYPE TY_OUTPUT,

IT_OUTPUT TYPE TABLE OF TY_OUTPUT.

<b>SELECT-OPTIONS SKUNNR FOR ST_OUTPUT-KUNNR.</b>

<b>SELECT KNA1KUNNR KNA1LAND1 KNA1NAME1 VBAKVBELN VBAKAUDAT VBAKAUART VBAK~NETWR INTO <b>CORRESPONDING FIELDS OF</b> TABLE IT_OUTPUT

FROM KNA1 INNERJOIN VBAK ON KNA1KUNNR EQ VBAKKUNNR WHERE KNA1~KUNNR IN SKUNNR.</b>

WHERE KNA1~KUNNR IN SKUNNR.

IF SY-SUBRC EQ 0

LOOP AT IT_OUTPUT INTO ST_OUTPUT

WRITE:/ ST_OUTPUT.KUNNR, ST_OUTPUT.LAND1,

ST_OUTPUT_NAME1, ST_OUTPUT.VBELN,ST_OUTPUT.AUDAT,AT_OUTPUT.AUART,ST_OUTPUT.NETWR.

ENDLOOP.

Regards,

Sesh

Read only

0 Likes
1,103

hi..

now u use the syntax <b>INTO CORRESPONDING FIELDS OF</b>

SELECT KNA1KUNNR KNA1LAND1 KNA1NAME1 VBAKVBELN VBAKAUDAT VBAKAUART VBAK~NETWR <b>INTO CORRESPONDING FIELDS OF TABLE</b> IT_OUTPUT

FROM KNA1 INNERJOIN VBAK ON KNA1KUNNR EQ VBAKKUNNR WHERE KNA1~KUNNR IN SKUNNR.

<b>Reward points if useful</b>

Regards

Ashu

Read only

0 Likes
1,103

Try This:

TYPES:

BEGIN OF TY_OUTPUT,

KUNNR TYPE KNA1-KUNNR,

LAND1 TYPE KNA1-LAND1,

VBELN TYPE VBAK-VBELN,

AUDAT TYPE VBAK-AUDAT,

AUART TYPE VBAK-AUART,

NETWR TYPE VBAK-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 KNA1LAND1 KNA1NAME1 VBAKVBELN VBAKAUDAT VBAKAUART VBAK~NETWR INTO corresponding fields of TABLE IT_OUTPUT

FROM ( KNA1 INNER JOIN VBAK ON KNA1KUNNR = VBAKKUNNR )

WHERE KNA1~KUNNR IN SKUNNR.

*WHERE KNA1~KUNNR IN SKUNNR.

IF SY-SUBRC EQ 0.

LOOP AT IT_OUTPUT INTO ST_OUTPUT.

WRITE:/ ST_OUTPUT-KUNNR, ST_OUTPUT-LAND1,

ST_OUTPUT-VBELN,ST_OUTPUT-AUDAT,sT_OUTPUT-AUART,ST_OUTPUT-NETWR.

ENDLOOP.

endif.

Read only

Former Member
0 Likes
1,103

hi..

<b>1)</b>keep <b>full stop</b> at the end of select options..

SELECT OPTIONS SKUNNR FOR ST_OUTPUT-KUNNR<b>.</b>

<b>2)[</b>b]KUNNR</b> - its the field in VBAK table for <b>Sold-to-party</b>

u r using KUNNR field here in ur code to retrive the sold-to-party..

<b>Reward points if useful</b>

Regards

Ashu

Read only

Former Member
0 Likes
1,103

Hi Rams

select option should end with <b>.</b> but not <b>,</b>

Try like this

TYPES:
BEGIN OF TY_OUTPUT,
KUNNR TYPE KNA1-KUNNR,
LAND1 TYPE KNA1-LAND1,
VBELN TYPE VBAK-VBELN,
AUDAT TYPE VBAK-AUDAT,
AUART TYPE VBAK-AUART,
NETWR TYPE VBAK-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. <-- here u made mistake

SELECT KNA1~KUNNR KNA1~LAND1 KNA1~NAME1 VBAK~VBELN VBAK~AUDAT VBAK~AUART VBAK~NETWR INTO TABLE IT_OUTPUT.
FROM KNA1 INNERJOIN VBAK ON KNA1~KUNNR EQ VBAK~KUNNR WHERE KNA1~KUNNR IN SKUNNR.

WHERE KNA1~KUNNR IN SKUNNR.
IF SY-SUBRC EQ 0
LOOP AT IT_OUTPUT INTO ST_OUTPUT
WRITE:/ ST_OUTPUT.KUNNR, ST_OUTPUT.LAND1,
ST_OUTPUT_NAME1, ST_OUTPUT.VBELN,ST_OUTPUT.AUDAT,AT_OUTPUT.AUART,ST_OUTPUT.NETWR.
ENDLOOP.

Reward all helpfull answers

Regards

Pavan

Read only

Former Member
0 Likes
1,104

also change the select statement as follows:

<b>

SELECT KNA1KUNNR KNA1LAND1 KNA1NAME1 VBAKVBELN VBAKAUDAT VBAKAUART VBAK~NETWR INTO TABLE IT_OUTPUT

FROM KNA1 INNERJOIN VBAK ON KNA1KUNNR EQ VBAKKUNNR WHERE KNA1~KUNNR IN SKUNNR.

</b>

Message was edited by:

Navneeth Bothra

Read only

0 Likes
1,103

hI,

STILL THIS IS INCORRECT.

SELECT KNA1KUNNR KNA1LAND1 KNA1NAME1 VBAKVBELN VBAKAUDAT VBAKAUART VBAK~NETWR INTO TABLE IT_OUTPUT FROM KNA1

INNERJOIN VBAK ON KNA1KUNNR EQ VBAKKUNNR WHERE KNA1~KUNNR IN SKUNNR.

Error is

Wrong expression "INNERJOIN" in FROM clause . . .

Read only

Former Member
0 Likes
1,103

try

SELECT OPTIONS SKUNNR FOR kna1-kunnr.

Read only

Former Member
0 Likes
1,103

Hi Ram,

Pls correct ur code as below:

TYPES:
BEGIN OF TY_OUTPUT,
KUNNR TYPE KNA1-KUNNR,
LAND1 TYPE KNA1-LAND1,
VBELN TYPE VBAK-VBELN,
AUDAT TYPE VBAK-AUDAT,
AUART TYPE VBAK-AUART,
NETWR TYPE VBAK-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 KNA1~KUNNR KNA1~LAND1 KNA1~NAME1 VBAK~VBELN VBAK~AUDAT VBAK~AUART VBAK~NETWR INTO TABLE IT_OUTPUT
FROM KNA1 INNER JOIN VBAK ON KNA1~KUNNR EQ VBAK~KUNNR WHERE KNA1~KUNNR IN SKUNNR.


IF SY-SUBRC EQ 0.
LOOP AT IT_OUTPUT INTO ST_OUTPUT.
WRITE:/ ST_OUTPUT-KUNNR, ST_OUTPUT-LAND1,
ST_OUTPUT-VBELN,ST_OUTPUT-AUDAT,sT_OUTPUT-AUART,ST_OUTPUT-NETWR.
ENDLOOP.
endif.

<b>pls reward pts fi found usefull :)</b>

Regards

Sathish