cancel
Showing results for 
Search instead for 
Did you mean: 

BI Remodelling

Former Member
0 Kudos

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.

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

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

Regards

MultiABAP

Former Member
0 Kudos

Hi,

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

Any ideas?

Regards,

Juergen