2010 Dec 10 8:42 AM
Hello Techies,
I am facing an issue with the dump called "DATA_OFFSET_TOO_LARGE".
Can anybody help me with the solution or sap note need to be applied.
please see the below code for your reference.
*& Form get_material_sap_form_02
*&
* text
*
* >P_RETURN text
* < P_L_RP_CHARGE text
*
form get_material_sap_form_02 tables p_return structure bapir
changing p_part.
data: first_part(3) type c,
middle type c,
second_part(5) type c.
constants: s_abc(70) type c value 'QWERTYUIOPASDFGHJKLZXCVBNM
data: l_matnr like mara-matnr.
Regards,
Reshma
if not p_part is initial.
translate p_part to upper case.
if p_part ca s_abc.
if sy-fdpos >= 1.
first_part = p_part(sy-fdpos).
middle = p_part+sy-fdpos(1).
sy-fdpos = sy-fdpos + 1.
*second_part = p_part+sy-fdpos. This statement is giving an error.* shift first_part right deleting trailing space.
shift second_part right deleting trailing space.
translate first_part using ' 0'.
2010 Dec 10 9:10 AM
Hi,
Please check the length of your variable : p_part
say if the length is 3 , and the sy-fdpos is 4. you are trying to access the 4th character which is not available.
In your case I think the character you are checking is the last character and you get the dump.
say p_part is 3 char's
p_part = '12Q'.
if sy-fdpos >= 1. " sy-fdpos will be 2.
first_part = p_part(sy-fdpos). " first_part = 12
middle = p_part+sy-fdpos(1). " middle = Q
sy-fdpos = sy-fdpos + 1. " sy-fdpos will be 3.
*second_part = p_part+sy-fdpos. " here you are trying to access the 4th character , where as the length of the variable
p_part is only 3.
endif.
Regards,
Srini.
Hello Techies,
I am facing an issue with the dump called "DATA_OFFSET_TOO_LARGE".
Can anybody help me with the solution or sap note need to be applied.
please see the below code for your reference.
*& Form get_material_sap_form_02
*&
* text
*
* >P_RETURN text
* < P_L_RP_CHARGE text
*
form get_material_sap_form_02 tables p_return structure bapir
changing p_part.
data: first_part(3) type c,
middle type c,
second_part(5) type c.
constants: s_abc(70) type c value 'QWERTYUIOPASDFGHJKLZXCVBNM
data: l_matnr like mara-matnr.
Regards,
Reshma
if not p_part is initial.
translate p_part to upper case.
if p_part ca s_abc.
if sy-fdpos >= 1.
first_part = p_part(sy-fdpos).
middle = p_part+sy-fdpos(1).
sy-fdpos = sy-fdpos + 1.
*second_part = p_part+sy-fdpos. This statement is giving an error.* shift first_part right deleting trailing space.
shift second_part right deleting trailing space.
translate first_part using ' 0'.2010 Dec 10 9:10 AM
Hi,
Please check the length of your variable : p_part
say if the length is 3 , and the sy-fdpos is 4. you are trying to access the 4th character which is not available.
In your case I think the character you are checking is the last character and you get the dump.
say p_part is 3 char's
p_part = '12Q'.
if sy-fdpos >= 1. " sy-fdpos will be 2.
first_part = p_part(sy-fdpos). " first_part = 12
middle = p_part+sy-fdpos(1). " middle = Q
sy-fdpos = sy-fdpos + 1. " sy-fdpos will be 3.
*second_part = p_part+sy-fdpos. " here you are trying to access the 4th character , where as the length of the variable
p_part is only 3.
endif.
Regards,
Srini.
2010 Dec 10 9:31 AM
Hi,
This dump comes when you refer the contents of the fields(Offset) which are larger then the field size. debug it you will be able to solve it.
Nabheet
2010 Dec 13 7:39 AM
Hello Both,
This was helpful. And the issue is resolved now.
Thank you for your support.
| User | Count |
|---|---|
| 6 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |