Short dump due to Memory Space
Hi Experts,
I have an internal table whose width is 3576 characters. My selection criteria is selecting approximately 1 million record from the database table.
Out of the 3576 characters, I m not even filling 150 characters a row using selection fields.
The short dump is as follows:
Error analysis
The internal table "\PROGRAM=ZPMWO_DSR_RECONCILIATION\FORM=RECONCILIATION\DATA=
LT_VIQMEL_I" could not be further extended. To enable
error handling, the table had to be delete before this log was written.
As a result, the table is displayed further down or, if you branch to
the ABAP Debugger, with 0 rows.
At the time of the termination, the following data was determined for
the relevant internal table:
Memory location: "Session memory"
Row width: 3576
Number of rows: 1035860
Allocated rows: 1035860
Newly requested rows: 4 (in 1 blocks)
How to correct this?? I mean how do i increase the memory space required for this process??
Hi,
Check there is not an endless loop which is appending data in the internal table.
Regards,
Ankur Parab
Similar Messages
-
Getting Short dump due to large amount of data
Hi experts,
When we are running RALM_ME_MEASP_FULL_DOWNLOAD_SD program, every time we are getting Short dump due to large amount of data.
please suggest how to run this program without short dump.
Thanks & Regards
Prashant GuptaHi,
you do run the wrong APP I guess. The service you are running is for MAM20. If you are interested in MAM30 and MAM25, please use the correct service.
If you have a look for
*FULL_DOWNLOAD_SD
You find them all. Use the ones without the RALM in front - then the timeout should be solved as well. Bside that there is a great guid available that helps as well to solve some issues around server driven replication:
[MAM SERVER DRIVEN SETUP GUIDE|http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/818ac119-0b01-0010-ba8b-b6e3f3490a63?quicklink=index&overridelayout=true]
Hope that helps to solve yourt issue.
Regards,
Oliver -
Short dump due to performance issue
Hi all,
I am facing performance issue in my sandbox. Below is the content of short dump.
Short text
Unable to fulfil request for 805418 bytes of memory space.
What happened?
Each transaction requires some main memory space to process
application data. If the operating system cannot provide any more
space, the transaction is terminated.
What can you do?
Try to find out (e.g. by targetted data selection) whether the
transaction will run with less main memory.
If there is a temporary bottleneck, execute the transaction again.
If the error persists, ask your system administrator to check the
following profile parameters:
o ztta/roll_area (1.000.000 - 15.000.000)
Classic roll area per user and internal mode
usual amount of roll area per user and internal mode
o ztta/roll_extension (10.000.000 - 500.000.000)
Amount of memory per user in extended memory (EM)
o abap/heap_area_total (100.000.000 - 1.500.000.000)
Amount of memory (malloc) for all users of an application
server. If several background processes are running on
one server, temporary bottlenecks may occur.
Pls help me to resolve this issue
Regards,
Kalyani
Edited by: kalyani usa on Jan 9, 2008 9:04 PMHi Rob Burbank,
I am pasting the transaction I found in the dump
Transaction......... "SESSION_MANAGER "
Transactions ID..... "4783E5B027A73C1EE10000000A200A17"
Program............. "SAPMSYST"
Screen.............. "SAPMSYST 0500"
Screen line......... 16
Also i am pasting the screenshot of ST02
Nametab (NTAB) 0
Table definition 99,22 6.799 3.591 62,97 20.000 12.591 62,96 0 8.761
Field definition 99,06 31.563 345 1,15 20.000 13.305 66,53 244 7.420
Short NTAB 99,22 3.625 2.590 86,33 5.000 3.586 71,72 0 1.414
Initial records 52,50 6.625 3.408 56,80 5.000 249 4,98 817 5.568
0
program 99,58 300.000 1.212 0,42 75.000 67.561 90,08 7.939 46.575
CUA 99,08 3.000 211 8,84 1.500 1.375 91,67 23.050 846
Screen 99,46 4.297 1.842 45,00 2.000 1.816 90,80 81 963
Calendar 100,00 488 401 85,14 200 111 55,50 0 89
OTR 100,00 4.096 3.281 100,00 2.000 2.000 100,00 0
0
Tables 0
Generic Key 99,69 29.297 2.739 9,87 5.000 177 3,54 57 56.694
Single record 89,24 10.000 63 0,64 500 468 93,60 241 227.134
0
Export/import 76,46 50.000 40.980 83,32 2.000 2.676
Exp./ Imp. SHM 97,82 4.096 3.094 94,27 2.000 1.999 99,95 0
SAP Memory Curr.Use % CurUse[KB] MaxUse[KB] In Mem[KB] OnDisk[KB] SAPCurCach HitRatio %
Roll area 0,16 432 18.672 131.072 131.072 IDs 98,11
Page area 0,19 496 187.616 65.536 196.608 Statement 95,00
Extended memory 9,89 151.552 1.531.904 1.531.904 0 0,00
Heap memory 0 0 1.953.045 0
0,00
Regards,
Kalyani -
Short dump - No more storage space available for extending an internal tabl
Hi All,
I have requirement in which my program generates a text file on my presentation server. Here my problem is, this requirement can not be executed in back ground, it should be done in foreground only. When I execute in foreground, if the data records comes to some 38 lacks then I am getting a short dump saying 'No more storage space available for extending an internal table'.
And in dump analysis under WHAT HAPPENED section it is giving as
' What happened? |
| You attempted to extend an internal table, but the required space was |
| not available.
Please suggest me, what I have to do in this case?
Thanks in advance.
Thanks,
Sudha MettuHi SuDash,
Allocation of the memory spaces will be done by BASIS people.
you can contact them..
Regards! -
Report (uses LDB's) giving dump due to memory problem
Hi,
I have a report which is giving dump in production due to memory problem.
Memory is increased from basis part,but still getting same error.
the report uses Logical DataBases.
Can anyone suggest solution to solve this problem.
regards
MallikHi Amit,
thanks for ur quick reply and ur idea "make changes in development and write the logic to read records in chunks".
I have n't worked on LDB's till now.So i Don't know how I can read the data in chunks from LDB's.
Can u Plz give some idea how to read data in chunks.
Iam also sending the code,if possible ,plz go thru it and give me some idea.
Hope u will help me.
CODE.
REPORT ZAROP028
ABLES: PROJ, " Project definition
PRPS_R, " WBS element
PRPS, " WBS elements
TJ02T, " System Status Values
TCJ1, " Project Types
JEST, " Active System Status
COSP1, " cost totals - external postings
COSS1, " cost totals - internal postings
COVP11, " Line Items by Prd & Doc Header
COVP12, " Line Items by Prd & Doc Header
BHDGD, " Page heading table.
AUFK, " Order Master Data for WBS (LDB)
ANEP, " Asset line item
COBRB, "Distribution Rules Settlement Ru
SETHIER, "Hierarchy Structure
TKA02, "Controlling Area Assignment
CEPC, "Profit Center Master Data
PSDYPD, "Dummy struct for GET proj late
PSDYPR, "Dummy struct for GET PRPS_R late
PSDYNP. "Dummy struct for GET AUFK late
CONSTANTS:
C_E TYPE C VALUE 'E',
C_I TYPE C VALUE 'I',
C_N TYPE C VALUE 'N',
C_X TYPE C VALUE 'X',
C_Y TYPE C VALUE 'Y',
C_NE(2) TYPE C VALUE 'NE',
C_EQ(2) TYPE C VALUE 'EQ',
C_USD(3) TYPE C VALUE 'USD',
C_04(2) TYPE C VALUE '04',
C_I0046(5) TYPE C VALUE 'I0046'
various working storage
DATA:
W_TXT04(4) TYPE C. " make status uppercase
DATA: ACTIVE(1) TYPE C VALUE 'A', " type for status_flag
INACTIVE(1) TYPE C VALUE 'I', " type for status_flag
STATUS_FLAG(1) TYPE C VALUE 'I', " wbs active or inactive?
INACTIVEDT LIKE SY-DATUM, " inactive date for wbs
REC_FLAG TYPE C VALUE 'N', " records retrieved?
DAYS_INACTIVE TYPE I, " days wbs has been inac
W_LOWINACT TYPE I, " smallest inactive days
WBS_CNT TYPE I, " cnt for wbs in status
W_AUC_COST TYPE P DECIMALS 2, " unsettled auc cost
W_VNAME LIKE PRPS_R-VNAME. " venture number storage
DATA: BEGIN OF ITAB OCCURS 0, "MELI-5F2KMH
COMPCODE LIKE PROJ-VBUKR, " company code
PLANT LIKE PROJ-WERKS, " plant
PROJECT LIKE PROJ-PSPID, " project
NAME LIKE PROJ-POST1, " project description
DINACT TYPE I, " days proj inactive
PRCTR LIKE PROJ-PRCTR, " profit center
SETID LIKE SETHIER-SETID, " level 2 pc hier
DESCRIPT LIKE SETHEADERT-DESCRIPT,
VERNA LIKE PROJ-VERNA, " person responsible
AUC TYPE P DECIMALS 2, " AUC unsettled amount
END OF ITAB.
DATA: BEGIN OF I_INACT OCCURS 0,
STAT LIKE JEST-STAT,
INACT LIKE JEST-INACT,
END OF I_INACT.
DATA: EQ_FLAG TYPE C, " system status flag
NE_FLAG TYPE C. " system status flag
TYPES: BEGIN OF T_COSTS,
PSPID LIKE PROJ-PSPID,
BUDAT LIKE COVP11-BUDAT,
END OF T_COSTS.
DATA: I_PROJ LIKE PROJ OCCURS 0 WITH HEADER LINE,
I_PRPS_R LIKE PRPS_R OCCURS 0 WITH HEADER LINE,
I_COSTS TYPE T_COSTS OCCURS 0 WITH HEADER LINE.
DATA: W_RECORDS TYPE I.
DATA: FOUND_FLAG TYPE C. " CHAD-4PRPDE
DATA: BEGIN OF I_HIER OCCURS 0. "FEAT-5BNRRP
INCLUDE STRUCTURE SETHIER. "FEAT-5BNRRP
DATA: END OF I_HIER. "FEAT-5BNRRP
RANGES: R_TJ02T FOR TJ02T-ISTAT.
DATA: W_LVL2 LIKE SETHIER-SETID. "MELI-5F2KMH
SELECTION-SCREEN BEGIN OF BLOCK PROJECT WITH FRAME TITLE TEXT-B01.
PARAMETERS: P_BUDAT LIKE COVP11-BUDAT,
DAYINACT(3) TYPE N DEFAULT '090'.
SELECTION-SCREEN SKIP. "FEAT-5BNRRP
PARAMETERS: P_PC-SET LIKE CEPC-KHINR OBLIGATORY "FEAT-5BNRRP
DEFAULT 'SCH_STREAM'. "FEAT-5BNRRP
SELECTION-SCREEN END OF BLOCK PROJECT.
SELECTION-SCREEN BEGIN OF BLOCK SORT WITH FRAME TITLE TEXT-B02.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(13) TEXT-C01.
SELECTION-SCREEN POSITION 15.
PARAMETERS: P_PLANT RADIOBUTTON GROUP SORT DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(13) TEXT-C03. "FEAT-5BNRRP
SELECTION-SCREEN POSITION 15.
PARAMETERS: P_PRCTR RADIOBUTTON GROUP SORT. "FEAT-5BNRRP
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(13) TEXT-C04.
SELECTION-SCREEN POSITION 15.
PARAMETERS: P_DAYS RADIOBUTTON GROUP SORT.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK SORT.
AT SELECTION-SCREEN OUTPUT.
PERFORM USER_PARM_INIT.
AT SELECTION-SCREEN.
PERFORM CHECK_PROJ_CRITERIA.
START-OF-SELECTION.
PERFORM BUILD_PC_HIER USING P_PC-SET.
Project Definition *
GET PROJ.
MOVE-CORRESPONDING PROJ TO I_PROJ. "MELI-5F2KMH
APPEND I_PROJ. "MELI-5F2KMH
CLEAR I_PROJ.
WBS element table
GET PRPS_R.
MOVE-CORRESPONDING PRPS_R TO I_PRPS_R.
APPEND I_PRPS_R.
CLEAR I_PRPS_R.
GET all order and cost objects associated with order and elements
GET AUFK.
GET COSP1.
CHECK COSP1-WRTTP EQ C_04. " check if value type '04'
Get last date that the wbselement was updated and determine status
GET COVP11.
MOVE PROJ-PSPID TO I_COSTS-PSPID.
MOVE COVP11-BUDAT TO I_COSTS-BUDAT.
APPEND I_COSTS.
CLEAR I_COSTS.
Loop through Internal cost statements
GET COSS1.
CHECK COSS1-WRTTP EQ C_04. " if value type is 04
Get last date that the wbselement was updated and determine status
GET COVP12.
MOVE PROJ-PSPID TO I_COSTS-PSPID.
MOVE COVP12-BUDAT TO I_COSTS-BUDAT.
APPEND I_COSTS.
CLEAR I_COSTS.
END-OF-SELECTION.
PERFORM BUILD_TABLE.
DELETE ITAB WHERE DINACT < DAYINACT.
DESCRIBE TABLE ITAB LINES W_RECORDS.
IF W_RECORDS = 0.
MESSAGE I024.
ENDIF.
PERFORM WRITE_REPORT.
FORM CHECK_PROJ_CRITERIA *
This form verifies correct selection criteria has been entered from *
the selection screen inputs. If incorrect data has been entered the*
valid information messages are displayed. *
FORM CHECK_PROJ_CRITERIA.
check for either posting date or inactivity criteria but not both
IF NOT P_BUDAT IS INITIAL AND NOT DAYINACT IS INITIAL.
MESSAGE E119.
ENDIF.
IF NOT DAYINACT IS INITIAL. "check s/o day inactive
IF NOT DAYINACT <= 998.
MESSAGE E018.
ELSE.
INACTIVEDT = SY-DATUM - DAYINACT.
ENDIF.
if days inactive is initial set INACTIVEDT using the posting date
ELSE.
INACTIVEDT = P_BUDAT.
ENDIF.
ENDFORM. " CHECK_PROJ_CRITERIA
FORM GET_AUC_COSTS *
This form retrieves AUC costs for records based on AUFK2 where they *
meet project criteria. This pulls the unsettled amount on a AUC as *
a settlement receiver. *
FORM GET_AUC_COSTS USING F_OBJNR F_BUKRS.
CONSTANTS:
C_SETLEMENT_ANNUAL LIKE COBRB-PERBZ VALUE 'JHR', "Annual Settlement
C_DEP_AREA_STD LIKE ANEP-AFABE VALUE '01'. "Std depreciation
DATA: L_ANLC LIKE ANLC OCCURS 0 WITH HEADER LINE,
L_ANLCV LIKE ANLCV OCCURS 0 WITH HEADER LINE,
BEGIN OF L_COBRB OCCURS 0, "SRIN-6ZNEAR
ANLN1 LIKE COBRB-ANLN1,
ANLN2 LIKE COBRB-ANLN2,
END OF L_COBRB,
F_H_COST TYPE P DECIMALS 2.
SELECT ANLN1 ANLN2 FROM COBRB
INTO TABLE L_COBRB " SRIN-6ZNEAR
WHERE OBJNR = F_OBJNR
AND PERBZ = C_SETLEMENT_ANNUAL.
IF SY-SUBRC NE 0. " gary-463qbd
EXIT. " gary-463qbd
ENDIF. " gary-463qbd
LOOP AT L_COBRB. " gary-463qbd
CLEAR: F_H_COST.
SELECT SINGLE * FROM ANLC
INTO L_ANLC
WHERE BUKRS = F_BUKRS AND
ANLN1 = L_COBRB-ANLN1 AND
ANLN2 = L_COBRB-ANLN2 AND
GJAHR = SY-DATUM(4) AND
AFABE = C_DEP_AREA_STD AND
ZUJHR = '0000' AND
ZUCOD = '0000'.
IF SY-SUBRC = 0.
CALL FUNCTION 'FI_AA_VALUES_CALCULATE'
EXPORTING
I_ANLC = L_ANLC
IMPORTING
E_ANLCV = L_ANLCV.
F_H_COST = L_ANLCV-BCHWRT_LFD.
ENDIF.
ADD: F_H_COST TO W_AUC_COST.
ENDLOOP. " gary-463qbd
ENDFORM. " GET_AUC_COSTS
FORM CHECK_INACTIVE_DATE *
This form checks the computed inactive date based on the formal *
parameter DAYS_INACTIVE. If DAYS_INACTIVE is more current than the *
current lowest inactive date W_LOWINACT then W_LOWINACT is replaced *
with this value. *
FORM CHECK_INACTIVE_DATE USING DAYS_INACTIVE.
IF DAYS_INACTIVE < W_LOWINACT.
MOVE DAYS_INACTIVE TO W_LOWINACT.
ELSEIF W_LOWINACT EQ 0.
MOVE: DAYS_INACTIVE TO W_LOWINACT,
W_LOWINACT TO ITAB-DINACT.
ENDIF.
ENDFORM. " CHECK_INACTIVE_DATE
FORM build_table *
collect fields to the internal table ITAB *
FORM BUILD_TABLE.
SORT I_COSTS BY PSPID ASCENDING BUDAT DESCENDING.
LOOP AT I_PROJ.
CLEAR W_AUC_COST.
READ TABLE I_COSTS WITH KEY PSPID = I_PROJ-PSPID
BINARY SEARCH.
IF SY-SUBRC = 0.
ITAB-DINACT = SY-DATUM - I_COSTS-BUDAT.
ELSE.
ITAB-DINACT = SY-DATUM - I_PROJ-ERDAT.
ENDIF.
LOOP AT I_PRPS_R WHERE PSPHI = I_PROJ-PSPNR AND
BELKZ = 'X'.
IF NOT I_PRPS_R-IMPRF IS INITIAL.
PERFORM GET_AUC_COSTS USING I_PRPS_R-OBJNR
I_PRPS_R-PBUKR.
ELSE.
CONTINUE.
ENDIF.
ENDLOOP.
ITAB-COMPCODE = I_PROJ-VBUKR.
ITAB-PLANT = I_PROJ-WERKS.
ITAB-PROJECT = I_PROJ-PSPID.
ITAB-NAME = I_PROJ-POST1.
ITAB-PRCTR = I_PROJ-PRCTR.
ITAB-VERNA = I_PROJ-VERNA.
ITAB-AUC = W_AUC_COST.
IF ITAB-DINACT > DAYINACT.
PERFORM GET_HIER_INFO.
ENDIF.
APPEND ITAB.
CLEAR ITAB.
ENDLOOP.
ENDFORM. " BUILD_TABLE
FORM STATUS_CHECK *
Checks the active status of the project definition for the *
parameter values assigned. *
FORM STATUS_CHECK USING F_OBJNR.
begin of GARY-463QBD
CLEAR: I_INACT.
REFRESH: I_INACT.
MOVE: C_N TO EQ_FLAG,
C_Y TO NE_FLAG.
retrieve status for a given record
SELECT STAT INACT
INTO TABLE I_INACT
FROM JEST
WHERE OBJNR EQ F_OBJNR AND
INACT NE C_X.
sort internal status entered by user
SORT R_TJ02T BY OPTION DESCENDING.
check all current object statuses meet user entered criteria
LOOP AT R_TJ02T WHERE OPTION EQ C_NE.
check for user selected options
READ TABLE I_INACT WITH KEY STAT = R_TJ02T-LOW.
IF SY-SUBRC EQ 0.
MOVE C_N TO NE_FLAG.
EXIT.
ENDIF.
ENDLOOP.
LOOP AT R_TJ02T WHERE OPTION EQ C_EQ.
check for user selected options
READ TABLE I_INACT WITH KEY STAT = R_TJ02T-LOW.
IF SY-SUBRC EQ 0.
MOVE C_Y TO EQ_FLAG.
EXIT.
ENDIF.
ENDLOOP.
check for no statuses entered as EQ option
LOOP AT R_TJ02T WHERE OPTION EQ C_EQ.
EXIT.
ENDLOOP.
if so move c_y to eq_flag
IF SY-SUBRC NE 0.
MOVE C_Y TO EQ_FLAG.
ENDIF.
if both eq_flag or ne_flag are true(c_y) move true to valid_flag
IF ( EQ_FLAG EQ C_N OR
NE_FLAG EQ C_N ).
REJECT 'PRPS_R'.
ENDIF.
end of GARY-463QBD
ENDFORM. " STATUS_CHECK
Form WRITE_REPORT
FORM WRITE_REPORT.
IF P_PLANT EQ 'X'.
SORT ASCENDING BY ITAB-BUSAREA "FEAT-5BNRRP
SORT ITAB ASCENDING BY PLANT
PROJECT.
ELSEIF P_PRCTR EQ 'X'.
SORT ITAB ASCENDING BY PRCTR "FEAT-5BNRRP
PROJECT.
ELSE.
SORT ITAB ASCENDING BY DINACT
PROJECT.
ENDIF.
FORMAT COLOR COL_BACKGROUND INTENSIFIED ON.
"MELI-5F2KMH
LOOP AT ITAB. "MELI-5F2KMH
WRITE: / ITAB-COMPCODE,
9(4) ITAB-PLANT,
17(12) ITAB-SETID,
33(40) ITAB-DESCRIPT,
77(10) ITAB-PRCTR,
91(24) ITAB-PROJECT,
119(40) ITAB-NAME,
163(25) ITAB-VERNA,
192(15) ITAB-AUC CURRENCY C_USD,
211(8) ITAB-DINACT.
ENDLOOP.
ENDFORM. " WRITE_REPORT
Form USER_PARM_INIT
Initializes user parameter settings
FORM USER_PARM_INIT.
ENDFORM. " USER_PARM_INIT
At top of every page, generate Amoco-standard header.
TOP-OF-PAGE.
MOVE: '0' TO BHDGD-INIFL,
SY-LINSZ TO BHDGD-LINES,
SY-UNAME TO BHDGD-UNAME,
SY-REPID TO BHDGD-REPID,
SY-TITLE TO BHDGD-LINE1,
SPACE TO BHDGD-DOMAI,
SPACE TO BHDGD-SEPAR,
SPACE TO BHDGD-MIFFL.
IF P_PLANT EQ 'X'.
MOVE TEXT-H01 TO BHDGD-LINE2.
ELSE.
MOVE TEXT-H03 TO BHDGD-LINE2. "FEAT-5BNRRP
ENDIF.
temporarily clear sy-mandt to remove "europe" from header "FEAT-5BNRRP
DATA: W_MANDT LIKE SY-MANDT.
BHDGD-BUKRS = SPACE.
W_MANDT = SY-MANDT.
CLEAR SY-MANDT.
FORMAT COLOR COL_BACKGROUND INTENSIFIED OFF.
PERFORM BATCH-HEADING(RSBTCHH0).
FORMAT RESET.
reset sy-mandt "FEAT-5BNRRP
SY-MANDT = W_MANDT.
PERFORM PGH_WRITE_HEADING USING TEXT-003 INACTIVEDT. "MELI-5F2KMH
SKIP 1.
ULINE.
write heading info
FORMAT COLOR COL_TOTAL INTENSIFIED ON.
WRITE: /1(5)'CCode',
9(5)'Plant',
17(12)'Level 2 Node',
33(40)'Level 2 Node Description',
77(10)'Profit Ctr',
91(18)'Project Definition',
119(19)'Project Description',
163(18)'Person Responsible',
192(15)' AUC Unsettled',
211(13)'Days Inactive'.
end FEAT-5BNRRP
BEGIN FEAT-5BNRRP NEW FORMS
FORM BUILD_PC_HIER
FORM BUILD_PC_HIER USING SETID.
DATA: W_SETID LIKE SETHIER-SETID,
W_NEWSETID LIKE SETHIER-SETID.
CONCATENATE '0H' SETID INTO W_SETID.
CALL FUNCTION 'G_SET_GET_ID_FROM_NAME'
EXPORTING
SHORTNAME = W_SETID
TABNAME = 'GLPCT'
SETCLASS = '0106'
SUPRESS_POPUP = 'X'
OLD_SETID = W_NEWSETID
IMPORTING
NEW_SETID = W_NEWSETID.
CALL FUNCTION 'G_SET_TREE_IMPORT'
EXPORTING
CLIENT = SY-MANDT
LANGU = SY-LANGU
SETID = W_NEWSETID
TABNAME = 'GLPCT'
TABLES
SET_HIERARCHY = I_HIER
EXCEPTIONS
SET_NOT_FOUND = 1
ILLEGAL_FIELD_REPLACEMENT = 2
ILLEGAL_TABLE_REPLACEMENT = 3
OTHERS = 4.
CLEAR I_HIER.
ENDFORM.
FORM GET_HIER_INFO
FORM GET_HIER_INFO.
DATA: W_SETID LIKE SETHIER-SETID,
W_KHINR LIKE CEPC-KHINR,
W_INDEX TYPE I.
CLEAR: W_SETID,
W_KHINR,
W_INDEX.
DETERMINE PROFIT CENTER NODE
SELECT SINGLE KHINR
FROM CEPC
INTO W_KHINR
WHERE PRCTR EQ ITAB-PRCTR.
CONCATENATE '0106' I_PROJ-VKOKR W_KHINR
INTO W_SETID.
READ TABLE I_HIER WITH KEY
SETID = W_SETID.
IF SY-SUBRC EQ 0.
W_INDEX = SY-TABIX.
DO.
READ TABLE I_HIER INDEX W_INDEX.
IF W_INDEX = 0.
ITAB-SETID = 'Not Found'.
EXIT.
ENDIF.
IF I_HIER-LEVEL = 1.
ITAB-SETID = I_HIER-SETID+8(12).
ITAB-DESCRIPT = I_HIER-DESCRIPT.
EXIT.
ENDIF.
IF I_HIER-LEVEL = 2.
ITAB-SETID = I_HIER-SETID+8(12).
ITAB-DESCRIPT = I_HIER-DESCRIPT.
EXIT.
ENDIF.
W_INDEX = W_INDEX - 1.
ENDDO.
ELSE.
ITAB-SETID = 'Not Found'.
ENDIF.
ENDFORM.
END FEAT-5BNRRP NEW FORMS
*& Form PGH_WRITE_HEADING WR MELI-5F2KMH
FORM PGH_WRITE_HEADING USING L_V1 L_V2.
DATA: L_LINSZ LIKE SY-LINSZ.
DATA: L_TITLEL LIKE SY-TABIX.
DATA: L_START LIKE SY-TABIX.
DATA: L_DATE LIKE SY-DATUM.
DATA: L_FORMATTED_DATE(10) TYPE C.
DATA: L_TITLE(27) TYPE C.
MOVE L_V2 TO L_DATE.
WRITE L_DATE TO L_FORMATTED_DATE.
CONCATENATE L_V1 L_FORMATTED_DATE INTO L_TITLE
SEPARATED BY SPACE.
L_LINSZ = SY-LINSZ.
L_TITLEL = STRLEN( L_TITLE ).
L_START = ( L_LINSZ / 2 ) - ( L_TITLEL / 2 ) - 2.
NEW-LINE.
POSITION L_START.
WRITE: L_TITLE.
regards
Mallik -
Short dump -No more storage space available for extending an internal table
Hi All,
While running one program I get the short dump saying
"No more storage space available for extending an internal table "IT_862".
Error Analysis given in the dump log :
The internal table "IT_862" could not be enlarged further.
To extend the internal table, 14656 bytes of storage space was
needed, but none was available. At this point, the table "IT_862" has
8528862 entries.
Source Code Extract :
003360 loop at t_line.
003370 clear t_output.
003380
003390 * Increment Line counter
003400 add 1 to l_line_cnt.
003410
003420 t_output-object = t_stxh-tdobject.
003430 t_output-id = t_stxh-tdid.
003440 t_output-spras = t_stxh-tdspras.
003450 t_output-name = t_stxh-tdname.
003460 t_output-line = l_line_cnt.
003470 t_output-format = t_line-tdformat.
003480 t_output-text = t_line-tdline.
*> append toutput. " ERROR POINT*
Can you please suggest what can be the possible solution for the above error.
Thanks in advance.
SanjeetHi
Check out this thread:
Re: No storage space available for extending the internal table
Make sure you are not having an infinite loop.
Hope this helps
Regards,
Jayanthi.K -
Short dump due to conversion error on screen
Hello all,
I have designed one screen, and throwing error message if perticular filed is blank as (message e002(z2)). If i keep the filed blank system is throwing error message but giving short dump because of 'Conversion error' .
Error analysis : 'The program has been interrupted and cannot resume. |
Program "SAPMZTIMECOLLECT_NEW" attempted to display fields on screen 0101.
| An error occurred during the conversion of this data. '
Please, could you help to understand why system is giving short dump.
Thanks in advance..!!Solved for me.
If we don't have value for the field which we are passing it to tablecontrol, then declare the variable with the same type and assigned space for the same and submit it to table control output. then the error is not coming.
Ex: If we dont have the value for the table control field (KOSTL), then declare one constant K_KOSTL LIK below,
DATA:K_KOSTL TYPE KOSTL.
K_KOSTL = ' '.
IF the value of table control field is initial, then pass K_KOSTL to it.
This what I have done.
Regards
Ramesh. -
Short dump due termination in the program SAPLSNR3
Hi Experts,
While running an IP I am getting short dump, and error analysis says
An ASSIGN statement in the program "SAPLSNR3" contained a field symbol with
length 0. This is not possible. length 0.This is not possible.
can any one exlain why the IP is going for short dump,rectify the error and make the IP to run sucessful.
Regards,
SiddhardhHi Suresh,
Your dump is occuring due to database limit of sql statment (Native SQL) that is generated from your abap sql. The range is killing him (as you already notice).
The thread bellow have some info about this, but the solution can't be applyed to you:
To update 1 field of ztable(60 fields) for 2000 records in minimum DB hit
Maybe you can build some logic to reduce the value of two ranges (also concatenating them). Anyway, due to amount of lines involved (24.500 lines).... I don't think it is possible.
One option is filter the result on ABAP, after your SQL w/o the ranges you may try:
DELETE FROM TABLE i_glpct2
WHERE NOT ( racct IN r_profloss OR racct IN r_balsheet ).
This can raise a performance problem if the number of returned rows from database is to high.
Another option is change your database access. Where the values of the two ranges came from ? database ? If they came from database try to use INNER JOIN, this will solve the problem w/o performance problem.
Best Regards, Fernando Da Ró -
Short Dump due to TIME_OUT Error
Hi,
We have a situation here, where the monthly data from R/3 is extracted to ODS (Full upload) and subsequently getting uploaded to infocube (Delta). Usually the ODS to infocube updation takes long hours of time (say 8 hours), because of complexity of the update rules over the cube and this was working fine for the past months.
But on 1st of this month when I extracted R/3 data went fine upto ODS, but failed in the further process (i.e., ODS to Infocube) resulting in a short dump. Extract is shown below
Short dump in the Warehouse
Diagnosis
The data update was not completed. A short dump has probably been logged in BW providing information about the error.
System response
"Caller 70" is missing.
Further analysis:
Search in the BW short dump overview for the short dump belonging to the request. Pay attention to the correct time and date on the selection screen.
You get a short dump list using the Wizard or via the menu path "Environment -> Short dump -> In the Data Warehouse".
So I want to try out with another option, Since we know the data coming to ODS on a monthly basis, instead of pushing the data to infocube in delta mode, can I upload the data using full update (but of course weekly wise) to cube ?.
What will be the complications?.
Please guide with your ideas
Thanks in advance,
Arun.System response
"Caller 70" is missing.
Further analysis:
Search in the BW short dump overview for the short dump belonging to the request. Pay attention to the correct time and date on the selection screen.
You get a short dump list using the Wizard or via the menu path "Environment -> Short dump -> In the Data Warehouse".
Did you follow this recommendation? Did you check the short dump?
If it is really a time_out issue, the short dump will tell you so, but there can also be other causes for caller 70 missing.
It is a time_out you can either increase your time out setting, or decrease the package size in your infopackages;
kr,
Tom -
SHORT DUMP due to STORAGE_PARAMETERS_WRONG_SET in ALV
Hello All,
There is an internal table containing more than 200,000 thousand records.
when this is passed to ALV grid for display, the program terminates with the exception STORAGE_PARAMETERS_WRONG_SET
I was wondering if there is a way to prevent the program from terminating.
Are there any system settings that can be changed/checked?
(Its an Unix OS).
Any help is welcome.
Many thanks!
VinayThis is what SAP documentation says:
Set the system profile parameters
- abap/heap_area_dia
- abap/heap_area_nondia
to a maximum value. Then reduce the value by 10.000.000 to be on the
safe side.
Then restart the SAP System.
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.
The program had already requested &P1 bytes from the operating
system with 'malloc' when the operating system reported after a
further memory request that there was no more memory space
available. -
Short Dump in MIGO transaction
When executing the transaction MIGO the transaction ends with the short dump as follows.
is it because of SAPNOTE 385830 ?
short text of error message : GET_SYTEM_BUSINESS_ERROR An error occurred while determining the business system ( No_business_system)
Technical information of error message
messgae class 00
number 001
variable 1 GET_SYTEM_BUSINESS_ERROR An error occurred while
variable 2 determining the business system ( No_business_system)
T CODE : migo
PROGRAM : SAPLMBWL
sceen no saplmigo 0001
screen line 18
the dump occurs at the line marked with -
>.
function mb_post_goods_movement.
""Local Interface:
*" IMPORTING
*" VALUE(XBLNR_SD) OPTIONAL
*" EXPORTING
*" VALUE(EMKPF) LIKE EMKPF STRUCTURE EMKPF
data: l_mem_id(10) type c. " 641365
Wurde zuvor eine Lieferung erzeugt, so ist kein MB_POST... nötig "HUM
check not xdeliv = x. "HUM
Control posting for external WM: Exit if BFWMS = 1 (Create delivery)
check not mkpf-bfwms = 1. "357661
read table xmseg index 1.
if not sy-subrc is initial.
message a260.
endif.
if xmkpf-mblnr is initial.
message a260.
endif.
xcommit = x. "Performance
if not xblnr_sd is initial.
xmkpf-xblnr = xblnr_sd.
xmkpf-le_vbeln = xblnr_sd. "XAN-SPM
modify xmkpf index 1.
when a goods movement for an inbound or outbound delivery is posted
directly from VL31N/ VL01N, XBLNR is not yet known when we call
CKMV_AC_DOCUMENT_CREATE, but the number is supposed to be stored in
BKPF as well. There is no other way to forward XBLNR to FI as not
every document is posted by MB_CREATE -> a new function module in
MBWL for transferring the information, called by FI, meant to load
the complete function group for all MBxx postings when this isn't
required (Performance). Would be the better way to transport the
information after switching off MBxx in later release.
corresponding IMPORT ... FROM MEMORY ... can be found in
AC_DOCUMENT_POST (FORM FI_DOCUMENT_PREPARE (LFACIF5D))
l_mem_id = 'MKPF-XBLNR'. " 641365
export xblnr = xblnr_sd to memory id l_mem_id. " 641365
endif.
if xmkpf-xabln is initial. "note 434093
call function 'MB_XAB_NUMBER_GET'. "note 434093
endif. "note 434093
enhancement-point mb_post_goods_movements_01 spots es_saplmbwl static.
$$-Start: MB_POST_GOODS_MOVEMENTS_01----
$$
enhancement 26 dimp_general_saplmbwl. "active version
data: l_statics_lock type c.
endenhancement.
$$-End: MB_POST_GOODS_MOVEMENTS_01----
$$
enhancement-point mb_post_goods_movements_02 spots es_saplmbwl.
$$-Start: MB_POST_GOODS_MOVEMENTS_02----
$$
enhancement 25 dimp_general_saplmbwl. "active version
read table xvbfa index 1.
if sy-subrc is initial and
g_vbtyp_v = '7'.
perform get_mdiff_kenz(sapmm07m) changing l_statics_lock.
endif.
endenhancement.
$$-End: MB_POST_GOODS_MOVEMENTS_02----
$$
call function 'MB_CREATE_MATERIAL_DOCUMENT_UT'
exceptions
error_message = 4.
As soon as we have started to put things into UPDATE TASK, we must
ensure that errors definitely terminate the transaction.
MESSAGE A is not sufficient because it can be catched from
external callers which COMMIT WORK afterwards, resulting in
incomplete updates. Read note 385830 for the full story.
if not sy-subrc is initial.
message id sy-msgid type x number sy-msgno with "385830
sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
MESSAGE A263.
endif.
Optische Archivierung
Spaete Erfassung mit Barcode
Redesign of barcode handling -> note 780365
perform barcode_update(sapmm07m) using xmkpf-mblnr
xmkpf-mjahr
barcode.
move-corresponding xmkpf to emkpf.
call function 'MB_MOVEMENTS_REFRESH'
exceptions
error_message = 4.
move-corresponding xmkpf to emkpf.
call function 'MB_MOVEMENTS_REFRESH'
exceptions
error_message = 4.
if not sy-subrc is initial.
message id sy-msgid type x number sy-msgno with "385830
sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
MESSAGE A261.
endif.
perform buchen_initialisieren(sapmm07m).
clear emkpf-subrc.
clear global fields when COMMIT WORK "Performance
if not sy-oncom = p.
perform clear_xcommit on commit.
else.
perform clear_xcommit. "if this FB is called on commit
endif.
perform clear_xcommit on rollback. "note 303392
endfunctionhi
check SAP Note 556000 - Short dump due to note 385830
Summary
Symptom
Consider the subsequent note 561872 ! *
You want to post a goods receipt for a reference document (for example purchase order, delivery ...). The checks do not cause any error. Nevertheless, the system generates a short dump which is deliberately triggered by note 385830.
One known scenario is a stock transfer process via a delivery: You have entered a stock transport order assigned to a sales order and post a goods receipt for the delivery via transaction MIGO. The sales order must be in valuated. The material to which postings are to be made is valuated separately and to be handled in batches. And the batch, which was assigned via the delivery, already exists with a valuation type in the receiving plant which is different from the one specified in the purchase order.
Other terms
MB_CREATE_GOODS_MOVEMENT, MIGO, MCHA, BWTAR.
Reason and Prerequisites
Prerequisites: see above. This is a program error.
Solution
Implement the attached program corrections.
Then implement the subsequent note 561872.
After the implementation of the note, checks are carried out in the program flow - if a batch and a valuation type were entered for a goods movement (for instance with reference to the purchase order or delivery) - on whether the assignment of the batch and valuation type is correct.
regards
KI -
Short Dump while copying Org structure from ERP to CRM
Hello Experts:
We are trying to copy the Org structure from ECC to CRM.
We have a standard transaction 'CRMC_R3_ORG_GENERATE' to copy the the org structure from ECC or the IMG path:
SPRO->CRM->Master Data->Organization Management->Data Transfer->Coppy ECC Sales Structure
We have a multiple assignment scenario where each sales groups are assigned to multiple sales offices and likewise,each sales office is assigned to multiple sales org unit in ECC.
This can be achieved by turning on the enhanced version.
In our current business,even though the sales offices and groups are created,but are not having relavance in the business,hence while running in the sandbox system, we ran the program to copy the structures in the standard mode(default) and we could copy it without issues and create the org units for every entity in CRM based on how the number ranges are defined.
What happens when enhanced version switch is turned on ::
While we turn the mode to enhanced version, The system automatically::
- enhances the Function tab page in the ppoma_crm transaction to include a grid table, in which you maintain multiple assignments of organizational units
- generates an extra dialog box to the Organization tab page in business transactions for you to select the relevant assignment path for the organizational unit
- adapts the consistency check in business transactions to take into account organizational units that have been multiple assigned
Risk factor :
Once you have switched to the enhanced backend integration version of the organizational model you cannot return to the standard backend integration version. The system will also automatically make changes to the organizational model version in CRM Mobile Sales.
Also this structure will happen across all the clients in the system,so unfortunately cannot try in a sandbox client also of the new environment.
We are building our development box,so while running the above step in standard mode,the program gives a short dump due to long execution time even though we have the same amount of data as in our prototype system.
Also, we increased the idle time value to a very high value.
When I approached SAP OSS,I was told that it is due to the multiple assignment scenario,hence we need to switch to enhanced version in CRM before we run the copy program ( CRMC_ORG_R3_GENERATE )
I am not quite sure if the mismatch of the scenarios between CRM and ECC could be causing this short dump as we could run it in standard mode in our prototype/sandbox environment without issues even with the same data volume as in the new development system .
I am looking for help from all the experts if they have come across similar issue and your recommendations/feedback if this can be corrected.
Appreciate your guidance/recommendation on this issue.
thanks!!In CRM Best Practices Building block C05 is the step by step description how to replicate Org. structure and some of employee's master data.
Follow link - http://help.sap.com/bp_crmv12007/CRM_DE/BBLibrary/html/C05_EN_DE.htm -
Infopackage in process chain failing due to short dump on regular basis.
HI Experts,
There is a daily process chain in which one of the element (infopackage) fails due to short dump on regular basis (At least twice in a week) please find the message below
Runtime Errors DBIF_RSQL_SQL_ERROR
Exception CX_SY_OPEN_SQL_DB
Short text
SQL error in the database when accessing a table.
And in job log it is showing ARFCSTATE = SYSFAIL
We are able to resolve it just manual update and the process goes fine no issues but my question here is what is the exact reason for this and how to resolve it permanently or decrease the frequency of the error.
Please if any one can tell the root cause and the solution to avoid the issue in future on regular basis.
and also can any one elaborate what is ARFCSTATE = SYSFAIL,for trfc check we don't have access to SM58 in ECC side
and trfc is fine in bw side
Appreciate for not giving the general solutions like repeated solutions already posted in SDN
with regards,
musaiYou can contact your BASIS person he can help you reg table space issue. it says used space is 98% and free space is 1.03%.
ask your basis to set a threshold to check the space and send a mail notification to all daily regarding the space allocation and utilization.
ARFCSTATE = SYSFAIL means the TRFC did not processed properly to the BW system from source.
Monitoring object with information about tRFC and qRFC calls that are waiting to be executed in this system; after they have been executed, they are deleted from table ARFCRSTATE.
Are there any hung TRFCs which are not processed to BW side. have you checked it
first check
load monitor -- menu -- environment -- job overview -- status of job(is it finsihed or not?) - check the job log -- ther try to find out the hung TRFc
press find --tyep "sysfail" ok -- it will display all the hung or fialed TRFCs which are not processed to BW system.
if you find the hung TID with respect to your load.. next goto SM58 trasaction to process the trfcs manually or use the load monitor menu -- environment -- transaction RFC -- source sys -- it will take you to same SM58 screen -- click F8 it will display the hung TRFc in that duration.
select the TRFc and click on F6 to process them manually.
also check the loackwaits anddead locks in ST04/DB6COCKPIT.( ask basis to check) if any dead locks are there they will take care of it.
check for short dumps in st22 if any and try to analyse.
Check the SM21 system logs. -
I am investigating a performance problem with a SAP standard report. It falls over when trying to sort a table, the table size is [194994x294]. In know this is large but is it common for it to cause a EXSORT_NOT_ENOUGH_MEMORY short dump?
Hi,
Go to my computer and right click on it....
and go to properties.....
then go to advanced tab...
in it go to performance settings...
then go to advanced tab
in that go to virtual memory....in it click on change...
in change click on the radio button 'system managed size'
click on set and save it...
it might help you...
Regards
Debarshi -
Exception Reporting failure due to short dump UNCAUGHT_EXCEPTION
Hi everyone,
Exception Reporting called u201CPO Price Deviationu201D failure due to short dump UNCAUGHT_EXCEPTION.
Need your reply on this urgently.
Thank you,
PrasadHi Andrew Zhou,
Actually the Exception reporting step failed because there was no applicable data for the selection criteria mentioned in the BEx report. And the data was stuck in the source system. We got it solved my contacting the R/3 cosultant.
I am giving you points for the response. And I would like to know one thing about RSRT if I select "use aggregates" option for a query it is showing aggregates while debuging even though there are no aggregates created on the Cube.
Thank you
Maybe you are looking for
-
IOS update, storage, and icloud
I have an iPad and I am not able to update to the iOS 8.0.2 due to insufficient storage. I was hoping to free up my storage by moving all my photos and videos to the icloud. I believe I have transferred a few, but before deleting them off my iPad cam
-
Batch confirm Faces-- possible?
I'm finding "Faces" to be potentially very useful, but frustrating to implement because of the apparent necessity to click "Confirm" again and again with all of the instances of "Johnny Jones may also be in the photos below" where, yes, Johnny is the
-
Hey... When I attempt to resize photos in Preview... sometimes it works, but more often it doesn't. I can try to save the image after the resize, or I've tried closing the image and forcing the Preview Save dlg box... either way... sometimes it works
-
Problems publishing iWeb website
When I publish my website icons are misplaced and fonts are wrong. It seems every time I republish it happens more. Driving me crazy!! Help!
-
FCP behaves funky when SOUND SOAP is applied
I'm wondering if anyone else has run into this situation.... When I go to apply my SOUND SOAP filter to an audio clip in my timeline, FCP slowly begins to show strange behavior. This is what happens: 1). I can no longer access features using keyboard