MEMORY_NO_MORE_PAGING
Hi
I have just installed NSP testdrive - in System:Status it says: SAP EHP 1 for SAP NetWeaver 7.0
When i try to run transaction SWO3 i get a MEMORY_NO_MORE_PAGING dump. What can I do about that?
The dump:
Runtime Errors MEMORY_NO_MORE_PAGING
Short text
SAP paging overflow when storing data in the ABAP/4 memory.
What happened?
The current program requested storage space from the SAP paging area,
but this request could not be fulfilled.
of this area in the SAP system profile.
Error analysis
The ABAP/4 runtime system and the ABAP/4 compiler use a common
interface to store different types of data in different parts of
the SAP paging area. This data includes the
ABAP/4 memory (EXPORT TO MEMORY), the SUBMIT REPORT parameters,
CALL DIALOG and CALL TRANSACTION USING, as well as internally defined
macros (specified with DEFINE).
To store further data in the SAP paging area, you attempted to
allocate a new SAP paging block, but no more blocks were
available.
When the SAP paging overflow occurred, the ABAP/4 memory contained
entries for 5 of different IDs.
Please note:
To facilitate error handling, the ABAP/4 memory was
deleted.
Trigger Location of Runtime Error
Program SAPLSEUT
Include LSEUTU12
Row 60
Module type (FORM)
Module Name TR_PUSH
Hi Thomas,
Go to ST22, click on "How to correct" it will give the necessary steps.
You need to tweak some meomory pramater to get rid of this paging error.
Thanks,
Debasis.
Similar Messages
-
MEMORY_NO_MORE_PAGING problem
Hi,
I need help with this issue:
I am facing a MEMORY_NO_MORE_PAGING problem, and I don't know how to solve it. This problem is happening often during the week.
As an example I pasted on DUMP log. In addition, at the beginning I pasted the screen information of transaction ST02.
I have already checked the disk space and itu2019s ok, there is plenty of free space.
Best regards,
Fernando.
ST02 information:
System: SRV-SAPPROD_PRO_00 Tune summary
Date & time of snapshot: 05.11.2009 11:14:41 Startup: 19.10.2009 08:15:59
Buffer Hitratio Allocated Free space Dir. size Free directory Swaps Database
Entries Entries accesses
Nametab (NTAB)
Table definition 99,28 6.447 0 0,00 30.000 0 0,00 17.354 106.524
Field description 99,33 49.289 2.299 4,79 30.000 11.890 39,63 45.037 70.424
Short NTAB 99,79 3.498 2.755 91,83 7.500 6.303 84,04 0 1.212
Initial records 99,08 9.998 8.192 86,23 7.500 653 8,71 41.690 48.659
Program 98,99 400.000 1.102 0,29 100.000 89.560 89,56 159.655 520.665
CUA 99,89 5.000 208 4,67 2.500 1.464 58,56 0 1.360
Screen 99,88 19.531 6.272 32,31 2.000 1.298 64,90 0 1.667
Calendar 100,00 488 369 76,88 200 54 27,00 0 146
OTR 100,00 4.096 3.657 100,00 2.000 2.000 100,00 0 0
Tables
Generic key 99,92 48.828 20.810 43,46 5.000 262 5,24 168 97.934
Single record 92,56 30.000 479 1,60 500 394 78,80 70 439.952
Export/import 87,68 4.096 110 3,01 2.000 187 9,35 245.701 0
Exp./Imp. SHM 95,02 4.096 3.581 97,92 2.000 1.999 99,95 0 0
SAP memory Current use Max. use In memory On disk
Roll area 2,29 6.009 8.728 65.536 196.608
Paging area 91,36 239.487 262.136 124.480 137.664
Extended Memory 64,86 1.325.056 1.728.512 2.042.880
Heap Memory 0 1.356.990
DUMP LOG:
Errores tiempo ejec. MEMORY_NO_MORE_PAGING
Fecha y hora 05.11.2009 10:43:41
Txt.brv.
SAP paging overflow when storing data in the ABAP/4 memory.
¿Qué ha sucedido?
The current program requested storage space from the SAP paging area,
but this request could not be fulfilled.
of this area in the SAP system profile.
Notas para corregir errores
| The amount of storage space (in bytes) filled at termination time was:
Roll area...................... 8112
Extended memory (EM)........... 143208832
Assigned memory (HEAP)......... 0
Short area..................... " "
Paging area.................... 32768
Maximum address space.......... " "
You may able to find an interim solution to the problem
in the SAP note system. If you have access to the note system yourself,
use the following search criteria:
"MEMORY_NO_MORE_PAGING" C
"SAPDBIOC" or "DBIOCF02"
"FILL_MEMORY"
Entorno sistema
SAP Release.............. "640"
Application server....... "SRV-SAPPROD"
Network address.......... "172.16.1.11"
Operating system......... "Windows NT"
Release.................. "5.2"
Hardware type............ "4x Intel 801586"
Character length......... 8 Bits
Pointer length........... 32 Bits
Work process number...... 3
Short dump setting....... "full"
Database server.......... "SRV-SAPPROD"
Database type............ "MSSQL"
Database name............ "PRO"
Database owner........... "pro"
Character set............ "Spanish_Spain.1252"
SAP kernel............... "640"
Created on............... "Aug 7 2009 22:57:17"
Created in............... "NT 5.2 3790 Service Pack 2 x86 MS VC++ 14.00"
Database version......... "SQL_Server_9.00 "
Patch level.............. "295"
Patch text............... " "
Supported environment....
Database................. "MSSQL 7.00.699 or higher, MSSQL 8.00.194"
SAP database version..... "640"
Operating system......... "Windows NT 5.0, Windows NT 5.1, Windows NT 5.2,
Windows NT 6.0"
Memory usage.............
Roll..................... 8112
EM....................... 143208832
Heap..................... 0
Page..................... 32768
MM Used.................. 121508448
MM Free.................. 9141720
SAP Release.............. "640"
Usuario y transacción
Client.............. 300
User................ "AMATUCHESKI"
Language key........ "S"
Transaction......... "COOISPI "
Program............. "SAPDBIOC"
Screen.............. "SAPMSSY0 1000"
Screen line......... 6
Líneas de pila C en núcleo (estructura diferente según la plataforma)
SAP (R) - R/3(TM) Callstack, Version 1.0
Copyright (C) SAP AG. All rights reserved.
Callstack without Exception:
App : disp+work.EXE (pid=5596)
When : 11/5/2009 10:43:38.343
Threads : 2
Computer Name : SRV-SAPPROD
User Name : SAPServicePRO
Number of Processors: 4
Processor Type: x86 Family 15 Model 4 Stepping 3
Windows Version : 5.2 Current Build: 3790
Stack Dump for Thread Id 15e0
Edited by: Fernando Zanelli on Nov 5, 2009 1:29 PMHi,
After the first chart that displays the actual system memory status you can find the system parameters.The rdisp/PG_MAXFS as you can see is deactivated and his default value is 32768.
It should stay deactivated or I need to bring it active?
SAP Memory St02:
SAP memory Current use Max. use In memory On disk
[%] [kB] [kB] [kB] [kB]
Roll area 2,15 5.630 6.888 65.536 196.608
Paging area 91,63 240.203 262.136 124.480 137.664
Extended Memory 60,75 1.241.088 1.514.496 2.042.880
Heap Memory 0 0
system parameters:
|X|abap/fieldexit |yes
|X|login/system_client |300
|X|SAPSYSTEMNAME |PRO
|X|INSTANCE_NAME |DVEBMGS00
|X|SAPSYSTEM |00
|X|rdisp/wp_no_dia |8
|X|rdisp/wp_no_btc |4
|X|rdisp/wp_no_vb |3
|X|rdisp/wp_no_vb2 |2
|X|rdisp/wp_no_enq |1
|X|rdisp/wp_no_spo |2
|X|SAPGLOBALHOST |srv-sapprod
|X|PHYS_MEMSIZE |1996
|X|DIR_TRANS |C:\usr\sap\trans
|X|icm/server_port_0 |PROT=HTTP,PORT=8000
|X|abap/buffersize |400000
|X|zcsa/table_buffer_area |50000000
|X|rtbb/buffer_length |30000
|X|rsdb/cua/buffersize |5000
|X|gw/max_conn |2000
|X|gw/max_sys |2000
|X|gw/max_overflow_size |25000000
|X|enque/table_size |10000
|X|zcsa/presentation_buffer_area |20000000
|X|rdisp/appc_ca_blk_no |100
|X|rdisp/wp_ca_blk_no |300
|X|rsdb/ntab/entrycount |30000
|X|rsdb/ntab/ftabsize |48000
|X|rsdb/ntab/irbdsize |9500
|X|rsdb/ntab/sntabsize |3000
|X|DIR_ROLL |C:\usr\sap\PRO\DVEBMGS00\data
|X|DIR_PAGING |C:\usr\sap\PRO\DVEBMGS00\data
|X|DIR_DATA |C:\usr\sap\PRO\DVEBMGS00\data
|X|DIR_REORG |C:\usr\sap\PRO\DVEBMGS00\data
|X|DIR_TEMP |.
|X|DIR_SORTTMP |C:\usr\sap\PRO\DVEBMGS00\data
|X|zcsa/system_language |S
|X|zcsa/installed_languages |EDPS
|X|install/codepage/appl_server |1100
|X|abap/use_paging |0
| |ztta/roll_first |1024
| |ztta/roll_area |2000896
|X|rdisp/ROLL_SHM |8192
| |rdisp/ROLL_MAXFS |32768
|X|rdisp/PG_SHM |15560
| |rdisp/PG_MAXFS |32768
| |abap/heap_area_dia |2000683008
| |abap/heap_area_nondia |2000683008
| |abap/heap_area_total |2000683008
| |abap/heaplimit |40894464
|X|abap/swap_reserve |20971520
| |ztta/roll_extension |2000683008
| |em/initial_size_MB |1840
|X|em/blocksize_KB |1024
|X|em/stat_log_size_MB |20
|X|em/stat_log_timeout |0
| |em/address_space_MB |512 -
MEMORY_NO_MORE_PAGING " dump
Hi All,
We are at SAP ECC 5.0 SAP_BASIS 640.
Today morning while running mb51 we got " MEMORY_NO_MORE_PAGING " dump.
Could please help to fix this problem?
Here is the error info:
What happened?
The current ABAP program had to be terminated because the
ABAP processor detected an internal system error.
The current ABAP program "RM07DOCS" had to be terminated because the ABAP
processor discovered an invalid system state.
Error analysis
An internal error occurred when releasing memory in
SAP Paging. The release ended with the error code
"-1".
How to correct the error
It is probably not possible to eliminate the system error
with ABAP alone.
If you have access to SAPnet, you can search for a relevant note
using the following keywords:
"MEMORY_PGFREE_FAILED" " "
"RM07DOCS" bzw. "RM07DOCS_GENERATED"
"DATA_SELECTION"
171 endloop.
172
173 * process SELECT command depending on the
174 * required material selection
175 if l_cnt_matnr_total > 0 and
176 l_cnt_matnr_total = l_cnt_matnr_i_eq.
177 * work with .. for all entries ...
178 select (l_t_fields)
179 into corresponding fields of table itab
180 from mkpf inner join mseg
181 on mkpfmandt = msegmandt
182 and mkpfmblnr = msegmblnr
183 and mkpfmjahr = msegmjahr
184 for all entries in matnr
185 where matnr = matnr-low
186 and MKPF~BUDAT in BUDAT
187 and MSEG~BWART in BWART
188 and MSEG~CHARG in CHARG
189 and MSEG~KUNNR in KUNNR
190 and MSEG~LGORT in LGORT
191 and MSEG~LIFNR in LIFNR
192 and MKPF~MJAHR in MJAHR
193 and MSEG~SOBKZ in SOBKZ
194 and MKPF~USNAM in USNAM
195 and MKPF~VGART in VGART
196 and MSEG~WERKS in WERKS
197 and MKPF~XBLNR in XBLNR
198 .
199 else.
200 * work with the select command as usual
>>>>> select (l_t_fields)
202 into corresponding fields of table itab
203 from mkpf inner join mseg
204 on mkpfmandt = msegmandt
205 and mkpfmblnr = msegmblnr
206 and mkpfmjahr = msegmjahr
207 WHERE MKPF~BUDAT in BUDAT
208 and MSEG~BWART in BWART
209 and MSEG~CHARG in CHARG
210 and MSEG~KUNNR in KUNNR
211 and MSEG~LGORT in LGORT
212 and MSEG~LIFNR in LIFNR
213 and MSEG~MATNR in MATNR
214 and MKPF~MJAHR in MJAHR
215 and MSEG~SOBKZ in SOBKZ
216 and MKPF~USNAM in USNAM
217 and MKPF~VGART in VGART
218 and MSEG~WERKS in WERKS
219 and MKPF~XBLNR in XBLNR
Regards,
LeoNote 1091141 & note 1104914 also are recommending that you upgrade your Basis kernel release to resolve the error.
4.6D: 2348
6.40: 204
7.00: 131
If your Basis kernel release is not listed but you are receiving the error often, I would still upgrade to the latest kernel release. -
MEMORY_NO_MORE_PAGING error
Hi,
We are using ECC 5.0 here. Our DB is Oracle 9.2.0.6 and OS is AIX.
We have a problem here.
Our Finance people run a report "S_ALR_87013542". It was working fine.
But now it is giving an error with ABAP Dump. The error is MEMORY_NO_MORE_PAGING.
I have increased the parameter "rdisp/PG_SHM" to the double value. Now the value is 16384. But it is still giving the same error.
I increased it on a Dialog Instance (application server through which Finance people access SAP)
I searched the notes, but could not find anything relevant about my error.
I have tried to run the report in the night when there is no load on the server. But even then it gives the same error.
My different Memory Paramters for the App server for finance people are listed below:-
ztta/roll_area 3000320
rdisp/ROLL_SHM 16384
rdisp/ROLL_MAXFS 32768
rdisp/PG_SHM 16384
rdisp/PG_MAXFS 32768
abap/heap_area_dia 2000683008
abap/heap_area_nondia 2000683008
abap/heap_area_total 2000683008
abap/heaplimit 40894464
abap/swap_reserve 20971520
ztta/roll_extension 2000683008
My ABAP dump gives this error:-
Error analysis
The ABAP/4 runtime system and the ABAP/4 compiler use a common
interface to store different types of data in different parts of
the SAP paging area. This data includes the
ABAP/4 memory (EXPORT TO MEMORY), the SUBMIT REPORT parameters,
CALL DIALOG and CALL TRANSACTION USING, as well as internally defined
macros (specified with DEFINE).
To store further data in the SAP paging area, you attempted to
allocate a new SAP paging block, but no more blocks were
available.
When the SAP paging overflow occurred, the ABAP/4 memory contained
entries for 55 of different IDs.
Please note:
To facilitate error handling, the ABAP/4 memory was
deleted.
How to correct the error
The amount of storage space (in bytes) filled at termination time was:
Roll area...................... 16128
Extended memory (EM)........... 418992800
Assigned memory (HEAP)......... 0
Short area..................... " "
Paging area.................... 40960
Maximum address space.......... 4294967295
By calling Transaction SM04 and choosing 'Goto' -> 'Block list',
you can display an overview of the current roll and paging memory
levels resulting from active users and their transactions. Try to
decide from this whether another program requires a lot of memory
space (perhaps too much).
The system log contains more detailed information about the
termination. Check for any unwanted recursion.
Determine whether the error also occurs with small volumes of
data. Check the profile (parameter "rdisp/PG_MAXFS", see
Installation Guidelines).
Is the disk or the file system that contains the paging file
full to the extent that it cannot be increased, although it has
not yet reached the size defined in the profile? Is the
operating system configured to accommodate files of such a
size?
The ABAP processor stores different types of data in the SAP paging area
. These include:
(1) Data clusters (EXPORT ... TO MEMORY ...)
(2) Parameters when calling programs (SUBMIT REPORT ...),
dialog modues (CALL DIALOG ...) and transactions
(CALL TRANSACTION USING ...)
(3) Internally defined macros (DEFINE ...)
Accordingly, you should check the relevant statements in a program
that results in an overflow of the SAP paging area.
The EXPORT statement is particularly critical - specifically when many
internal tables, possibly with different IDs, are written to the
memory.
Kindly help
Regards,
TajinderHello,
Here the parameters for concern are
1.rdisp/PG_SHM
2.rdisp/PG_MAXFS
1.rdisp/PG_SHM :
The value specifies the size of the paging buffer in 8KB blocks.
A paging buffer is no longer required for SAP Memory Managment,
because internal tables and lists are not stored in SAP paging.
Default : 0
2.rdisp/PG_MAXFS :
This value specifies the size of the SAP paging file in 8KB
blocks. The paging file is used to store extracts and for
Export to Memory.
Aim:
The paging file must be sufficiently large. It is not a problem
if it is set to too large a size.
Dependencies:
Sufficient disk space
You can try
1.Optimize the code, to use less memory.
OR
2.Increasing the parameter rdisp/PG_MAXFS as per the availability of disk space.
Hope this solves your problem.
Regards,
Edited by: Satish P on Oct 21, 2008 2:01 PM -
MEMORY_NO_MORE_PAGING dump in LCEI0F6O
Hi Experts,
When i run a background job for a zprogram automatically another job is getting triggered and it is getting cancelled after some time. When i check the Job log i saw the dump
MEMORY_NO_MORE_PAGING in the iinclude LCEI0F6O of SAPLCEI0
Short text says "SAP paging overflow when storing data in the ABAP/4 memory"
and soucre code extract shows dump at the "Clear Statement"
49 EXPORT
50 multi_lingual
51 mi
52 wi
53 anw
54 gt_ghcl
55 TO MEMORY ID gs_memory_id.
56
>>>>> CLEAR gs_memory_id-memid.
58
59 EXPORT gv_actual_memory_id
60 gt_memory
61 TO MEMORY ID gs_memory_id.
Please suggest me in correcting the above dump
Thank you,
KavyaHi,
It is not problem in standarad program, but it in zprogram problem. When you export data to memory it has some limitation parameter to limit the maximum data to store. when your zprogram run it try to store more data in to application server memory and it not allow to store the maximum due to limit it.
In your porgram you are reading large amount of data. Don't read all data at all but you do the modification in your program to read data partially and process it. do the same for may time but don't forget to refresh or free the memory of internal table which is store unnecessary data. -
Dear friends,
In one of our BW production system, 2 instance of hourly job SAP_COLLECTOR_FOR_PERFMONITOR is dumping MEMORY_NO_MORE_PAGING.
I have already checked this thread :
MEMORY_NO_MORE_PAGING
But I am unable to find out the reason and also i do not find any Moni Key in abap dump. Please suggest.
PART OF ABAP DUMP :
40 SEGMT = SEGMT.
41 * exceptions
42 * others = 1.
43
44 EXPORT TS TO MEMORY ID 'RSORAT2M'.
45 EXPORT TD110 TO MEMORY ID 'RSORAT4M'.
>>>>> EXPORT SEGMT TO MEMORY ID 'RSORAT6M'.
47
48 * INCLUDE rsorat0b. T.S. 11/96
49 * INCLUDE rsorat0m. T.S. 11/96
50 * INCLUDE rsorat0f. T.S. 11/96
51 *INCLUDE RSORAT2F.
thanks
ashishHello friends,
Of-Course MEMORY_NO_MORE_PAGING is a memory dump and it can be avoided if i increage paging sizes. We have smaller value for this parameter and I am not convinced if it is required now to increase it. This was working nicely sometime back.
So, When we say we have abap statement EXPORT which is causing MEMORY_NO_MORE_PAGING. But the same abap statement was working fine sometime back and we did not had this problem. So i assume if there is something like large number of history records as per SAP Note 713211 is troubling us.
Now, i want to findout what is causing so much of memory requirement & page files.
We also get similar dumo when we manually try to perform DB Checks & update histories with transaction DB02OLD. This is the same this what Collector Job also doing and dumping.
Any new suggestion please..
thanks
ashish -
Hi All,
We are facing these errors approx. daily (but not everyday):
MEMORY_NO_MORE_PAGING
TSV_TNEW_PAGE_ALLOC_FAILED
Now, I searched the Forum but there is no acceptable answer for the current issue. Some person said that it could be possible if a user have entered any illegal range in program.
How can i modify the parameter values? RZ11 shows all parameters but not in RZ10(where we can modify).
Here is the current configuration:
Roll, extended and heap memory EXTM
ztta/roll_area 3000320 Byte Roll area per workprocess (total)
ztta/roll_first 1024 Byte First amount of roll area used in a dialog WP
ztta/short_area 3200000 Byte Short area per workprocess
rdisp/ROLL_SHM 32768 8 kB Part of roll file in shared memory
rdisp/PG_SHM 16384 8 kB Part of paging file in shared memory
rdisp/PG_LOCAL 150 8 kB Paging buffer per workprocess
em/initial_size_MB 14500 MB Initial size of extended memory
em/blocksize_KB 4096 kB Size of one extended memory block
em/address_space_MB 4096 MB Address space reserved for ext. mem. (NT only)
ztta/roll_extension 2000683008 Byte Max. extended mem. per session (external mode)
abap/heap_area_dia 2000683008 Byte Max. heap memory for dialog workprocesses
abap/heap_area_nondia 0 Byte Max. heap memory for non-dialog workprocesses
abap/heap_area_total 6442450944 Byte Max. usable heap memory
abap/heaplimit 40894464 Byte Workprocess restart limit of heap memory
abap/use_paging 0 Paging for flat tables used (1) or not (0)
I also read that some parameter values like Roll Area should not be changed like here: http://help.sap.com/saphelp_nw70/helpdata/en/02/96274f538111d1891b0000e8322f96/content.htm
Furthermore, some suggestions were to modify the Heap Parameters, Roll etc...
Here is our PRD SPEC:
Processor: Intel Xeon X5450 3.00GHz
RAM: 20 GB
HDD: 140 GB Internal
SAN: 700 GB RAID
Please Advise,
Regards.Hi Michael,
Thank you for your information, here is the current dump (most recent one):
Runtime Errors MEMORY_NO_MORE_PAGING
Date and Time 13.10.2010 14:32:19
How to correct the error
The amount of storage space (in bytes) filled at termination time was:
Roll area...................... 16192
Extended memory (EM)........... 305858320
Assigned memory (HEAP)......... 0
Short area..................... " "
Paging area.................... 16384
Maximum address space.......... " "
And Current View EM (in ST02):
SAP Memory Curr.Use % CurUse[KB] MaxUse[KB] In Mem[KB] OnDisk[KB] SAPCurCach HitRatio
Roll area 40.18 24,274 24,976 262,144 0 IDs 99.59
Page area 10.94 28,678 34,400 131,072 131,072 Statement 97.00
Extended memory 31.43 4,665,344 5,296,128 14,843,904 0 0.00
Heap memory 139,015 0 139,015 0 0.00
Detailed Information:
Roll memory Dialog session kB 2,930
Nondialog sess. kB 2,930
Available kB 60,416
in shared memory kB 262,144
on disk kB 0
Used kB 24,274
Maximum used kB 24,976
Paging memory Session buffer kB 1,200
Available kB 262,144
in shared memory kB 131,072
on disk kB 131,072
Used kB 28,678
Maximum used kB 34,400
Extended memory Dialog session kB 1,953,792
Nondialog sess. kB 1,953,792
Available kB 14,843,904
Used kB 4,665,344
Maximum used kB 5,296,128
Heap memory Dialog session kB 1,953,792
Nondialog sess. kB 0
Used kB 139,015
Maximum used kB 139,015
Current Parameters Setting:
Buffer Name Comment
Profile Parameter Value Unit Comment
Roll, extended and heap memory EXTM
ztta/roll_area 3000320 Byte Roll area per workprocess (total)
ztta/roll_first 1024 Byte First amount of roll area used in a dialog
ztta/short_area 3200000 Byte Short area per workprocess
rdisp/ROLL_SHM 32768 8 kB Part of roll file in shared memory
rdisp/PG_SHM 16384 8 kB Part of paging file in shared memory
rdisp/PG_LOCAL 150 8 kB Paging buffer per workprocess
em/initial_size_MB 14500 MB Initial size of extended memory
em/blocksize_KB 4096 kB Size of one extended memory block
em/address_space_MB 4096 MB Address space reserved for ext. mem. (NT on
ztta/roll_extension 2000683008 Byte Max. extended mem. per session (external mo
abap/heap_area_dia 2000683008 Byte Max. heap memory for dialog workprocesses
abap/heap_area_nondia 0 Byte Max. heap memory for non-dialog workprocess
abap/heap_area_total 6442450944 Byte Max. usable heap memory
abap/heaplimit 40894464 Byte Workprocess restart limit of heap memory
abap/use_paging 0 Paging for flat tables used (1) or not (0)
Please guide me if it requires any further analysis. -
Dump While Extracting with MEMORY_NO_MORE_PAGING.
Hello Experts,
I have enhanced a Standard Datasoure with 3 fields in which for 2 of the fields I have used a standard function module to populate the data.It was working fine.
Now I have a situation when I am extracting data from BI my load is going fine at one point if time and same one fails at another point of time.giving a Error mesage in the joblog that MEMORY_NO_MORE_PAGING.
I am calling my FM in the Exit some 80000 times as the dataloaded to BI are 80000 records when I have a case of sucessful load when Extracted to BI from ECC. I have checked Commenting my FM called in EXIT and checked RSA3 the results are 80000 records working fine.
Please advise if this could be a Page memory Problem or if I am calling my FM 80000 times in the Exit it needs a sufficient memory to retrieve the data.
Please advise if we have any SAP notes related to the BAPI that corresponds to memory issue.
STD FM-BAPI_TRIP_GET_DETAILS.
Regards,
KOKA.Answered
-
ABAP dump:- Memory_No_More_Paging
Please let me know the exact reason for occurence of ABAP dump:-> Memory_No_More_Paging in ECC 6 system...
Hi,
You have to analyse ST02 and adjust the appropriate parameters and also refer SAP OSS note 619876 and 88416 for more information.
Use the below links....
ABAP runtime error ( MEMORY_NO_MORE_PAGING - Paging Area Dump)
http://sap.ittoolbox.com/groups/technical-functional/sap-basis/memory_no_more_paging-urgent-205968
With Regards,
Krishna. -
Abap program causing MEMORY_NO_MORE_PAGING
Please help me to crack the code, which is causing the dump MEMORY_NO_MORE_PAGING.
============================================================
report AQA0ZFINAPP=====ZFINAPP_ARINV=
line-size 255 no standard page heading line-count 000(001).
include <symbol>.
include <icon>.
selection-screen: begin of block prog
with frame title text-f58.
tables BKPF.
data %count-BKPF(4) type x.
data %linr-BKPF(2).
tables BSEG.
data %count-BSEG(4) type x.
data %linr-BSEG(2).
tables T001.
data %count-T001(4) type x.
data %linr-T001(2).
tables aqldb.
include rsaqexcd.
data: begin of %st_liste occurs 100,
head(1),
tab(3),
line(6) type n,
cont(1) type n,
fint(1),
finv(1),
fcol(1) type n,
text(0255),
end of %st_liste.
data %data_selected(1).
data %glframe(1) value 'X' .
data %uflag(1).
data %ustflag(1).
data %grst_text(255).
data %glline type i.
data %tabix like sy-tabix.
data %prflag(1) type x value '02'.
data: %textpool_read(1),
%textpool_langu type textpool occurs 0,
%textpool_langu_line type textpool.
data: %txt1 type textpool-entry,
%txt2 type textpool-entry,
%txt3 type textpool-entry,
%txtkey type textpool-key,
%txt_unknown type textpool-entry value 'UNKNOWN TEXT'.
data TEXT_BKPF_BLART like T003T-LTEXT.
data TEXT_BKPF_BUKRS like T001-BUTXT.
data TEXT_BKPF_USNAM like ADDR3_VAL-NAME_TEXT.
data TEXT_BSEG_BUKRS like T001-BUTXT.
data TEXT_BSEG_KUNNR like KNA1-NAME1.
data TEXT_BSEG_SEGMENT like FAGL_SEGMT-NAME.
data TEXT_BSEG_SHKZG like DD07D-DDTEXT.
data TEXT_BSEG_ZZCOMM_CD like ZCOMMODITY-ZZCOMM_DS.
data TEXT_BSEG_ZZMFG_CD like ZMFG-ZZMFG_DS.
data TEXT_EKKO_LIFNR like LFA1-NAME1.
data %perc(4) type p decimals 3.
data %p100(4) type p decimals 3 value '100.000'.
data %rangct type i.
data %rangcc(8).
select-options SP$00001 for BKPF-BLART memory id BAR.
select-options SP$00002 for BKPF-BLDAT.
select-options SP$00003 for BKPF-BUDAT.
select-options SP$00005 for BKPF-BUKRS memory id BUK.
select-options SP$00004 for BKPF-GJAHR memory id GJR.
selection-screen skip 1.
selection-screen: begin of block direct
with frame title text-f59.
selection-screen: begin of line.
*selection-screen: comment 1(12) text-f57.
selection-screen: pushbutton 75(18) pb%exco user-command expcol
modif id new.
selection-screen: end of line.
selection-screen: begin of line.
parameters: %alv radiobutton group func user-command outbut
modif id new default 'X' .
selection-screen: comment 4(26) text-f72 for field %alv
modif id new.
parameters: %alvl type slis_vari modif id new.
selection-screen: end of line.
selection-screen: begin of line.
parameters: %nofunc radiobutton group func modif id old.
selection-screen: comment 4(26) text-f66 for field %nofunc
modif id old.
parameters: %tview radiobutton group func modif id old.
selection-screen: comment 34(26) text-f68 for field %tview
modif id old,
end of line.
selection-screen: begin of line.
parameters: %graph radiobutton group func modif id old.
selection-screen: comment 4(26) text-f61 for field %graph
modif id old.
parameters: %text radiobutton group func modif id old.
selection-screen: comment 34(26) text-f69 for field %text
modif id old,
end of line.
selection-screen: begin of line.
parameters: %abc radiobutton group func modif id old.
selection-screen: comment 4(26) text-f70 for field %abc
modif id old.
parameters: %excel radiobutton group func modif id old.
selection-screen: comment 34(26) text-f60 for field %excel
modif id old,
end of line.
selection-screen: begin of line.
selection-screen: end of line.
selection-screen: begin of line.
parameters: %xint radiobutton group func modif id xin.
selection-screen: comment 4(26) text-f73 for field %xint
modif id xin.
parameters: %xintk like AQXINT-XIKEY lower case modif id xin.
selection-screen: end of line.
selection-screen: begin of line.
parameters: %down radiobutton group func modif id old.
selection-screen: comment 4(26) text-f64 for field %down
modif id old.
parameters: %path type AQ_FILENAME lower case modif id old.
selection-screen: end of line.
selection-screen: begin of line.
parameters: %save radiobutton group func modif id lis.
selection-screen: comment 4(26) text-f62 for field %save
modif id lis.
parameters: %listid like AQCAQL-TEXT visible length 40
lower case modif id lis.
selection-screen: end of line.
selection-screen: end of block direct.
selection-screen: end of block prog.
data: begin of %g00 occurs 100,
BKPF-BUKRS like BKPF-BUKRS,
BKPF-BELNR like BKPF-BELNR,
BKPF-BLART like BKPF-BLART,
BKPF-BLDAT like BKPF-BLDAT,
BKPF-BUDAT like BKPF-BUDAT,
BKPF-WWERT like BKPF-WWERT,
BKPF-XBLNR like BKPF-XBLNR,
BKPF-BKTXT like BKPF-BKTXT,
BKPF-AWKEY like BKPF-AWKEY,
BSEG-XREF1 like BSEG-XREF1,
BSEG-XREF2 like BSEG-XREF2,
BSEG-BUKRS like BSEG-BUKRS,
BSEG-BUZEI like BSEG-BUZEI,
BSEG-HKONT like BSEG-HKONT,
BSEG-SEGMENT like BSEG-SEGMENT,
BSEG-PRCTR like BSEG-PRCTR,
BSEG-KOSTL like BSEG-KOSTL,
BSEG-ZZCOMM_CD like BSEG-ZZCOMM_CD,
BSEG-ZZMFG_CD like BSEG-ZZMFG_CD,
TEXT_BSEG_SHKZG like TEXT_BSEG_SHKZG,
BSEG-WRBTR like BSEG-WRBTR,
BKPF-WAERS-0121 like BKPF-WAERS,
BSEG-DMBTR like BSEG-DMBTR,
T001-WAERS-0122 like T001-WAERS,
BSEG-DMBE2 like BSEG-DMBE2,
BKPF-HWAE2-0123 like BKPF-HWAE2,
BSEG-DMBE3 like BSEG-DMBE3,
BKPF-HWAE3-0124 like BKPF-HWAE3,
BSEG-KUNNR like BSEG-KUNNR,
TEXT_BSEG_KUNNR like TEXT_BSEG_KUNNR,
end of %g00.
data: begin of %%g00,
BKPF-BUKRS(004),
BKPF-BELNR(010),
BKPF-BLART(002),
BKPF-BLDAT(010),
BKPF-BUDAT(010),
BKPF-WWERT(010),
BKPF-XBLNR(016),
BKPF-BKTXT(025),
BKPF-AWKEY(020),
BSEG-XREF1(012),
BSEG-XREF2(012),
BSEG-BUKRS(004),
BSEG-BUZEI(003),
BSEG-HKONT(010),
BSEG-SEGMENT(010),
BSEG-PRCTR(010),
BSEG-KOSTL(010),
BSEG-ZZCOMM_CD(003),
BSEG-ZZMFG_CD(004),
TEXT_BSEG_SHKZG(060),
BSEG-WRBTR(016),
BKPF-WAERS-0121 like BKPF-WAERS,
BSEG-DMBTR(016),
T001-WAERS-0122 like T001-WAERS,
BSEG-DMBE2(016),
BKPF-HWAE2-0123 like BKPF-HWAE2,
BSEG-DMBE3(016),
BKPF-HWAE3-0124 like BKPF-HWAE3,
BSEG-KUNNR(010),
TEXT_BSEG_KUNNR(035),
end of %%g00.
data %znr type i.
data %lznr type i value 99999.
field-groups header.
field-groups %fg01.
data %any-01.
controls tview100 type tableview using screen 100.
AT SELECTION-SCREEN.
perform alvl_check(rsaqexce) using %alvl 'G00'.
perform testmode(rsaqexce).
perform check_expcol(rsaqexce) using %alv.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR %ALVL.
perform alvl_value_request(rsaqexce) using %alvl 'G00'.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR %XINTK.
perform xint_value_request(rsaqexce).
AT SELECTION-SCREEN OUTPUT.
perform save_initial_sscr(rsaqexce).
perform rinit(rsaqbrst).
perform set_expcol(rsaqexce) using %alv pb%exco.
perform alvl_set_invisible(rsaqexce).
perform set_xint_params(rsaqexce).
INITIALIZATION.
perform init_xint(rsaqexce).
perform set_www_flags(rsaqexce).
perform init_print_params(rsaqexce).
if %textpool_read is initial.
read textpool sy-repid into %textpool_langu language sy-langu.
%textpool_read = 'X'.
endif.
START-OF-SELECTION.
insert %count-BKPF into header.
insert %linr-BKPF into header.
insert %count-BSEG into header.
insert %linr-BSEG into header.
insert BKPF-BUKRS into %fg01.
insert BKPF-BELNR into %fg01.
insert BKPF-BLART into %fg01.
insert BKPF-BLDAT into %fg01.
insert BKPF-BUDAT into %fg01.
insert BKPF-WWERT into %fg01.
insert BKPF-XBLNR into %fg01.
insert BKPF-BKTXT into %fg01.
insert BKPF-AWKEY into %fg01.
insert BSEG-XREF1 into %fg01.
insert BSEG-XREF2 into %fg01.
insert BSEG-BUKRS into %fg01.
insert BSEG-BUZEI into %fg01.
insert BSEG-HKONT into %fg01.
insert BSEG-SEGMENT into %fg01.
insert BSEG-PRCTR into %fg01.
insert BSEG-KOSTL into %fg01.
insert BSEG-ZZCOMM_CD into %fg01.
insert BSEG-ZZMFG_CD into %fg01.
insert TEXT_BSEG_SHKZG into %fg01.
insert BSEG-WRBTR into %fg01.
insert BKPF-WAERS into %fg01.
insert BSEG-DMBTR into %fg01.
insert T001-WAERS into %fg01.
insert BSEG-DMBE2 into %fg01.
insert BKPF-HWAE2 into %fg01.
insert BSEG-DMBE3 into %fg01.
insert BKPF-HWAE3 into %fg01.
insert BSEG-KUNNR into %fg01.
insert TEXT_BSEG_KUNNR into %fg01.
perform init_texthandling(rsaqexce) using 'CL_TEXT_IDENTIFIER' ' ' 'ZFINAPP_BRM'.
"webgui
data: %ret type i.
if sy-subrc is initial and %excel is not initial.
perform check_wingui(rsaqsyst) using %ret.
if %ret <> 0.
message e842(aq).
endif.
endif.
"webgui
perform %comp_ldesc.
GET BKPF .
%dbacc = %dbacc - 1.
if %dbacc = 0.
stop.
endif.
check SP$00001.
check SP$00002.
check SP$00003.
check SP$00005.
check SP$00004.
add 1 to %count-BKPF.
%linr-BKPF = '99'.
GET BSEG .
%dbacc = %dbacc - 1.
if %dbacc = 0.
perform %_get_BKPF_late in program (sy-cprog) if found
using %selected BKPF.
stop.
endif.
perform textfield_refresh(rsaqexce).
perform textfield_context(rsaqexce) using 'BSEG' BSEG.
perform textfield_context(rsaqexce) using 'BKPF' BKPF.
perform textfield_call(rsaqexce) using BSEG 'BSEG' 'KUNNR' TEXT_BSEG_KUNNR.
perform textfield_call(rsaqexce) using BSEG 'BSEG' 'SHKZG' TEXT_BSEG_SHKZG.
add 1 to %count-BSEG.
%linr-BSEG = '01'.
extract %fg01.
%linr-BSEG = '99'.
END-OF-SELECTION.
sort as text.
%diact = space.
%printon = space.
%batch = sy-batch.
if %batch <> space.
if %alv <> space.
%diact = 'V'.
%printon = 'X'.
%alv_layout = %alvl.
new-page print on destination 'NULL' no dialog
line-size 0255 line-count 0065.
endif.
if %save <> space.
%diact = 'S'.
%printon = 'X'.
new-page print on destination 'NULL' no dialog
line-size 0255 line-count 0065.
endif.
elseif %called_by_www <> space.
%diact = space.
elseif %called_by_www_alv <> space.
%diact = 'V'.
else.
perform init_print_params(rsaqexce).
if %save <> space. %diact = 'S'. endif.
if %xint <> space. %diact = 'I'. endif.
if %tview <> space. %diact = 'T'. endif.
if %alv <> space. %diact = 'V'. endif.
if %down <> space. %diact = 'D'. endif.
if %graph <> space. %diact = 'G'. endif.
if %excel <> space. %diact = 'X'. endif.
if %text <> space. %diact = 'W'. endif.
if %abc <> space. %diact = 'A'. endif.
if %diact <> space and %diact <> 'S' and %diact <> 'W'.
%printon = 'X'.
new-page print on destination 'NULL' no dialog
line-size 0255 line-count 0065.
endif.
%pathname = %path.
if %diact = 'I'.
%functionkey = %xintk.
endif.
if %diact = 'V'.
%alv_layout = %alvl.
endif.
endif.
free memory id 'AQLISTDATA'.
if %memmode <> space.
if %batch <> space and %printon = space.
%printon = 'X'.
new-page print on destination 'NULL' no dialog
line-size 0255 line-count 0065.
endif.
%diact = '1'.
endif.
%titel = ' '.
if sy-subty o %prflag and %titel = space.
new-page with-title.
endif.
%tvsize = 0200.
%pline = 1.
%pzgr = 1.
%first = 'X'.
perform %output.
%first = space.
if %diact <> space and %diact <> 'S'.
if %batch = space.
new-page print off.
if not ( %diact = 'V' and %ucomm = 'PRIN' ).
new-page no-heading no-title.
write space.
endif.
endif.
else.
perform pf-status(rsaqexce) using 'XX '.
endif.
clear: %tab, %line, %cont.
if %data_selected = space.
if %diact = '1'.
export empty from %empty to memory id 'AQLISTDATA'.
leave.
else.
if %batch = space and
%called_by_www = space and
%called_by_www_alv = space.
message s260(aq).
leave list-processing.
else.
if %called_by_www_alv = space.
%diact = space.
endif.
endif.
endif.
endif.
if %diact = 'S'.
perform %save_list.
leave list-processing.
endif.
if %diact = 'V' and %batch <> space.
new-page print off.
perform set_print_params(rsaqexce).
perform %download using 'ALV'.
leave.
endif.
if %diact = 'V' and %called_by_www_alv <> space.
perform %download using 'ALV'.
leave.
endif.
*if %diact = 'V' and ( %ucomm = 'PRIN' or sy-subty = '07' ).
data %is_submit_to_spool type c.
if %diact = 'V'.
CALL FUNCTION 'IS_SUBMIT_TO_SPOOL'
IMPORTING FLAG = %is_submit_to_spool.
if ( %ucomm = 'PRIN' or %is_submit_to_spool = 'X' ).
perform set_print_params(rsaqexce).
perform %download using 'ALV'.
set parameter id 'SPI' field sy-spono.
leave list-processing.
endif.
endif.
if %diact = 'P' and %batch <> space.
perform %download using '+DAT'.
leave list-processing.
endif.
if %diact = 'E' and %batch <> space.
perform %download using 'EIS'.
leave list-processing.
endif.
if %diact = '1'.
perform %download using '+MEM'.
leave.
endif.
if %diact = 'X'.
set user-command 'XXL'.
elseif %diact = 'W'.
set user-command 'TEXT'.
elseif %diact = 'V'.
set user-command 'ALV'.
elseif %diact = 'T'.
set user-command 'VIEW'.
elseif %diact = 'G'.
set user-command 'GRAF'.
elseif %diact = 'A'.
set user-command 'ABCA'.
elseif %diact = 'E'.
set user-command 'EIS'.
elseif %diact = 'D'.
set user-command 'DOWN'.
elseif %diact = 'I'.
set user-command 'XINT'.
elseif %diact = 'P'.
set user-command '+DAT'.
endif.
TOP-OF-PAGE.
perform %top-of-page.
END-OF-PAGE.
perform page_foot(rsaqexce).
perform %save_page.
TOP-OF-PAGE DURING LINE-SELECTION.
perform %top-of-page.
AT USER-COMMAND.
case sy-ucomm.
when 'EXIT'.
leave program.
when 'RETN'.
perform return(rsaqexce).
when 'CANC'.
perform return(rsaqexce).
when 'WEIT'.
perform return(rsaqexce).
when 'INHA'.
perform catalogue(rsaqexce).
when 'AUSL'.
perform pickup(rsaqexce).
when 'AUSW'.
perform pickup(rsaqexce).
when 'RCAA'.
perform rchain(rsaqbrst).
when 'RCAL'.
perform rcall(rsaqbrst).
when 'VGLI'.
perform change(rsaqexce).
when 'VGLE'.
perform change(rsaqexce).
when 'TOTO'.
perform change(rsaqexce).
when 'VSTA'.
perform change(rsaqexce).
when 'VSTE'.
perform return(rsaqexce).
when 'SAVL'.
perform %save_list.
when 'ODRU'.
perform print_list(rsaqexce).
when 'COPA'.
perform print_cover_page(rsaqexce).
when 'TEXT'.
perform %download using 'TEXT'.
when 'ALV'.
perform %download using 'ALV'.
when 'VIEW'.
perform %view.
when 'XXL'.
perform %download using 'XXL'.
when 'GRAF'.
perform %download using 'GRAF'.
when 'ABCA'.
perform %download using 'ABCA'.
when 'DOWN'.
perform %download using 'DOWN'.
when 'XINT'.
perform %download using 'XINT'.
endcase.
clear: %cline, %zgr.
clear: %tab, %line, %cont.
if %diact <> space.
leave list-processing.
endif.
form %comp_ldesc.
refresh %ldesc.
refresh %gdesc.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A00'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B00'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H00'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00010000X004 00 01'
%txt1 %txt2 %txt3 'BKPF-BUKRS' BKPF-BUKRS 'BKPF-BUKRS'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A01'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B01'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H00'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00020000X010 00 01'
%txt1 %txt2 %txt3 'BKPF-BELNR' BKPF-BELNR 'BKPF-BELNR'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A02'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B02'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H00'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00030000X002 00 01'
%txt1 %txt2 %txt3 'BKPF-BLART' BKPF-BLART 'BKPF-BLART'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A03'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B03'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H00'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00040000X010 00 01'
%txt1 %txt2 %txt3 'BKPF-BLDAT' BKPF-BLDAT 'BKPF-BLDAT'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A04'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B04'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H00'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00050000X010 00 01'
%txt1 %txt2 %txt3 'BKPF-BUDAT' BKPF-BUDAT 'BKPF-BUDAT'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A05'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B05'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H00'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00060000X010 00 01'
%txt1 %txt2 %txt3 'BKPF-WWERT' BKPF-WWERT 'BKPF-WWERT'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A06'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B06'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H00'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00070000X016 00 01'
%txt1 %txt2 %txt3 'BKPF-XBLNR' BKPF-XBLNR 'BKPF-XBLNR'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A07'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B07'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H00'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00080000X025 00 01'
%txt1 %txt2 %txt3 'BKPF-BKTXT' BKPF-BKTXT 'BKPF-BKTXT'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A08'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B08'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H00'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00090000X020 00 01'
%txt1 %txt2 %txt3 'BKPF-AWKEY' BKPF-AWKEY 'BKPF-AWKEY'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A09'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B09'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H00'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00100000X012 00 01'
%txt1 %txt2 %txt3 'BSEG-XREF1' BSEG-XREF1 'BSEG-XREF1'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A10'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B10'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H00'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00110000X012 00 01'
%txt1 %txt2 %txt3 'BSEG-XREF2' BSEG-XREF2 'BSEG-XREF2'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A11'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B11'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00120000X004 00 02'
%txt1 %txt2 %txt3 'BSEG-BUKRS' BSEG-BUKRS 'BSEG-BUKRS'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A12'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B12'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00130000X003 00 02'
%txt1 %txt2 %txt3 'BSEG-BUZEI' BSEG-BUZEI 'BSEG-BUZEI'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A13'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B13'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00140000X010 00 02'
%txt1 %txt2 %txt3 'BSEG-HKONT' BSEG-HKONT 'BSEG-HKONT'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A14'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B14'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00150000X010 00 02'
%txt1 %txt2 %txt3 'BSEG-SEGMENT' BSEG-SEGMENT 'BSEG-SEGMENT'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A15'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B15'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00160000X010 00 02'
%txt1 %txt2 %txt3 'BSEG-PRCTR' BSEG-PRCTR 'BSEG-PRCTR'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A16'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B16'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00170000X010 00 02'
%txt1 %txt2 %txt3 'BSEG-KOSTL' BSEG-KOSTL 'BSEG-KOSTL'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A17'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B17'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00180000X003 00 02'
%txt1 %txt2 %txt3 'BSEG-ZZCOMM_CD' BSEG-ZZCOMM_CD 'BSEG-ZZCOMM_CD'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A18'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B18'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00190000X004 00 02'
%txt1 %txt2 %txt3 'BSEG-ZZMFG_CD' BSEG-ZZMFG_CD 'BSEG-ZZMFG_CD'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A19'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B19'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00201000X060 00 02'
%txt1 %txt2 %txt3 'TEXT_BSEG_SHKZG' TEXT_BSEG_SHKZG 'TEXT_BSEG_SHKZG'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A20'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B20'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00211063 016F 00 02'
%txt1 %txt2 %txt3 'BSEG-WRBTR' BSEG-WRBTR 'BSEG-WRBTR'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A21'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B21'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00221000 005W 00 02'
%txt1 %txt2 %txt3 'BKPF-WAERS' BKPF-WAERS 'BKPF-WAERS-0121'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A22'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B22'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00231086 016F 00 02'
%txt1 %txt2 %txt3 'BSEG-DMBTR' BSEG-DMBTR 'BSEG-DMBTR'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A23'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B23'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00241000 005W 00 02'
%txt1 %txt2 %txt3 'T001-WAERS' T001-WAERS 'T001-WAERS-0122'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A24'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B24'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00251109 016F 00 02'
%txt1 %txt2 %txt3 'BSEG-DMBE2' BSEG-DMBE2 'BSEG-DMBE2'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A25'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B25'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00261000 005W 00 02'
%txt1 %txt2 %txt3 'BKPF-HWAE2' BKPF-HWAE2 'BKPF-HWAE2-0123'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A26'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B26'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00271132 016F 00 02'
%txt1 %txt2 %txt3 'BSEG-DMBE3' BSEG-DMBE3 'BSEG-DMBE3'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A27'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B27'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00281000 005W 00 02'
%txt1 %txt2 %txt3 'BKPF-HWAE3' BKPF-HWAE3 'BKPF-HWAE3-0124'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A28'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B28'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00291000X010 00 02'
%txt1 %txt2 %txt3 'BSEG-KUNNR' BSEG-KUNNR 'BSEG-KUNNR'.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'A29'.
if sy-subrc is initial. %txt1 = %textpool_langu_line-entry.
else. %txt1 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'B29'.
if sy-subrc is initial. %txt2 = %textpool_langu_line-entry.
else. %txt2 = %txt_unknown.
endif.
read table %textpool_langu into %textpool_langu_line
with key key = 'H01'.
if sy-subrc is initial. %txt3 = %textpool_langu_line-entry.
else. %txt3 = %txt_unknown.
endif.
perform ldesc(rsaqexce) using 'G00301000X035 00 02'
%txt1 %txt2 %txt3 'TEXT_BSEG_KUNNR' TEXT_BSEG_KUNNR 'TEXT_BSEG_KUNNR'.
perform gdesc(rsaqexce) using 'G00' 1 20 ' ' ' ' 'X'.
perform complete_ldesc(rsaqexce) tables %ldesc.
endform.
form %read_ldesc using p_lid type aql_lid
p_ldesc type rsaqtldesc.
p_lid = 'G00'.
perform %comp_ldesc.
p_ldesc[] = %ldesc[].
endform.
form %output.
describe table %prlist lines %max_prlist.
%head = 'AAA'.
%keyempty = space.
new-page.
perform %output_gl.
perform complete_page(rsaqexce).
%head = 'ZZZ'.
perform last_ptab_entry(rsaqexce).
new-page.
if %keyempty <> space.
message s894(aq).
endif.
endform.
form %top-of-page.
if sy-ucomm = 'INHA'. exit. endif.
if sy-ucomm = 'COPA'. exit. endif.
if %head = space. exit. endif.
if %head = 'DDD'.
perform tviewpage(rsaqexce).
exit.
endif.
if %head = 'GGG'.
perform page(rsaqexce) using 'G00' text-grl 205 %glframe 001.
set left scroll-boundary column 002.
perform set_scroll_boundary(rsaqexce) using 002.
if %toto <> space. exit. endif.
else.
case %head.
when others.
endcase.
endif.
endform.
form %newline.
data: %llen type i.
%llen = 205.
%uflag = space.
new-line.
write: '|', 205 '|'.
position 2.
endform.
form %skip using count.
if sy-linno > 1.
%uflag = space.
do count times.
new-line.
format reset.
write: '|', 205 '|'.
enddo.
endif.
endform.
form %uline.
if %uflag = space.
if sy-linno > 1.
uline /1(205).
endif.
%uflag = 'X'.
endif.
endform.
form %hide.
if %batch <> space and %diact = 'S'.
perform hide(rsaqexce).
else.
hide: %tab, %line, %cont.
endif.
endform.
form %hide_color.
if %batch <> space and %diact = 'S'.
perform hide_color(rsaqexce).
else.
hide: %fint, %fcol.
endif.
endform.
form %rcall using name value.
field-symbols <field>.
assign (name) to <field>.
if sy-subrc <> 0.
value = space.
exit.
endif.
read current line field value <field> into value.
if value = space and %tab = 'G00' and %ldesc-fcur na 'FM'.
read table %g00 index %line.
if sy-subrc = 0.
assign component %ldesc-fnameint of structure %g00
to <field>.
if sy-subrc = 0.
write <field> to value(%ldesc-folen).
endif.
endif.
endif.
endform.
form %save_page.
if %batch <> space and %diact = 'S'.
perform save_page(rsaqexce) tables %st_liste.
endif.
endform.
form %replace_var using text.
field-symbols <var>.
assign text+1(*) to <var>.
endform.
form %save_list.
data: %sflag,
qreport like sy-repid.
if %diact = 'S'. %sflag = 'X'. endif.
qreport = sy-repid.
perform save_list(rsaqexce) tables %st_liste
using qreport %sflag %listid.
if %ql_id <> space.
%dlflag = 'X'.
%listsize = 0255.
perform comp_selection_screen(rsaqexce).
export %st_liste %ptab %ldesc %gdesc %dlflag %listsize
%selections
%g00
to database aqldb(aq) id %ql_id.
endif.
endform.
form %refresh.
case %tab.
when 'G00'.
import %g00 from database aqldb(aq) id %ql_id.
endcase.
endform.
form %download using code.
data: qreport like sy-repid.
perform init_download(rsaqexce).
qreport = sy-repid.
case %tab.
when 'G00'.
perform download(rsaqexce)
tables %g00 using code qreport text-grl.
when others.
message s860(aq).
endcase.
endform.
form %set_data changing l_lines type i.
import ldata to %g00 from memory id 'AQLISTDATA'.
describe table %g00 lines l_lines.
free memory id 'AQLISTDATA'.
endform.
form %get_data tables datatab structure %g00
using first type i
last type i.
append lines of %g00 from first to last to datatab.
endform.
form %get_ref_to_table using lid like rsaqldesc-lid
ref_to_itab type ref to data
subrc like sy-subrc.
subrc = 0.
case lid.
when 'G00'.
create data ref_to_itab like %g00[].
when others.
subrc = 4.
message s860(aq).
endcase.
endform.
form %view.
data: ret type i.
perform check_wingui(rsaqsyst) using ret.
if ret <> 0.
message s841(aq).
perform %download using 'ALV'.
exit.
endif.
data: anz type i,
prog like sy-repid.
prog = sy-repid.
perform init_download(rsaqexce).
case %tab.
when 'G00'.
perform generate_view_dynpro(rsaqexce)
using prog text-grl.
describe table %g00 lines anz.
tview100-lines = anz.
perform init_view(rsaqexce) tables %g00 using tview100.
call screen 100.
perform reset_view_dynpro(rsaqexce).
when others.
message s860(aq).
endcase.
endform.
form %colhead_print changing lines like sy-linno
hflag type c.
data: l_text(255).
if %textpool_read is initial.
read textpool sy-cprog into %textpool_langu language sy-langu.
%textpool_read = 'X'.
endif.
lines = lines + 2.
if 2 = 0. clear hflag. else. hflag = 'X'. endif.
write at (1) '|' no-gap.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'B001'.
if sy-subrc is initial.
l_text = %textpool_langu_line-entry.
else.
clear l_text.
endif.
perform replace_vars(rsaqexce) using l_text 'X'.
write at 000(004) l_text(004) no-gap.
write at (1) '|' no-gap.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'B011'.
if sy-subrc is initial.
l_text = %textpool_langu_line-entry.
else.
clear l_text.
endif.
perform replace_vars(rsaqexce) using l_text 'X'.
write at 000(010) l_text(010) no-gap.
write at (1) '|' no-gap.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'B021'.
if sy-subrc is initial.
l_text = %textpool_langu_line-entry.
else.
clear l_text.
endif.
perform replace_vars(rsaqexce) using l_text 'X'.
write at 000(002) l_text(002) no-gap.
write at (1) '|' no-gap.
read table %textpool_langu into %textpool_langu_line
with key ID = 'I' key = 'B031'.
Hi Vijay,
The code is not developed, this is automatically generated code, when you create a SAP query using SQ01 this code get generated. There is no need to change the code. When you execute this program, then on selection screen give less entries to select.
Regards,
Atish -
SAP paging overflow when storing data in the ABAP/4 memory.
I am trying to create a data source in BI7.0 in the Datawarehousing Workbench. But along the process when i need to select a view i get an error detailed in the following error file extract: Please go through and assist.
untime Errors MEMORY_NO_MORE_PAGING
Date and Time 06.06.2009 14:21:35
Short text
SAP paging overflow when storing data in the ABAP/4 memory.
What happened?
The current program requested storage space from the SAP paging area,
but this request could not be fulfilled.
of this area in the SAP system profile.
What can you do?
Note which actions and input led to the error.
For further help in handling the problem, contact your SAP administrator
You can use the ABAP dump analysis transaction ST22 to view and manage
termination messages, in particular for long term reference.
Error analysis
The ABAP/4 runtime system and the ABAP/4 compiler use a common
interface to store different types of data in different parts of
the SAP paging area. This data includes the
ABAP/4 memory (EXPORT TO MEMORY), the SUBMIT REPORT parameters,
CALL DIALOG and CALL TRANSACTION USING, as well as internally defined
macros (specified with DEFINE).
To store further data in the SAP paging area, you attempted to
allocate a new SAP paging block, but no more blocks were
available.
When the SAP paging overflow occurred, the ABAP/4 memory contained
entries for 20 of different IDs.
Please note:
To facilitate error handling, the ABAP/4 memory was
deleted.
How to correct the error
The amount of storage space (in bytes) filled at termination time was:
Roll area...................... 8176
Extended memory (EM)........... 13587912
Assigned memory (HEAP)......... 0
Short area..................... " "
Paging area.................... 40960
Maximum address space.......... " "
By calling Transaction SM04 and choosing 'Goto' -> 'Block list',
you can display an overview of the current roll and paging memory
levels resulting from active users and their transactions. Try to
decide from this whether another program requires a lot of memory
space (perhaps too much).
The system log contains more detailed information about the
termination. Check for any unwanted recursion.
Determine whether the error also occurs with small volumes of
data. Check the profile (parameter "rdisp/PG_MAXFS", see
Installation Guidelines).
Is the disk or the file system that contains the paging file
full to the extent that it cannot be increased, although it has
not yet reached the size defined in the profile? Is the
operating system configured to accommodate files of such a
size?
The ABAP processor stores different types of data in the SAP
paging area. These include:
(1) Data clusters (EXPORT ... TO MEMORY ...)
(2) Parameters for calling programs (SUBMIT REPORT ...),
Dialog modules (CALL DIALOG ...) and transactions
(CALL TRANSACTION USING ...)
(3) Internally defined program macros (DEFINE ...)
Accordingly, you should check the relevant statements in a program
that results in an overflow of the SAP paging area.
It is critical when many internal tables, possibly with
different IDs, are written to memory (EXPORT).
If the error occures in a non-modified SAP program, you may be able to
find an interim solution in an SAP Note.
If you have access to SAP Notes, carry out a search with the following
keywords:
"MEMORY_NO_MORE_PAGING" " "
"SAPLWDTM" or "LWDTMU20"
"TABC_ACTIVATE_AND_UPDATE"
If you cannot solve the problem yourself and want to send an error
notification to SAP, include the following information:
1. The description of the current problem (short dump)
To save the description, choose "System->List->Save->Local File
(Unconverted)".
2. Corresponding system log
Display the system log by calling transaction SM21.
Restrict the time interval to 10 minutes before and five minutes
after the short dump. Then choose "System->List->Save->Local File
(Unconverted)".
3. If the problem occurs in a problem of your own or a modified SAP
program: The source code of the program
In the editor, choose "Utilities->More
Utilities->Upload/Download->Download".
4. Details about the conditions under which the error occurred or which
actions and input led to the error.Hi Huggins,
Maintenance of the Paging File is owned by your basis team.
They should increase this in order for your transaction to process successfully.
Just for your reference, in case the OS used is windows server 2003, paging file value can be checked through;
Right click in the My Computer>properties.
Then go to Advance tab;
Then there should be a performance section, click the settings
Then Advance tab again. The paging file can be seen from there.
(and can be adjusted from there also)
The value of the paging file in general will be dependent with the available RAM from the hardware.
Hope this helps. Thanks a lot.
- Jeff -
F4IF_INT_TABLE_VALUE_REQUEST up to 500 hits
hi,
i am using the FM F4IF_INT_TABLE_VALUE_REQUEST for displaying search help for a field.
the possible values for this field are stored in an internal table which is filled by another FM which i
cannot change. this FM returns itabs with 20,000 lines. when i try to use the search help from screen
the program crash ( MEMORY_NO_MORE_PAGING ).
i want to limit the search help to up 500 hits , so the program won't crash, but i dont want to filter
the itab by taking only 500 becasue the user can enter in field ' 2* ' and then press F4
and if there are more then 500 values that start with 1 i won't get any values in search help
(because i took only the first 500 - which all starts with 1).
is there a way to achieve what i want?
Thanks
TomerHi,
You can make use of CALLBACK_FORM parameter which is available in the F4IF_INT_TABLE_VALUE_REQUEST function module to restrict the number of entries.
FORM F4CALLBACK
TABLES RECORD_TAB STRUCTURE SEAHLPRES
CHANGING SHLP TYPE SHLP_DESCR
CALLCONTROL LIKE DDSHF4CTRL.
ENDFORM.
Make use of DDSHF4CTRL structure which gives you more options.
Regards
Srini -
VC_I_GET_CONFIGURATION and paging memory
Hi everyone
I am modifying an existing program that makes use of the VC_I_GET_CONFIGURATION FM. Under certain conditions SAP will throw a 'memory_no_more_paging' error. This always happens at line 55 of the SET_MD_TO_BUFFER Form, which is called from within the form SETUP_MASTER_DATA, which is in turn called from VC_I_GET_CONFIGURATION. The FM module is called from within a loop round an itab that holds VBAP records for a customer. If the number of records is reasonably large (by our standards - >5000) then this error seems to occur.
Looking at the code and debugging to see what is happening, it looks as if a config. table of about 400 rows is being repeatedly read and Exported to memory. I think that this is acting as a buffer because prior to this a check is made to see if the exact combination has already been read. I guess this is why the memory error is being triggered. Has anybody else experienced this? Is there anything I can do apart from requesting more hardware or re-writing the bespoke program?
Thanks in advance...
Andy
Message was edited by: Andrew Wright
Hi
Just wanted to keep this one going - I'm no closer to figuring it out!Hi Bala
This change has since gone into our production system where we had real performance issues. I have been improving the performance of the program as a whole and at nno point have I found using VC_I_GET_CONFIGURATION_IBASE to be the cause of any performance problems - its generally been down to bad SQL! Using this version of the function has compeltely solved the original problem (short dumps because the memory ran out). I haven't personally tried creating a custom function to use the VC_I_GET_CONFIGURATION version because there didn't seem to be any point - after all it was using less memory and ran faster! The OSS note states that the VC_I_GET_CONFIGURATION uses the buffer to improve online performance and so is not designed for mass updates. I'm not sure I follow the logic there since I wold have thought that mass updates would be precisely when you want to make use of buffered data. If you have any thoughts on that matter I would be interested to know.
Kind regards
Andy -
Dump error while filling the Setup table
Hi All,
I am trying to fill the setup table.While filling the stup table for 2lis_03_BF datasource, i got the Dump error after some time. I have checked the data in Setup table and found 9000 records.
Shall i proceed further by pulling the data from R/3 to BW.I have checked the data in RSA3 and got some data.
Shall i schedule the data from BW side.
Pls help on this issue.
Thanks,
Siva.Thanks Reddy and JS.
I have checked the TCODE SM37 and found no jobs are available. I have checked the TCODE : NPRT and found some logs.In this, it is not showing any errors.
I have checked in SM21 and found some errors.
Time_______________Text
17:08:10____________Transaction Canceled M2 630 ( )
17:23:47____________Run-time error "TIME_OUT" occurred
17:23:47____________> Short dump "090302 172347 sand1_W2 2_00 " generated
17:30:08____________Status: 80% of IL00.DAT is in use
17:30:17____________Status: 90% of IL00.DAT is in use
17:30:18____________Overflow of Paging File (032768 Blocks)
17:30:18____________Run-time error "MEMORY_NO_MORE_PAGING" occurred
17:30:19____________> Short dump "090302 173018 sand1_W2 2_00 " generated
Shall i execute filling the setup table again. Do i need to give termination time More ( 2 Hrs difference)
Any issue on refilling the setup table again.
Pls suggest.
Thanks,
Siva. -
Runtime Error : CALL_DIALOG_CONTAINER_MISSING
Please Help, I am getting the following Dump:
Regards,
Runtime Errors CALL_DIALOG_CONTAINER_MISSING
Date and Time 04.12.2008 10:29:33
Short tex
Format error during parameter transfer: No further container available.
What happened?
Error in the SAP kernel.
The current ABAP "SAPMS380" program had to be terminated because the
ABAP processor detected an internal system error.
What can you do?
Note which actions and input led to the error.
For further help in handling the problem, contact your SAP administrator
You can use the ABAP dump analysis transaction ST22 to view and manage
termination messages, in particular for long term reference.
Error analysis
For a precise analysis of the error, you should supply
documents with as many details as possible.
How to correct the error
If you cannot solve the problem yourself and want to send an error
notification to SAP, include the following information:
1. The description of the current problem (short dump)
To save the description, choose "System->List->Save->Local File
(Unconverted)".
2. Corresponding system log
Display the system log by calling transaction SM21.
Restrict the time interval to 10 minutes before and five minutes
after the short dump. Then choose "System->List->Save->Local File
(Unconverted)".
3. If the problem occurs in a problem of your own or a modified SAP
program: The source code of the program
In the editor, choose "Utilities->More
Utilities->Upload/Download->Download".
4. Details about the conditions under which the error occurred or which
actions and input led to the error.
If the error occures in a non-modified SAP program, you may be able to
find an interim solution in an SAP Note.
If you have access to SAP Notes, carry out a search with the following
keywords:
"CALL_DIALOG_CONTAINER_MISSING" " "
"SAPMS380" or " "
"SYSTEM-EXIT"
System environment
SAP-Release 700
Application server... "DMATE"
Network address...... "140.1.1.141"
Operating system..... "Windows NT"
Release.............. "5.2"
Hardware type........ "4x AMD64 Level"
Character length.... 16 Bits
Pointer length....... 64 Bits
Work process number.. 1
Shortdump setting.... "full"
Database server... "dmate"
Database type..... "ADABAS D"
Database name..... "AD0"
Database user ID.. "SAPAD0"
Char.set.... "C"
SAP kernel....... 700
created (date)... "Jun 23 2008 00:09:46"
create on........ "NT 5.2 3790 Service Pack 1 x86 MS VC++ 14.00"
Database version. "SQLDBC 7.6.0.018 CL 119055 "
Patch level. 166
Patch text.. " "
Database............. "MaxDB 7.6, MaxDB 7.7"
SAP database version. 700
Operating system..... "Windows NT 5.0, Windows NT 5.1, Windows NT 5.2, Windows
NT 6.0"
Memory consumption
Roll.... 16192
EM...... 456692560
Heap.... 0
Page.... 267976704
MM Used. 833296
MM Free. 3353920
User and Transaction
Client.............. 040
User................ "CONSULTANT"
Language key........ "E"
Transaction......... "FB1S "
Transactions ID..... "A5CCC1DDC388F1439FA4001143E563CA"
Program............. "SAPMS380"
Screen.............. "SAPMS380 0100"
Screen line......... 0
Information on where terminated
Termination occurred in the ABAP program "SAPMS380" - in "SYSTEM-EXIT".
The main program was "SAPMS380 ".
In the source code you have the termination point in line 0
of the (Include) program " ".
Contents of system fields
Name Val.
SY-SUBRC 0
SY-INDEX 0
SY-TABIX 0
SY-DBCNT 0
SY-FDPOS 0
SY-LSIND 0
SY-PAGNO 0
SY-LINNO 1
SY-COLNO 1
SY-PFKEY
SY-UCOMM
SY-TITLE ABAP Runtime Error
SY-MSGTY
SY-MSGID
SY-MSGNO 000
SY-MSGV1
SY-MSGV2
SY-MSGV3
SY-MSGV4
SY-MODNO 0
SY-DATUM 20081204
SY-UZEIT 102932
SY-XPROG
SY-XFORM
Active Calls/Events
No. Ty. Program Include Line
Name
1 EVENT SAPMS380 ??? 0
SYSTEM-EXIT
Chosen variables
Name
Val.
No. 1 Ty. EVENT
Name SYSTEM-EXIT
Internal notes
The termination was triggered in function "imp_ldial_segment"
of the SAP kernel, in line 1915 of the module
"//bas/700_REL/src/krn/runt/abxdat.c#4".
The internal operation just processed is " ".
Internal mode was started at 20081204102932.
Requested paging area: 32706.
Active Calls in SAP Kernel
Lines of C Stack in Kernel (Structure Differs on Each Platform)
SAP (R) - R/3(TM) Callstack, Version 1.0
Copyright (C) SAP AG. All rights reserved.
Callstack without Exception:
App : disp+work.EXE (pid=5540)
When : 12/4/2008 10:29:32.703
Threads : 2
Computer Name : DMATE
User Name : SAPServiceAD0
Number of Processors: 4
Processor Type: EM64T Family 15 Model 4 Stepping 1
Windows Version : 5.2 Current Build: 3790
State Dump for Thread Id 704
FramePtr ReturnAd Param#1 Function Name
0000000007ead400 0000000077d7047f 0000000000343e90 ntdll!NtWaitForSingleObject
0000000007ead4a0 000000000173b1d1 0000000000000014 kernel32!WaitForSingleObjectEx
0000000007ead6f0 00000000006179c5 0000000000000001 disp+work!NTDebugProcess [ntstcdbg.c (501)]
0000000007ead720 0000000000b05d9c 0000000000000001 disp+work!CTrcStack [dptstack.c (182)]
0000000007ead770 0000000000b0afc0 0000000000000001 disp+work!rabax_CStackSave [abrabax.c (7093)]
0000000007eae150 00000000009736d2 0000000001c859b0 disp+work!ab_rabax [abrabax.c (1231)]
0000000007eae190 00000000009aee62 0000000007eaf4d0 disp+work!imp_ldial_segment [abxdat.c (1915)]
0000000007eae1f0 0000000000a2b2a6 0000000007eae330 disp+work!ab_ReadData [abconcnv.c (1397)]
0000000007eae230 0000000000a2b13a 0000000007eae330 disp+work!ReadSkipValue [abconne.c (7339)]
0000000007eae270 0000000000a3500f 00000000000000ae disp+work!ReadSkipValue [abconne.c (7369)]
0000000007eaf710 0000000000977317 0000000003698300 disp+work!ab_connread [abconne.c (4924)]
0000000007eaf750 0000000000b68126 0000000007eb6050 disp+work!ab_ldiaimport [abxdat.c (2052)]
0000000007eaf780 000000000064bc9c 0000000000000000 disp+work!ab_nmode [abtcod.c (939)]
0000000007eb6020 0000000000b6633f 0000000007eb6078 disp+work!dy_cdiag [dynpabsv.c (1830)]
0000000007eb9640 0000000000b0a0f0 0000000001d0b870 disp+work!ab_sdialog [abtcod.c (300)]
0000000007eb9f30 0000000000b0c3c0 0000000000000001 disp+work!rabax_do [abrabax.c (5338)]
0000000007eba910 0000000000a35c78 0000000001d0b8a0 disp+work!ab_rabax [abrabax.c (1497)]
0000000007eba960 0000000000a36730 0000000800007fff disp+work!ab_mnew [abmarea.c (228)]
0000000007eba9d0 00000000009726b8 000000000000096a disp+work!ab_mnnext [abmarea.c (297)]
0000000007ebaa20 00000000009b07bb 000000000000000c disp+work!exp_ldial_segment [abxdat.c (1391)]
0000000007ebaa70 0000000000a26d88 000007fe7257a190 disp+work!ab_WriteData [abconcnv.c (1590)]
0000000007ebaaf0 0000000000a33d8b 000007fe8c76c7d8 disp+work!export_itab [abconne.c (3877)]
0000000007ebbc60 000000000097620d 0000000000000000 disp+work!ab_connwrite [abconne.c (1992)]
0000000007ebbca0 0000000000b69431 000007ffe7be1f88 disp+work!ab_locex [abxdat.c (1008)]
0000000007ebbd30 0000000000b69e17 000007ffe7be1f88 disp+work!dial_local [abtcod.c (213)]
0000000007ebbea0 0000000000ad3390 0000000000000000 disp+work!ab_cdialog [abtcod.c (203)]
0000000007ebc740 0000000000ad50b3 0000000000000129 disp+work!ab_retdynp [abdynpro.c (671)]
0000000007ebc7d0 0000000000679328 0000000000000129 disp+work!ab_dstep [abdynpro.c (492)]
0000000007ebc950 000000000067d76d 000007fe725e08ae disp+work!dynpmcal [dymainstp.c (2396)]
0000000007ebc9f0 000000000067ca2a 0000000000000000 disp+work!dynppai0 [dymainstp.c (1106)]
0000000007ebcaa0 00000000006395c5 0000000000000000 disp+work!dynprctl [dymainstp.c (360)]
0000000007ebfc30 00000000004dbc4c 0000000000000002 disp+work!dynpen00 [dymain.c (1646)]
0000000007ebfeb0 000000000042f096 0000000007f62ff0 disp+work!TskhLoop [thxxhead.c (4538)]
0000000007ebfee0 000000000040108d ffffffff00000003 disp+work!DpMain [dpxxdisp.c (1136)]
0000000007ebff10 00000000019e84b1 0000000000000000 disp+work!nlsui_main [thxxanf.c (84)]
0000000007ebff70 0000000077d5966c 0000000000000000 disp+work!wmainCRTStartup [crtexe.c (498)]
0000000007ebffa0 0000000000000000 00000000019e8340 kernel32!BaseProcessStart
State Dump for Thread Id 11a0
FramePtr ReturnAd Param#1 Function Name
000000000c9dfe40 0000000077d5f651 0000000007f1cc60 ntdll!NtFsControlFile
000000000c9dfeb0 00000000018ce23f 0000000000000000 kernel32!ConnectNamedPipe
000000000c9dff40 000007ff7fc411c4 0000000000000000 disp+work!SigIMsgFunc [signt.c (679)]
000000000c9dff70 0000000077d6b69a 0000000077d6b660 msvcrt!endthreadex
000000000c9dffa0 0000000000000000 0000000000000000 kernel32!BaseThreadStart
List of ABAP programs affected
Index Typ Program Group Date Time Size Lang.
0 Prg SAPMS380 0 09.03.2008 19:40:55 182272 E
1 Typ SYST 0 09.09.2004 14:18:12 34816
Directory of Application Tables
Name Date Time Lngth
Val.
Program SAPMS380
SYST . . : : 00004612
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x0001\0\0Hello Juan,
I also received the same error while deleting the Product categories Under Responsibility of a Purchase group in Transaction PPOMA_BBP in SRM.
Once it allows me to delete them but I do the same twice I do get like below
"Runtime error MEMORY_NO_MORE_PAGING has occurred"
If you have any idea on the above issues then please help me to fix this issues.
Thanks & regards
Pratap J
Maybe you are looking for
-
Adobe CS4 Design Center Premium Installation issues on Windows 7 Ultimate x64 (RTM)
I am in the process of moving my systems to Windows 7; as part of that I have attempted to install the Adobe CS 4 Design Center Premium version that I purchased on August 16th. Thus far my experience with this has been disappointing. My previous sys
-
ENPA - Intrastat export reporting of credit notes
Hi experts, I would like to ask where to check the configuration of this report. I encountered a problem here wherein the export reporting of our credit notes are reported as sales. I think the credit notes should be reported with a negative sign a
-
Since shortly after installing Firefo 5 I get this message every time I start Firefox. A dialog box comes up that says Installing Firefox, followed by a spinning progress bar, followed by "connecting to the update server." It never progresses past th
-
New hard drive but bookmarks still there
Is it even remotely possible that a "new hard drive" with Mavericks freshly installed could have my old bookmarks on it?? Are they stored with our Apple ID or something? Because I'm on my 3rd replacement drive within a couple of months from this Appl
-
How to ad Whitelist in OSX server 10.4.11?
Customer with OS X Server mail 10.4.11 runs greet but after 1,5 year suddenly 1 customer is blocked by "Scan email for junk email" when its off email will be delivered, when activated its blocked. Is there a step by step manuel to ad the "blocked" se