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: 

A program erro!help!

Former Member
0 Kudos

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

RichHeilman
Developer Advocate
Developer Advocate
0 Kudos

Can I see the full code of the program?

REgards,

Rich Heilman

Former Member
0 Kudos

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.

0 Kudos

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

0 Kudos

<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.

0 Kudos

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.

0 Kudos

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

Former Member
0 Kudos

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

examine pass but when activate the program was erro.

0 Kudos

how is it_racct defined? Please post the code.

0 Kudos

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

REgards,

RIch Heilman

0 Kudos

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.

0 Kudos

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.

0 Kudos

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.

0 Kudos

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.

0 Kudos

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.

0 Kudos

<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>

0 Kudos

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.

0 Kudos

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.

Former Member
0 Kudos

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.