Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

How to clear a buffer memory in a report program?

Former Member
0 Likes
24,879

Hi Gurus,

How to clear a buffer memory in a report program?

Regards,

Amit Kumar Singh

15 REPLIES 15
Read only

bpawanchand
Active Contributor
0 Likes
8,388

Hi

USe FREE statement

Regards

Pavan

Read only

Former Member
0 Likes
8,389

hii

you can use FREE MEMORY statement after importing data or use it in end-of-selection event in program for clearing buffer memory.

regards

twinkal

Read only

Former Member
0 Likes
8,389

You need to use FREE statement...

In other scenario....

EXPORT it_steps TO DATABASE indx(ar) CLIENT sy-mandt ID 'ZCRPROP'.

IMPORT it_steps FROM DATABASE indx(ar) CLIENT sy-mandt ID 'ZCRPROP'.

DELETE FROM DATABASE indx(ar) CLIENT sy-mandt ID 'ZCRPROP'.

Read only

Former Member
0 Likes
8,389

Hi,

type FREE in your abap progam and press F1. you will come to know

Cheers,

chinna

Read only

Former Member
0 Likes
8,389

Hi Amit,

Are you working with ALV report ?

If so, plz run the following Abap, which will reset buffer :

BALVBUFDEL

Hope this helps,

Erwan

Read only

0 Likes
8,389

Hi Erwan,

Yes i am working with a report.

I tried using with statement.

submit BALVBUFDEL and return.

But it's not working.

Please suggest.

Regards,

Amit Kumar Singh

Read only

0 Likes
8,388

Humm...

In fact it enable to reset buffer while you are working on your report, in order that new feature can appear...

I run it between two changes.

What is your problem ?

Once your report is done, between two execution you should'nt encounter problem of buffer ( Don't forget to exit SE/SA38 and to return.

Erwan

Read only

0 Likes
8,388

Hi Erwan,

I am trying to use a Refresh button on an ALV report output.

Whenever I click on the refresh button it again calls all the select queries.

In that select query I am using one function module 'STATUS_READ'.

This fm is giving the same result that it was giving when the report is run for the first time even though the value is changed now.

If I execute the program again then program gives the correct output.

Regards,

Amit Kumar Singh

Read only

Read only

0 Likes
8,388

Ah OK.

Are you using the USER COMMAND sub-routine in your ALV function ?

This is what you have to use, to perform that.

Read only

0 Likes
8,388

Yes i am using USER__COMMAND like this

----


  • FORM USER_COMMAND *

----


FORM user_command USING u_ucomm TYPE sy-ucomm

us_selfield TYPE slis_selfield. "#EC CALLED

data : l_memory_id(20) type c value 'BSVA_BUFFER'.

free memory ID l_memory_id.

CASE u_ucomm.

WHEN gc_refresh.

PERFORM clear_data.

  • CONCATENATE '-' p_months INTO p_months.

PERFORM populate_z01. "List of Plants and Materials

PERFORM populate_z02. "List of Periods and dates

PERFORM populate_z03. "Report Contents

PERFORM add_data.

us_selfield-refresh = c_x.

us_selfield-col_stable = c_x.

us_selfield-row_stable = c_x.

ENDCASE.

*

ENDFORM. "user_command

----


  • FORM PF_STATUS_SET *

----


FORM pf_status_set USING ut_extab TYPE slis_t_extab. "#EC CALLED

DELETE ut_extab WHERE fcode = gc_refresh.

SET PF-STATUS 'STANDARD_FULLSCREEN' OF PROGRAM 'SAPLKKBL'

EXCLUDING ut_extab.

ENDFORM. "pf_status_set

Where gc_refresh is defined as

constants : gc_refresh TYPE syucomm VALUE '&REFRESH'.

Read only

0 Likes
8,388

Hi all,

Thanks for all your support.

Now my problem has been resolved.

I used FM 'STATUS_BUFFER_REFRESH' . This refres the buffer memory.

Regards,

Amit Kumar Singh

Read only

Former Member
0 Likes
8,389

use this transaction to clear buffer

"swu_obuf'"

Read only

Former Member
0 Likes
8,389

Hello Amit.

I would like to suggest my opinion.

Transaction AL12 - Display Table Buffers.

There is an option in

EDIT
go to
RESET
Buffers.

Lot of options available.

Especially, check the Option

EXP/IMP Memory

Another Alternative,

Transaction CNV_RESET - Reset all table Buffers.

Hope this works out.

Good Luck & Regards.

Harsh Dave