09-13-2005 8:08 AM
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.
09-13-2005 8:22 AM
Hi Vijay,
I could find one OSS note 409270 for this error. But this is related to BW. Please check this.
Thanks
Vinod
09-13-2005 8:29 AM
09-13-2005 8:47 AM
I feel the problem is not related to IF.. ENDIF.. block.. it is related to FORM ... ENDFORM....
Regards
Vijay