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: 

Smart form -- DUMP -- too many lines -- GEN_BRANCHOFFSET_LIMIT_REACHED

0 Kudos

Hi,

In the Smart form we have a requirement with 9 Layouts in the Real Estate Management Module, there we are printing almost all the master data that is related to Business Entity (under it buildings / properties ) and all contracts related to BE, buildings, properties.

Since the Layouts are all dynamic and growing, we have to use MAIN window for printing the form. But the problem is the program is dumping (Some times while running the program, and some times while saving the program ) because of TOO MANY ABAP STATEMENTS in the FORM ..ENDFORM.. of the main window.

Here are the messages from the SHORT DUMP...

==========================================================

GEN_BRANCHOFFSET_LIMIT_REACHED

Jump is too great and cannot be generated

Error analysis

While generating program "/1BCDWB/SAPLSF00000094", 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 33331.

==========================================================

The dump happens because of too many abap statements in FORM.. ENDFORM.. in routine which generated for MAIN window of the smart form.

Is there any possible solution to this ?

Thanks

Vijay

Message was edited by: Vijay Kumar Madanu

===========================SOLUTION=======================

This is a known problem.

Form are generated in two steps.First, the source code is entered into

the program library.As a result, the source code is displayed, for

example, via transaction SE80.

The source code is then compiled.This may result in a termination if a

form routine is too large, for example.

Solution:

=========

The '/1 BCDWB/SAPLSFxxxxxxxx' program name is specified in the dump.

The corresponding Include is called /1 BCDWB/LSFxxxxxxxxF01.You can thenfind the largest form routine in this Include.It is this form routine

which causes the termination.You can check which node is too large in

the form via the form routine.This node is usually located in the main

window.

You must now create at least two folders below this node.You have to

select the 'header area' time and then only 'the beginning of the table'as the output time for these folders. The remaining subnodes underneath

the header of this folder can now be distributed.

Since a time is specified for the folders, an individual form routine isnow created for each folder.As a result, the form routine, which was toolarge initially, is now split and the generation process works again.

===========================SOLUTION=======================

Message was edited by: Vijay Kumar Madanu

Solved it on my own.

3 REPLIES 3

Vinod_Chandran
Active Contributor
0 Kudos

Hi Vijay,

I could find one OSS note 409270 for this error. But this is related to BW. Please check this.

Thanks

Vinod

0 Kudos

check out the following thread

and this weblog explains it well.

/people/brian.mckellar/blog/2005/04/25/bsp-programming-gen-branchoffset-limit-reached

Regards

Raja

0 Kudos

I feel the problem is not related to IF.. ENDIF.. block.. it is related to FORM ... ENDFORM....

Regards

Vijay