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

Shared Objects

Former Member
0 Likes
856

Hello,

we have upgraded from ECC5 to ECC6. Now one abap program has some errors.

The program works with shared objects. In the program a shared object is stored in the memory.

In ECC5 we have used the following methods from from the class CL_SHM_AREA .

ATTACHUPDATE

ATTACHUPDATE_2

ATTACHWRITE

GETLOGON_CLIENT

This methods are not available in ECC6. In ECC6 we found only the following methods:

ATTACHUPDATE70

ATTACHWRITE70

We have replace the method ATTACHUPDATE with ATTACHUPDATE70 and the mehtod ATTACHWRITE with ATTACHWRITE70.

Instead of the method GETLOGON_CLIENT we use the system variable sy-mandt.

We found no corresponding method in ECC6 for ATTACHUPDATE_2.

Now when we start the program we get an short dump. The dumps says "Change access to a read-only shared memory area."

We do not know why ?

In the code we use the following statement to open the object for update:

lv_area = /gebf/cl_fs_state_area=>attach_for_update( attach_mode =cl_shm_area=>attach_mode_detach_reader ).

And than

if lv_area is not initial.

lv_area->root->set_state( im_lgnum = m_lgnum

im_lgtyp = m_lgtyp

im_online = im_online ).

*& Commit and detatch

lv_area->detach_commit( ).

endif.

In the method set_state we want to modify a table. During this step the dump occurs. The same code works fine in ECC5.

What have we to do that we can modify the table. Or which settings decides that a object is read-only in a shared memory area.

Thanks

2 REPLIES 2
Read only

Former Member
0 Likes
591

Closed

Read only

Former Member
0 Likes
591

Closed