cancel
Showing results for 
Search instead for 
Did you mean: 

Changings Values in ODS

Adem_Baykal
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi all,

i created an ODS and a query based on this ODS.

In this query users should be able to add new data in two empty fields (of type character/attribute).

For example query can look like:

before:

Customer..........Field1.................Field2

000000000001...Mr. Hokpkins..............

after (User entry):

Customer..........Field1.................Field2

000000000001...Mr..Minit...........Mrs.Lee

Now the user should press a button and data should be updated in ODS! That means. "Field1" and "Field2" should be changed from "customer 000000000001".

Is there a way? Maybe with function module RSDRI?

Regards,

Adem

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Adem,

I am not sure and never tryed this but it may be possible.

plz try with Function Module: RSDRI_ODSO_INSERT & RSDRI_ODSO_MODIFY.

Regards,

Ramesh.

Former Member
0 Kudos

Changing values in the ODS may not be a good idea.

1. The ODS stores data by request IDs that are generating during data loads. Directly changing data may cause inconsistencies in data.

2. The SIDs generated per data record are done through predefined SAP programs and use number ranges. Again in this case updating the ODS may cause problems with the SID generation.

You may want to look at the options of using transactional ODS which are meant for updates.

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Adem,

as Karthik Sundaram suggested, you've to use

transactional ODS.

We're using the same scenario:

We've added inputfields to a queryresult using

the table-interface, creating a html form.

We then write data to an T-ODS and 'refresh' the

Query, using an RRI-Jump to itself.

Kind Regards,

Alican

Message was edited by: Alican Polat

Adem_Baykal
Product and Topic Expert
Product and Topic Expert
0 Kudos

Merhaba Alican,

thank you very much. That sounds good. I would also use table interface for input fields. How you realized that? Does it works?

Regards, Adem

Former Member
0 Kudos

Merhaba Adem,

a) in bw-webtemplate:

<form name="the_name" action="" method="post">

<object>

... your talbe item object goes here..

... including your modifyclass

</object>

</form>

b) in modified class:

concatenate your inputfields or select options

into cell_content

c)

after data is chosen or put into the fields

send them e.g. to a bsp-page to write them to the transactional ods.

Regards,

Alican

Adem_Baykal
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Alican,

but is it possible to concatenate input fields in Table Interface? Do you got an exmamle Alican? Best Regards, Adem

Former Member
0 Kudos

Hi,

in method 'CHARACTERISTIC_CELL':

concatenate

'<input name="ZNAME"'

'value="'

C_CELL_CONTENT

'" size="30" '

into c_cell_content.

Regards,

Alican

Adem_Baykal
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Alican,

i created Tableinterface and generated FORM Tag.

I created also BSP-page with following logic:

<%@page language="abap" %>

<%DATA: l_subrc TYPE sy-subrc,

lt_idoc TYPE TABLE OF BDIDOCSTAT,

i_tab TYPE TABLE OF /BI0/PD_SOLD_TO,

ls_zdemo TYPE /BI0/PD_SOLD_TO,

wa_tab like line of i_tab. %>

<%

SELECT SINGLE * FROM /BI0/PD_SOLD_TO

INTO ls_zdemo WHERE

D_SOLD_TO eq '0000001000'.

ls_zdemo-ACN_ACVC = '900000'.

APPEND ls_zdemo to i_tab.

%>

<%

CALL FUNCTION 'RSDMD_WRITE_ATTRIBUTES_TEXTS'

EXPORTING

I_IOBJNM = '0D_SOLD_TO' "InfoObjekt-Name

I_TABCLASS = 'M' " T = Texte, M = Stammdaten

IMPORTING

E_T_IDOCSTATE = lt_idoc " Bei erfolgreichem Verbuchenist die Tabelle leer

E_SUBRC = l_subrc

TABLES

I_T_TABLE = i_tab. " Übergabe der zu verbuchenden Werte

%>

<%

  • activate masterdata

CALL FUNCTION 'RSDMD_MD_ACTIVATE'

EXPORTING

I_CHABASNM = '0D_SOLD_TO'.

%>

In this i am testing right now how it works - that means i am not using any variables.

But my problem his how to pass the whole Table from web to BSP? Cann i pass C_CELL_CONTENT from TI to BSP directly?

Best regards,

Adem

Message was edited by: Adem Baykal

Former Member
0 Kudos

Hi Adem,

Use a Form in your BW Template around your

table item.

use table interace for output of formfields (parameter-value pairs)

If you press submit, call the bsp page and pass the form.

In your BSP page use an page attribute z_req_form type TIHTTPNVP.

In the eventhandler (onInitializaiton)

use

CALL METHOD request->get_form_fields

CHANGING

fields = z_req_form.

--> you will find name/value pairs of the formdata in

z_req_form.

you can also contact me at alican.polat@novasoft.de

Kind Regards,

Alican

Message was edited by: Alican Polat

Former Member
0 Kudos

Hi,

Upto my knowledge, there is no way of updating data from a query to the corresponding ODS or InfoCubes. Lets wait for what experts have to say.

Thanks.