Skip to Content
author's profile photo Former Member
Former Member

BI Remodelling

Hi Experts,

I'm in process of doing a change (add a new characteristic) in an infocube using Remodeling.

I'm trying to use the customer-exit feature using the example user exit --> CL_RSCNV_USER_EXIT_SAMPLE, as my template.

1. Can anyone tell me how to turn on interactive debugging when I execute the remodelling so I can debug the user exit I am using?

2. Has anyone use this sample user exit (see above) and does it return the month of the day? I'm using 0FISCPER as the source field.

Here's the code that I am using:

METHOD IF_RSCNV_EXIT~EXIT.

FIELD-SYMBOLS: <l_s_old> TYPE ANY,

<l_fillfield> TYPE ANY,

<l_newfield> TYPE ANY.

DATA: l_chavl TYPE rschavl,

l_0calmonth_chavl TYPE rschavl,

l_attr TYPE string.

break-point.

*****************************************************

  • Assign the references to field symbols

*****************************************************

ASSIGN c_r_newfield->* TO <l_newfield>.

ASSIGN i_r_old->* TO <l_s_old>.

*****************************************************

  • To use the individual fields of the old table

  • structure (e.g. SID_0CALDAY), assign these fields

  • to field symbols using the field name.

*****************************************************

  • 1/22/2008 -- Request XXXX Add to Period without Year in DV cubes

**ASSIGN COMPONENT 'SID_0CALDAY' OF STRUCTURE <l_s_old> TO <l_fillfield>.

ASSIGN COMPONENT 'SID_0FISCPER' OF STRUCTURE <l_s_old> TO <l_fillfield>.

*****************************************************

  • Implement the logic you want to use for determing

  • the value to be filled into the new field.

*

  • E.g. Here, I have the SID of 0CALDAY available in

  • <l_fillfield>. I then do the following -

*

  • 1) Get the 0CALDAY value corresponding to that SID.

  • 2) Extract the month from this value

  • 3) Get the SID for this month value

  • 4) Assign this value to the changing parameter

  • through a field symbol

  • (Note: Steps 3 and 4 are done in one step in the

  • code)

*****************************************************

CALL FUNCTION 'RRSI_SID_VAL_SINGLE_CONVERT'

EXPORTING

  • i_iobjnm = '0CALDAY'

i_iobjnm = '0FISCPER'

  • I_S_COB_PRO =

i_sid = <l_fillfield>

IMPORTING

e_chavl = l_chavl

  • E_S_NODESID =

EXCEPTIONS

no_value_for_sid = 1

x_message = 2

OTHERS = 3

.

IF sy-subrc <> 0.

l_attr = text-001.

RAISE EXCEPTION TYPE cx_rscnv_exception

EXPORTING

  • attr1 = 'CL_RSCNV_USER_EXIT_SAMPLE'

attr1 = 'ZDV_FOR_0FISCPER3'

attr2 = 'EXIT-1'

attr3 = l_attr

  • ATTR4 = sy-subrc

.

ENDIF.

l_0calmonth_chavl = l_chavl+0(6).

CALL FUNCTION 'RRSI_VAL_SID_SINGLE_CONVERT'

EXPORTING

i_iobjnm = '0CALMONTH'

i_chavl = l_0calmonth_chavl

  • I_S_COB_PRO =

  • I_CHECKFL = RS_C_FALSE

  • I_WRITEFL = RRSI_C_WRITEFL-NO

  • I_MASTERDATA_CREATE = RS_C_TRUE

  • I_RNSID =

  • I_NEW_VALUES = RS_C_FALSE

IMPORTING

e_sid = <l_newfield>

EXCEPTIONS

no_sid = 1

chavl_not_allowed = 2

chavl_not_figure = 3

chavl_not_plausible = 4

x_message = 5

interval_not_found = 6

foreign_lock = 7

inherited_error = 8

OTHERS = 9

.

IF sy-subrc <> 0.

l_attr = text-002.

RAISE EXCEPTION TYPE cx_rscnv_exception

EXPORTING

  • attr1 = 'CL_RSCNV_USER_EXIT_SAMPLE'

attr1 = 'ZDV_FOR_0FISCPER3'

attr2 = 'EXIT-2'

attr3 = l_attr

  • ATTR4 = sy-subrc

.

ENDIF.

Add a comment
10|10000 characters needed characters exceeded

Related questions

2 Answers

  • author's profile photo Former Member
    Former Member
    Posted on Sep 30, 2010 at 12:28 PM

    Hi,

    I also wonder how can I debug the user exit and check if the code is correct?

    Any ideas?

    Regards,

    Juergen

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Oct 14, 2010 at 08:42 AM

    Cant you start the activities in simulation mode? So that you can check your routine works fine.

    Regards

    MultiABAP

    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.