Showing posts with label write back. Show all posts
Showing posts with label write back. Show all posts

Friday, March 8, 2013

Write Back in OBI 11g

       


Steps to implement Writeback functionality:

 1)    Navigate to the instanceconfig.xml and add the following xml snippet.


Path for instanceconfig.xml :

$(ORACLE_INSTANCE)\config\OracleBIPresentationServicesComponent\coreapplication_obips1\instanceconfig.xml   

XML to be added:

<WebConfig xmlns="oracle.bi.presentation.services/config/v1.1">
   <ServerInstance>
      <LightWriteback>true</LightWriteback>
</ServerInstance>
</WebConfig>

         2)    In Physical layer, Disable  Cache Option in Physical Tables

      3)   In BMM layer, Enable ‘Writeable’ option in the corresponding  BMM columns



 4)    In Presentation Layer, Grant  ‘Read/Write’  access  for the corresponding Users/Groups

       5)      In Identity Manager, Navigate to the corresponding Groups/Users permissions and  Change from Execute Direct DB Request  from ‘Ignore’  to ‘Allow’





 In the Analysis:

           6)  In table properties, Goto ‘Write back’ tab & provide a ‘Template Name’







      7) Goto the ‘Advanced Tab’ in the same Analysis. For every column added,in XML,  there would ne an unique column id. Make a note of these column id’s .


     8)  Create a XML with the Template name provided in the write back table properties and place it in the following path :

$(ORACLE_INSTANCE)\bifoundation\OracleBIPresentationServicesComponent\coreapplication_obips1\analyticsRes\customMessages

In our case, the XML is WriteBack.xml:

 <?xml version="1.0" encoding="utf-8" ?>
<WebMessageTables xmlns:sawm="com.siebel.analytics.web/message/v1">
<WebMessageTable lang="en-us" system="WriteBack" table="Messages">
<WebMessage name="WriteBack">
<XML>
<writeBack connectionPool="ConnectionPool">
<insert> </insert>
<update>
UPDATE SCOTT.TWRITEBACK SET remote_value=@{cbeb7d58868b076fb} WHERE id =@{c3942f60cab957128} and id_2 = @{c006487670b2ecc7c}
</update>
</writeBack>
</XML>
</WebMessage>
</WebMessageTable>
</WebMessageTables>
    



Things to take care in the XML :
     * The Webmessage tag in the above XML is the name of our Template and also the XML file name
       * There should be a space between <insert>  </insert> ; even though we are not using insert command.
         * Please check whether the connection Pool Name is unique in the RPD. If we have multiple connection pool with the same name this would throw an error !
           * Please make sure the XML file is in UNIX format.
             * Ensure the appropriate column id is inserted in the XML.