2006 Sep 15 12:06 PM
Hi Gurus,
could you plese provide me the Related OSS NOTE number for the folowing exception .
TSV_TNEW_PAGE_ALLOC_FAILED
No storage space available for extending the internal table.
You attempted to extend an internal table, but the required space was not available .
2006 Sep 15 12:17 PM
Ram ,
this is due problem with ur Code , not with the Notes , try to post ur code or recheck the Code @ ur End.
Regards
Prabhu
Ram ,
this is due problem with ur Code , not with the Notes , try to post ur code or recheck the Code @ ur End.
Regards
Prabhu
2006 Sep 15 12:14 PM
this is no special short dump,
think your itab (internal table is too big )
try to free your itab:
e.g. select per werks or Bukrs
make your process,
free itab and select new data ...
pls post your coding.
A.
Message was edited by: Andreas Mann
2006 Sep 15 12:15 PM
2006 Sep 15 12:17 PM
Ram ,
this is due problem with ur Code , not with the Notes , try to post ur code or recheck the Code @ ur End.
Regards
Prabhu
2006 Sep 15 12:39 PM
Hi u can see the copd here
REPORT /rb17/ym_forc_model_ext_new .
&----
*& T Y P E S *
&----
TYPES: BEGIN OF typ_itab_rec.
INCLUDE STRUCTURE /rb17/ym_mod_new.
TYPES: END OF typ_itab_rec.
table types
TYPES: typ_itab_table TYPE STANDARD TABLE OF typ_itab_rec
WITH KEY matnr werks .
&----
*& D A T A *
&----
Internal table to store records from database
DATA : g_t_itab TYPE typ_itab_table WITH HEADER LINE .
Internal table to fill datbase
DATA : g_t_jtab TYPE typ_itab_table WITH HEADER LINE .
Work area
DATA : g_r_itab TYPE typ_itab_rec.
DATA : counter TYPE i .
DATA cnt type i value 0.
************************************************************************
SELECTION SCREEN
************************************************************************
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
PARAMETERS : p_vers TYPE vrsio.
SELECTION-SCREEN END OF BLOCK b1.
&----
*& Event START-OF-SELECTION
&----
PERFORM get_data.
PERFORM populate_data.
PERFORM assign_version.
PERFORM update_table.
&----
*& Form get_data
&----
text
----
--> p1 text
<-- p2 text
----
FORM get_data .
REFRESH : g_t_itab[].
SELECT * FROM /rb17/ym_model INTO CORRESPONDING FIELDS OF
TABLE g_t_itab.
ENDFORM. " get_data
&----
*& Form populate_data
&----
text
----
--> p1 text
<-- p2 text
----
FORM populate_data .
DATA : l_f_bstrf TYPE bstrf,
l_f_prctr TYPE prctr,
l_f_maabc TYPE maabc,
l_f_mfrnr TYPE mfrnr,
l_f_kondm TYPE kondm,
l_f_ktgrm TYPE ktgrm,
l_f_bezek TYPE bezap,
l_f_lifnr TYPE lifnr.
CLEAR : l_f_bstrf , l_f_prctr , l_f_maabc, l_f_mfrnr,
l_f_kondm , l_f_ktgrm , l_f_bezek, l_f_lifnr.
CLEAR g_r_itab.
LOOP AT g_t_itab.
SELECT SINGLE bstrf prctr maabc INTO
(l_f_bstrf , l_f_prctr , l_f_maabc) FROM marc
WHERE matnr = g_t_itab-matnr AND
werks = g_t_itab-werks.
SELECT SINGLE mfrnr INTO l_f_mfrnr FROM mara
WHERE matnr = g_t_itab-matnr.
SELECT SINGLE kondm ktgrm INTO (l_f_kondm , l_f_ktgrm) FROM mvke
WHERE matnr = g_t_itab-matnr.
SELECT SINGLE bezek INTO l_f_bezek FROM t25b1
WHERE wwz02 = g_t_itab-prmgr.
SELECT SINGLE lifnr INTO l_f_lifnr FROM eord
WHERE matnr = g_t_itab-matnr AND
werks = g_t_itab-werks AND
flifn = 'X'.
IF sy-subrc NE 0.
SELECT SINGLE lifnr INTO l_f_lifnr FROM eord
WHERE matnr = g_t_itab-matnr AND
werks = g_t_itab-werks .
ENDIF.
*get backorder value
PERFORM get_backorders USING g_t_itab-matnr
CHANGING g_t_itab-backord.
g_r_itab-bstrf = l_f_bstrf.
g_r_itab-prctr = l_f_prctr.
g_r_itab-maabc = l_f_maabc.
g_r_itab-mfrnr = l_f_mfrnr.
g_r_itab-kondm = l_f_kondm.
g_r_itab-ktgrm = l_f_ktgrm.
g_r_itab-bezek = l_f_bezek.
g_r_itab-lifnr = l_f_lifnr.
*set version = 1 for new rows.
g_r_itab-version = 1.
MODIFY g_t_itab FROM g_r_itab TRANSPORTING bstrf mfrnr prctr kondm
ktgrm lifnr bezek maabc
backord version.
ENDLOOP.
SORT g_t_itab BY spmon vrsio bukrs matnr version.
ENDFORM. " populate_data
&----
*& Form get_backorders
&----
text
----
-->P_G_T_ITAB_MATNR text
<--P_G_T_ITAB_BACKORD text
----
FORM get_backorders USING p_g_t_itab_matnr TYPE matnr
CHANGING p_g_t_itab_backord TYPE netwr_ap.
TYPES: BEGIN OF typ_outord.
INCLUDE STRUCTURE /rb17/yv_outord.
TYPES: END OF typ_outord.
DATA: t_outord TYPE TABLE OF typ_outord WITH HEADER LINE.
REFRESH: t_outord.
first load outstanding orders for out materials from
nightly extract of data (run from /rb17/yv_outstanding_orders)
SELECT * FROM /rb17/yv_outord INTO TABLE t_outord
WHERE matnr = p_g_t_itab_matnr.
accumulate all past due orders
LOOP AT t_outord .
IF t_outord-edatu < t_outord-wadat "backorder
OR t_outord-edatu < sy-datum.
IF t_outord-bmeng > 0.
ADD t_outord-bmeng TO p_g_t_itab_backord. "+ confirmed
ELSE.
ADD t_outord-kwmeng TO p_g_t_itab_backord. "+ ordered
ENDIF.
SUBTRACT t_outord-lfimg FROM p_g_t_itab_backord. "- delivered
ENDIF.
ENDLOOP.
ENDFORM. " get_backorders
&----
*& Form update_table
&----
text
----
--> p1 text
<-- p2 text
----
FORM update_table .
DELETE FROM /rb17/ym_mod_new.
MODIFY /rb17/ym_mod_new FROM TABLE g_t_jtab .
COMMIT WORK.
ENDFORM. " update_table
&----
*& Form assign_version
&----
text
----
--> p1 text
<-- p2 text
----
FORM assign_version .
delete records with version = no of versions given by user.
LOOP AT g_t_itab .
IF g_t_itab-version EQ p_vers.
DELETE g_t_itab.
CONTINUE.
ENDIF.
ENDLOOP.
Changing versions and populating final internal table
LOOP AT g_t_itab .
counter = p_vers - 1 .
DO counter TIMES .
MOVE-CORRESPONDING g_t_itab TO g_r_itab.
g_r_itab-version = counter + 1 .
APPEND g_r_itab TO g_t_jtab .
counter = counter - 1.
CLEAR g_r_itab.
ENDDO .
ENDLOOP.
SORT g_t_itab BY spmon vrsio bukrs matnr version.
ENDFORM. " assign_version
2006 Sep 15 12:43 PM
Yes that execption is due to storage problem only ,
OSS notes : 369726
Symptom
Dump TSV_TNEW_PAGE_ALLOC_FAILED or similar memory bottle neck errors occur. (you can view these in ST22)
Additional key words
Cause and prerequisites
An application program tried to expand an internal table but the memory requirement to do so was too large.
Possible causes:
 R/3 storage parameters have been set incorrectly
 Too little physical memory or incorrect operating system settings
 Program error ("memory leak")
 Incorrect usage of the application (for example, the selection of too much data)
Solution
To facilitate the analysis, provide the following information whenever you open an OSS message:
(1) memory consumption
the information regarding the allocated memory from the dump text in the "How to correct the error" section.
For example,
The size of the memory used in bytes at the time of the termination:
Roll area....................5778640
extended memory area(EM) 250550400
fixed storage space (HEAP) 400059808
Short area...................8063
Paging area..................24576
Max address area.............534910168
(2) system data
The total "system environment" from the dump text.
(3) documenting the essential R/3 storage parameter
Transaction ST02 / 'Detail analysis menu' button
In the 'Other buffers' area, 'SAP Memory' button
'Current Parameters' button
Include the list.
Source code corrections
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |