‎2010 Mar 29 7:48 AM
Hi All,
I'm getting Dump error while executing program. Just do let me know if any error in given below query:-
SELECT abukrs abelnr ahkont axref2 ashkzg awrbtr agsber azfbdt a~zterm
amwskz asgtxt axref1 agjahr abuzei bkunnr bwerks bmenge bmeins bmatnr b~koart
INTO CORRESPONDING FIELDS OF TABLE it_bsid FROM ( bsid AS a INNER JOIN acctit AS b ON abukrs EQ bbukrs )
FOR ALL ENTRIES IN it_bkpf
WHERE
a~belnr EQ it_bkpf-belnr
AND a~gjahr EQ it_bkpf-gjahr
AND a~bukrs EQ it_bkpf-bukrs
AND a~gsber IN so_bus.
Thanks.
Devinder
‎2010 Mar 29 8:13 AM
Hi,
Please goto ST22 and give us the dump analysis so that we can exactly tell u whats the error in this query.
Vivek
‎2010 Mar 29 7:54 AM
So, you're getting a dump and you are asking here giving exactly no informnation? Sorry, my glas sphere is out for cleaning.
‎2010 Mar 29 8:13 AM
Hi,
Please goto ST22 and give us the dump analysis so that we can exactly tell u whats the error in this query.
Vivek
‎2010 Mar 30 12:19 PM
Hi,
How exactly I can get dump analysis in ST22?
Thanks
Devinder
‎2010 Mar 30 12:38 PM
Hi,
Goto ST22, press start button which will give all the dumps created by you today and select the one which you need to analyse.
There you will find the analysis and the code part which created the dump.
Regards,
Gopal
‎2010 Mar 31 8:11 AM
Hi all,
Dump is given below, while execute the select query : -
Error analysis
When the program was running, it was established that more
memory was needed than the operating system is able to provide savely.
To avoid a system crash, you must prevent this
situation.
-
Last error logged in SAP kernel
-
Component............ "EM"
Place................ "SAP-Server Development_DVL_01 on host Development (wp
1)"
Version.............. 37
Error code........... 7
Error text........... "Warning: EM-Memory exhausted: Workprocess gets PRIV "
Description.......... " "
System call.......... " "
Module............... "emxx.c"
Line................. 1886
Thanks
Devinder
‎2010 Mar 31 8:16 AM
Hello Devinder,
Clearly the reason for this dump is the number of records in the target internal table IT_BSID is too large.
I can see you are using FOR ALL ENTRIES to select the data. Make sure your check IT_BKPF[] is not initial before the select.
BR,
Suhas
‎2010 Mar 31 11:04 AM
Hi Saha,
Yes, I have mentioned "Is not Initial" in the IF Condition.. Give me another reason for the same.
Thanks
Devinder
‎2010 Mar 31 11:15 AM
The reason is well known: you're still retrieving too much data to fit in memory. ZThis cant be changed by replacing join with FAE.
If possible you can deal with the data row by row not reading the whole data into an internal table.Otherwise you are lost.
‎2010 Mar 31 11:30 AM
Hi,
I've already used Loop At in my code.. for fetching data row by row.
give another solution
Thanks
Devinder
‎2010 Mar 31 12:16 PM
You do not understand. If you are using loop at your whole data is stored into application servers main memory und you're getting the error message above.
Do not read the whole data into an internal table, fetch the data row by row using select.... end-select. If you cant do that, limit your result set by being more specfic in the where clause.
‎2010 Mar 29 8:39 AM
hi
Could you tell what error u got?
Thanks & Regards
Surender Kumar.S
‎2010 Mar 31 8:21 AM
Hi,
Try to avoid INNER JOIN by using two SELECTs + FOR ALL ENTRIES
‎2010 Mar 31 9:43 AM
Hi Tomislav Uroic,
How can I write 2 Select queries with "For all entries".
Thanks
Devinder