Enable Write-back in Analyses and Dashboards
Administrators can enable users to edit the data in analyses and dashboards.
- Set up your semantic model.
Note:
Follow these steps if you use Model Administration Tool to develop semantic models. If you use Semantic Modeler, see- In Model Administration Tool, open your semantic model (.rpd file).
- In the Physical layer, double-click the physical table that contains the column for which you want to enable write-back.
- On the General tab of the Physical Table dialog, ensure that Cacheable isn't selected. Deselecting this option ensures that Presentation Services users can see updates immediately.
- In the Business Model and Mapping layer, double-click the corresponding logical column.
- In the Logical Column dialog, select Writeable, then click OK.
- In the Presentation layer, double-click the column that corresponds to the logical column for which you enabled write-back.
- In the Presentation Column dialog, click Permissions.
- Select the Read/Write permission for the appropriate users and application roles.
- Save your changes.
- Create an XML document with your write-back template (or templates). See Create Write-Back Template Files.
Your XML document can contain multiple templates. This example shows an XML document that contains two templates (
SetQuotaUseIDandSetForecastUseID).<?xml version="1.0" encoding="utf-8" ?> <WebMessageTables xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="oracle.bi.presentation/writebackschemas/v1"> <WebMessageTable lang="en-us" system="WriteBack" table="Messages"> <WebMessage name="SetQuotaUseID"> <XML> <writeBack connectionPool="Supplier"> <insert>INSERT INTO regiontypequota VALUES(@{c5f6e60e1d6eb1098},@{c5d7e483445037d9e},'@{c3a93e65731210ed1}','@{c6b8735ea60ff3011}',@{c0432jkl53eb92cd8})</insert> <update>UPDATE regiontypequota SET Dollars=@{c0432jkl53eb92cd8} WHERE YR=@{c5f6e60e1d6eb1098} AND Quarter=@{c5d7e483445037d9e} AND Region='@{c3a93e65731210ed1}' AND ItemType='@{c6b8735ea60ff3011}'</update> </writeBack> </XML> </WebMessage> <WebMessage name="SetForecastUseID"> <XML> <writeBack connectionPool="Supplier"> <insert>INSERT INTO regiontypeforecast VALUES(@{c83ebf607f3cb8320},@{cb7e2046a0fba2204},'@{c5a93e65d31f10e01}','@{c5a93e65d31f10e0}',@{c7322jkl93ev92cd8})</insert> <update>UPDATE regiontypeforecast SET Dollars=@{c7322jkl93ev92cd8} WHERE YR=@{c83ebf607f3cb8320} AND Quarter=@{cb7e2046a0fba2204} AND Region='@{c5a93e65d31f10e01}' AND ItemType='@{c5a93e65d31f10e0}'</update> </writeBack> </XML> </WebMessage> </WebMessageTable> </WebMessageTables>Note: You must include an<insert>element and an<update>element, even if both aren't used. For example, if you're only performing aninsert, you must include the emptyupdatestatement<update></update>. - Copy the XML document containing your write-back templates to the clipboard.
- Apply your write-back template in Oracle Analytics:
- Click Console, then click Advanced System Settings.
- In Writeback Template XML, paste the write-back template that you copied in Step 3.
- Grant permissions to use the write-back code:
- Navigate to Classic home, then click Administration.
- Under Security, click Manage Privileges, and navigate to Write Back.
- Grant Write Back to Database to Authenticated User.
- Grant Manage Write Back to BI Service Administrator.
- To enable write-back in columns:
- In the analysis editor, display the Column Properties of the column on which you want to enable write-back.
- In the Column Properties dialog, click the Write Back tab.If the column has been enabled for write-back in the semantic model, then the Enable Write Back box is available.
- Select the Enable Write Back option.
- Specify the value of other options if you want to change the default.
- Save your changes.
The column is enabled for write-back in any analysis that includes this column. - To enable write-back in table views:
- In the analysis editor, open the table view for editing.
- Click View Properties.
- In the Table Properties dialog, click the Write Back tab.
- Select the Enable Write Back option.
- Select the Template Name box, specify the value of "WebMessage name=" in the write-back template that you specified in Step 2.For example, the Template Name for the example template in Step 2 is 'SetQuotaUseID'.
- Save your changes.