cancel
Showing results for 
Search instead for 
Did you mean: 

Load by 2 restrictions , delete overlapping request by 1 restriction

Former Member
0 Kudos

Hi SDN Community,

Is it possible to write ABAP Code in the

Delete Overlapping Requests section of the infopackage to identify a request by the characteristic restrictions that data was loaded.

As far as i can find on google, i have not found any example that can identify the characteristic value in the transfer rules,

eg. 0FISCPER = restriction

Thank you.

Simon

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

the function module is the same one .

You can jsut go in SE37 and search for it, You shd get it.Its the standard one.

Tell me if you are still not getting it.

--Nandita

Former Member
0 Kudos

Hi Nandita,

Thank you for your replies.

I found this sdn post that shows how to ABAP the first FM RSSM_ICUBE_REQUESTS_GET:

Because for some reason, when i go to SE37 and simple run the test of this FM RSSM_ICUBE_REQUESTS_GET to find the requests, i put for ICUBE : CPERF_C50 is the technical key.

And it short dumps.

In regards to the second FM RSS2_DTP_REQ_MAP_TO_SELDONE you mention,

I still cannot find this in SE37.

Thank you for your assistance.

Simon

Former Member
0 Kudos

Hi SDN community,

Thank you for your assistance. The solution is nearly complete, and hence i have posted the solution that is working for us:

&----


*& Report ZRSSM_ICUBE_REQUESTS_GET

*&

&----


*&

*&

&----


REPORT ZRSSM_ICUBE_REQUESTS_GET.

TYPE-POOLS: rssm.

DATA: li_req TYPE rssm_t_part.

DATA: ls_req TYPE rssm_s_part.

DATA: l_idreq TYPE RSREQUNR.

DATA: lst_range TYPE RSSELECT occurs 10.

DATA: E_UPDMODE LIKE RSAAPI_IF-UPDMODE,

E_OLTPSOURCE LIKE RSAAPI_IF-ISOURCE,

E_SLOGSYS LIKE TBDLS-LOGSYS.

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.

PARAMETERS:

CUBENAME LIKE RSDCUBE-INFOCUBE.

SELECTION-SCREEN END OF BLOCK b1.

CALL FUNCTION 'RSSM_ICUBE_REQUESTS_GET'

EXPORTING

i_infocube = CUBENAME

IMPORTING

e_t_request = li_req.

  • Sort results by date to get the last request

SORT li_req BY datum_verb DESCENDING zeit_verb DESCENDING.

  • Get the first one in this list

READ TABLE li_req INTO ls_req INDEX 1.

MOVE ls_req-rnr TO l_idreq.

CALL FUNCTION 'RSS2_REQUEST_GET_SELECTIONS'

EXPORTING

I_REQUNR = l_idreq

IMPORTING

E_UPDMODE = E_UPDMODE

E_OLTPSOURCE = E_OLTPSOURCE

E_SLOGSYS = E_SLOGSYS

TABLES

E_T_RANGE = LST_RANGE.

Answers (1)

Answers (1)

Former Member
0 Kudos

Yes ,It is possible to write an ABAP Code in the Delete Overlapping Requests section of the infopackage .

Pls follow below steps.

-->go to Data target tab of infopackage.Click on 'Automatic loading' push button in front of any required Infocube.(Infocube from which you want to delete the Request.)

>Select 'Delete existing request' -


Exceptions> request deletion through Routine.

--> Then you can write an Abap code to delete request as below....

1) first Calculate selection settings for request to be deleted (means Fiscper for which data to be deleted)

2)Get all requests in cube by using CALL FUNCTION 'RSSM_ICUBE_REQUESTS_GET'

3) Choose relevant requests in cube to be deleted .

You can get request SID from table: /BI0/SREQUID

You can use CALL FUNCTION 'RSS2_DTP_REQ_MAP_TO_SELDONE' to findout the selection conditionds for particular requests.

Then you can match this selection with Calculate selection settings in first step.

Use l_t_request_to_delete[] array to populate request IDs to be deleted.

Hope this helps you,

--Nandita.

Former Member
0 Kudos

Hi Nandita,

Thank you for your reply.

Your concept is very helpful.

I have not found the FM RSS2_DTP_REQ_MAP_TO_SELDONE

This would be the key to determine the request to remove.

Can you please confirm this is the FM, or any alternative.

Thank you.

Simon