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

A program erro!help!

Former Member
0 Likes
1,754

now this erro as follows:

Jump is too great and cannot be generated A control

CHECK or EXIT contains too many ABAP statements.

what's the meaning! thank you.

i only add repeat code in my program.

18 REPLIES 18
Read only

RichHeilman
Developer Advocate
Developer Advocate
0 Likes
1,708

Can I see the full code of the program?

REgards,

Rich Heilman

Read only

Former Member
0 Likes
1,708

ELSEIF ( IT_RACCT-RACCT >= '0031010101'

AND IT_RACCT-RACCT <= '0031010101')

and it_racct-jiedai <> 0.

IT_ITEM-NO = 62.

IT_ITEM-ITEMNO = '80'.

IT_ITEM-ITEMNAME = ' capital stock'.

IT_ITEM-B_SUM = IT_RACCT-HSLVT.

IT_ITEM-E_SUM = IT_RACCT-CC1 + IT_RACCT-CC2 + IT_RACCT-CC3

+ IT_RACCT-CC4 + IT_RACCT-CC5 + IT_RACCT-CC6

+ IT_RACCT-CC7 + IT_RACCT-CC8 + IT_RACCT-CC9

+ IT_RACCT-CC10 + IT_RACCT-HSLVT.

when i add IT_RACCT-CC10 + IT_RACCT-HSLVT,this erro is appear. i select data in the table GLTO.

Read only

0 Likes
1,708

Interesting, you wouldn't think that there is a limit on the number of fields that you can add together. Try splitting it up.



IT_ITEM-E_SUM = IT_RACCT-CC1 + IT_RACCT-CC2 + 
                IT_RACCT-CC3 + IT_RACCT-CC4 + 
                IT_RACCT-CC5 + IT_RACCT-CC6.

it_item-e_sum = it_item-e_sum +
                IT_RACCT-CC7 + IT_RACCT-CC8 + 
                IT_RACCT-CC9 + IT_RACCT-CC10 + 
                IT_RACCT-HSLVT.


REgards,

Rich Heilman

Read only

0 Likes
1,708

<i> ELSEIF ( IT_RACCT-RACCT >= '0031010101'

AND IT_RACCT-RACCT <= '0031010101')</i>

In the above statement, why are you checking for both <= and >= for the same value 0031010101? I think this doesn't make sense and that is why it is failing.

Read only

0 Likes
1,708

ELSEIF ( IT_RACCT-RACCT >= '0031010101'

AND IT_RACCT-RACCT <= '0031010101')

This is just a confusing way of saying

ELSEIF IT_RACCT-RACCT = '0031010101'

but it is valid syntactically.

Read only

0 Likes
1,708

You are right Neil but I think this code is passing the syntax check but erroring out when it is activated.

Message was edited by: Srinivas Adavi

Read only

Former Member
0 Likes
1,708

i use your coding,but the same erro was being.

examine pass but when activate the program was erro.

Read only

0 Likes
1,708

how is it_racct defined? Please post the code.

Read only

0 Likes
1,708

So when you remove the IT_RACCT-CC10 to the statement, there is no error?

REgards,

RIch Heilman

Read only

0 Likes
1,708

DATA:BEGIN OF WA_RACCT OCCURS 0,

RACCT LIKE GLT0-RACCT,

HSLVT LIKE GLT0-HSLVT,

CC1 TYPE GLT0-HSL01,

CC2 TYPE GLT0-HSL01,

CC3 TYPE GLT0-HSL01,

CC4 TYPE GLT0-HSL01,

CC5 TYPE GLT0-HSL01,

CC6 TYPE GLT0-HSL01,

CC7 TYPE GLT0-HSL01,

CC8 TYPE GLT0-HSL01,

CC9 TYPE GLT0-HSL01,

CC10 TYPE GLT0-HSL01,

CC11 TYPE GLT0-HSL01,

CC12 TYPE GLT0-HSL01,

CC13 TYPE GLT0-HSL01,

CC14 TYPE GLT0-HSL01,

CC15 TYPE GLT0-HSL01,

CC16 TYPE GLT0-HSL01,

JIEDAI TYPE I,

END OF WA_RACCT.

DATA: IT_RACCT LIKE SORTED TABLE OF WA_RACCT

WITH UNIQUE KEY RACCT WITH HEADER LINE.

Read only

0 Likes
1,708

how about it_item? how is that defined?

and can you show us the complete 'if' statement that it belongs in?

maybe it's getting confused because wa_racct is a table itself (occurs 0 makes it a table) but it_racct is a table of wa_ractt. That is a table OF a table. But I don't get syntax errors but I am on R/3 Enterprise.

TRy removing the occurs 0 and see what happens.

Read only

0 Likes
1,708

DATA: BEGIN OF WA_ITEM OCCURS 0,

NO TYPE I,

ITEMNO(3) TYPE C,

ITEMNAME(40) TYPE C,

B_SUM LIKE GLT0-HSL01,

E_SUM LIKE GLT0-HSL01,

END OF WA_ITEM.

DATA: WA_TABLE LIKE WA_ITEM.

DATA: IT_ITEM LIKE SORTED TABLE OF WA_ITEM

WITH UNIQUE KEY NO ITEMNO ITEMNAME WITH HEADER LINE.

LOOP AT IT_RACCT.

CLEAR IT_ITEM.

CASE S_RPMAX.

IF ( IT_RACCT-RACCT >= '0031010101'

AND IT_RACCT-RACCT <= '0031010101')

and it_racct-jiedai <> 0.

IT_ITEM-NO = 62.

IT_ITEM-ITEMNO = '80'.

IT_ITEM-ITEMNAME = ' &#23454;&#25910;&#36164;&#26412;&#65288;&#25110;&#32929;&#26412;&#65289;'.

IT_ITEM-B_SUM = IT_RACCT-HSLVT.

IT_ITEM-E_SUM = IT_RACCT-CC1 + IT_RACCT-CC2 +

IT_RACCT-CC3 + IT_RACCT-CC4 +

IT_RACCT-CC5 + IT_RACCT-CC6.

it_item-e_sum = it_item-e_sum +

IT_RACCT-CC7 + IT_RACCT-CC8 +

IT_RACCT-CC9 + IT_RACCT-CC10 +

IT_RACCT-HSLVT.

.

.

.

ENDLOOP.

YES I DON'T GET SYNTAX ERRORS when i examining,BUT WHEN I activate the program,the errors was appear.

Read only

0 Likes
1,708

Can you please comment this line out and see if it works?

<i>IT_ITEM-ITEMNAME = ' &#23454;&#25910;&#36164;&#26412;&#65288;&#25110;&#32929;&#26412;&#65289;'.</i>

I think the '&' and the '#' are causing the problem.

Read only

0 Likes
1,708

oh no,for all it care,now if i write this,

IT_ITEM-E_SUM = IT_RACCT-CC1 + IT_RACCT-CC2 + IT_RACCT-CC3

+ IT_RACCT-CC4 + IT_RACCT-CC5 + IT_RACCT-CC6

+ IT_RACCT-CC7 + IT_RACCT-CC8 + IT_RACCT-CC9

+ IT_RACCT-CC10 + IT_RACCT-HSLVT.

reduce the coding.

IT_ITEM-E_SUM = IT_RACCT-CC1 + IT_RACCT-CC2 + IT_RACCT-CC3

+ IT_RACCT-CC4 + IT_RACCT-CC5 + IT_RACCT-CC6

+ IT_RACCT-CC7 + IT_RACCT-CC8 + IT_RACCT-HSLVT.

this was pass when i activate the program.

Read only

0 Likes
1,708

<i>LOOP AT IT_RACCT.

> CLEAR IT_ITEM.

> CASE S_RPMAX. <-- <b>what is this?</b>

> IF ( IT_RACCT-RACCT >= '0031010101'

> AND IT_RACCT-RACCT <= '0031010101')

> and it_racct-jiedai <> 0.</i>

Read only

0 Likes
1,708

TRy, this which is similar to Rich's suggestion but is when the error starts appearing:

IT_ITEM-E_SUM = IT_RACCT-CC1 + IT_RACCT-CC2 + IT_RACCT-CC3

+ IT_RACCT-CC4 + IT_RACCT-CC5 + IT_RACCT-CC6

+ IT_RACCT-CC7 + IT_RACCT-CC8 + + IT_RACCT-HSLVT.

IT_ITEM-E_SUM = IT_ITEM-E_SUM +

+ IT_RACCT-CC9

+ IT_RACCT-CC10.

Read only

0 Likes
1,708

oh sorry,i saw the erros cue,it say,

While generating program "Z_FI_BALANCE", the system discovered that an ABAP

event block, a control structure (such as IF... ENDIF or LOOP...

ENDLOOP) or a routine (such as a FORM routine) is too big.

The resulting jump is too great to be generated.

The jump may be no greater than 32768 for the internal load format

(corresponding to around 10,000 ABAP statements).

However, the jump in this case would have been 32769.

maybe i if endif was too long.

Read only

Former Member
0 Likes
1,708

Where do you have this code? In a report program or some kind of user exit or somewhere else? The problem may not be where you are thinking. Try commenting out the entire code that you pasted here and see if the error still continues.