http://www.artofbi.com/blog/how-to-add-comments-in-oracle-bi-obiee/
By adding comments in OBIEE users are able to
provide their feedback on the decision making system of the enterprise.
Commenting on a dashboard or annotating a cell with feedback or other
descriptive details can provide a great way to corroborate information or
provide persisting perspectives. This commentary can then be viewed by other
users who have access to the BI system. Ultimately the goal of adding
commentary in OBIEE is to have a system for persisting feedback, creating a
call to action, and recognizing the BI System’s most prolific users. This is
the basic concept of collective intelligence in Business Intelligence referred
to as Collaborative BI.
This post takes a quick look at how to add
comments in Oracle BI (OBIEE) (Oracle BI Enterprise Edition).
Currently there are only a few approaches to
adding comments in Oracle BI (OBIEE) dashboards and the Oracle BI portal
system: Custom Build, Action Framework, APEX, and BITeamwork. This post
will look at each one of these ways to create dashboard comment in OBIEE. This
is a common request in all business intelligence systems but currently OBIEE is
the only Business Intelligence tool that has a complete end-to-end comment
management system that even integrates with Salesforce Chatter and Yammer; it’s
called BITeamwork. Let’s look at all of the options in a bit more details
below.
Custom Build
a Solution for Adding Comments in OBIEE
Some Oracle customers that have purchased
OBIEE as their enterprise BI tool have a close relationship with their
application development team within the organization. An application
development team is typically a team (a motley crew of sorts) of coding gurus
with varying technology backgrounds in programming. Typically these are the
folks that would develop a web portal, intranet page, custom HR application,
etc. internally. Also this team typically maintains third party products such
as MS SharePoint, etc. Every now and then this same team would manage the
BI systems purchased by the organization. So, when looking to embark on a
project to create a commenting layer for OBIEE it is often these folks that are
tapped to do the work. If an organization doesn’t have this type of crew
they may seek outside assistance. Usually this crew has no experience
with OBIEE but every now and they find a ringer or a developer that can pass as
a solution developer to implement a basic solution. A pop-up form similar
to the screenshot below would give the basic input for commenting on the
dashboard. A basic input form to a database table modeled in the RPD could then
surface comments on the dashboard but will more than likely not scale nor be
very manageable.
OBIEE is a heavily produced commercial product
for the enterprise with some of the most complex JavaScript packed hashing, XML
coding, and old-school XMLHTTPRequest AJAX syntax most developers have ever
seen. So, embarking on a custom built commenting solution is no simple feat,
yet certain simple integrations can be achieved as described above.
What to know and What to ask
for in a custom commenting solution
If looking into a custom built solution for
commenting in OBIEE, you will first wish to confer with the developers who will
be tasked with the work and the business team who has the requirements for what
functionality new commenting system should have. There are many integration
factors that must be considered. Usually only simple commenting functionality
is initially desired and most custom commenting solutions cannot scale. Or the
interface developed for the custom build is not given a native feel to the
application or it is not intuitive for user experience which encourages user
adoption failure. For example, if a business requirement is merely to leave a
comment on a dashboard page, the developer must find an integration point
within the OBIEE dashboard, and then create some sort of input form which opens
when a link to “leave a comment” is clicked. The comment must somehow
make a reference to the dashboard page, save the information in some repository
or file, refresh the page so that the comment appears, and always be visible
when the dashboard page is loaded.
So, if
development goes smoothly, the business users will have a custom commenting
solution that leaves a comment in a very non-intuitive way, with manual
refreshing, and no other desired features. Let’s quantify this for a
moment. From custom builds we’ve seen in the past there is typically a 1 week
design session and then a three week initial build and unit testing period for
this simple functionality. Usually this is just a Proof-of-Concept (POC). So, as an example, a consulting developer cost of $165/hr (and
that’s on the low-end; it’s hard to find one cheaper that knows OBIEE and Web
Development) at 4-6 weeks brings the initial cost to around $26,000-$40,000. This would be just to get the POC solution
into a development environment with no user acceptance testing and no migration
to production.
Now once the business users get a taste of the
basic custom commenting functionality, after the iterative development and
tweaks, chances are quite high that they’ll seek more functionality. But this
will come most likely in the form of questions, such as: Why can’t we
search for comments? How do I sort comments? Is there a way to delete
comments? How do I know who left a comment? Can I alert a user that a
comment exists? or the creme de la creme question, How can I add a cell comment
(i.e.: cell annotations)?
These questions are relevant as they are
inevitable because building a commenting solution isn’t so much about leaving a
single comment as much as it is about managing comments. This is similar
to an electronics company building a computer monitor without all of the
accoutrements of controlling brightness, tilt, volume, color, and a power
switch.
Based on the ultimate desired functionality of
commenting within the BISystem, we can see that a custom solution can
potentially provide an immediate solution to the basic need for commenting in
OBIEE, however, the costs of custom development will most likely outweigh the
benefit. It will most definitely create an ongoing maintenance headache
for the lucky internal development team, and will probably never reach the full
desire of the end users due to testing, an application developer’s unfamiliarity
with OBIEE and integration at the level of detail required, and ultimately the
cost of custom development.
Oracle APEX
as a Solution for Adding Comments in OBIEE
Although the Oracle APEX dynamic web content
creation tool has come a long way this product is still not completely
integrated with the Oracle BI platform. The saving grace of attempting to use
APEX as a commenting solution for OBIEE is that the Oracle development team has
already provided a proof-of-concept for you showcasing this integration. While
the integration leaves the majority of the components needed in a comment
management solution by the curb, there is some validity to the solution.
Let’s examine this in more detail.
With the Oracle BI SampleAppv309 (also v207,
v305) there a dashboard (4.1 Actions) focused on actions and custom
interactions prototyped in OBIEE.
Clicking on the APEX Commentary dashboard page
reveals some standard dashboard sections. The first is really an
instruction set for a static configuration file that must be changed in order
to ensure the demonstration of the prototyped commenting concept will
work. As you can see from these instructions, this is purely a prototype
proof-of-concept that has potential if operationalized but potentially limited
and may be a maintenance headache.
On the
dashboard page there are a couple of analysis views. The first view on the left
provides the prototype for commenting. Mind you this is not a cell
comment as that Holy Grail is only available in BITeamwork, but this is a very relevant way to add a
comment to a specific table or pivot table analysis in OBIEE. The second table
view on the right side of the dashboard page is a listing of the comments. What
is neat here is that the comments are kept in reference to the specific column
order and drill of the table view. It also only shows the most recent
comment for that particular intersection record. And in no way is this
prototype set up to be context sensitive to the prompt selections or filters
that may be applied.
To create a comment, the prototype latches on
to the interaction attribute of the fact column, “1- Revenue”. If a comment
exists for the intersection of data then a count of “# of Cumulated Comments”
shows in a neighboring column in the table, if none then a 0 is
displayed. Using OBIEE conditional formatting with the
Actions/Interactions (Action Framework) attribute of the column, if the count
is 0 then when a user clicks on the cell value of the “1- Revenue” column then
an action to “Add a Comment” appears, otherwise a comment exists and the edit
or delete a comment actions appear.
Once a comment is added, edited or deleted
using the prototype view on the left the view on the right has no idea an
action has transpired. So, this view must be manually refreshed using control
links underneath the view. Yes, there are ways to refresh the page on
some predetermined frequency using a bit of JavaScript but a) that will
interfere with any comment you are attempting to leave if the comment is not
typed in and submitted during that frequency pause, or b) this additional
refresh logic will have to be applied to every page you’d want this concept on
along side this prototype APEX logic. Once the view or page is refreshed the
comment appears.
The workflow from OBIEE to APEX is fairly
straightforward: The user selects an option from interacting with the table;
the Action Framework calls the APEX Web Service which either reads or writes
information. The dashboard page when loaded simply has the comment
database table modeled through in the OBIEE RPD as a Subject Area which is
referenced in another Analysis created to display the comment data from the
database table.
Although
Oracle APEX has come a long way in the last several years, the full integration
with OBIEE is still advancing. Although this appears to be a fit/gap
solution for commenting in OBIEE there is much left to be desired in a stitch
work integration between APEX and OBIEE. Here are few links worth
visiting for integration APEX with OBIEE in any shape or form: https://blogs.oracle.com/proactivesupportEPM/entry/obiee_apex_integration andhttps://support.oracle.com/rs?type=doc&id=748896.1
OBIEE Action
Framework as a Solution for Adding Comments in OBIEE
Let’s
start here by understanding why one may think that the Action Framework would
be a good candidate for developing a commenting solution. In order to do that
we’ll first need to explain the OBIEE Action Framework. The Action Framework
of OBIEE is a programmatic component within the application that ties into the
application server (WebLogic Server), Oracle Fusion Middleware libraries,
JavaScript, and of course, OBIEE Presentation Services. One of the general
purposes of the Action Framework is to provide communication securely to
external tools and consumption services such as Hyperion Essbase, Web Services,
etc. using Fusion Middleware security. Simple actions, such as linking to
a web page, are created on the front-end using the GUI tool but this is very
limited in nature and cannot be widely customized. More complex actions such as
calling an Essbase Calc Script, executing or consuming a Web Service, or
updating a record in a database table are not intuitive to develop and the
configuration for this type of functionality resides in a single file,
UserScript.js, found in a much obfuscated path in the Fusion Middleware home
directory. Action Framework is a great concept and even though its
documentation (http://docs.oracle.com/cd/E14571_01/bi.1111/e16364/actions.htm)
is quite sparse for what its full potential could be it is a nice addition to
OBIEE for some integration efforts. Mark Rittman gave a
presentation on OBIEE and the Action Framework and separately myself along with peer
Marty Mersinger did another great presentation on the OBIEE Action Framework
back at Oracle Open World in 2012 if looking for some objective perspective on
the holistic topic.
Now that the definition of Action Framework is
done, let’s look at the examples from the OBIEE 11g Demo SampleApp Virtual
Image regarding adding a comment via the action framework. Again, we are
trying to point out the extent to which the Action Framework could be used for
adding comments or annotations on a dashboard. We’ll also show some basic examples
of Action Links and updating Essbase from OBIEE to show where the Action
Framework is best positioned for use with OBIEE.
The Oracle
BI Sample App shows us how it would be possible to allow a user to click a link
marked “Add Dashboard Commentary” which would reveal an Action Framework prompt
containing text fields. It should be noted that this prompt window size,
its contents or design cannot be modified nor can the attributes of any text
fields. In the example provided from the /shared/4.
Actions and Interactions/4.1. Actions/Insight Into Action dashboard you can see this attempt at
dashboard commentary applied.
Once a user clicks the “Execute” button the
Action Framework method is called. This custom method, in this case,
simply updates a record in a custom database table. The table is modeled
in the RPD and fed through a Subject Area for which a text view is created to
display the output. Once the prompt is closed, a user is still required
to manually click a refresh link or refresh the browser page to show the new
comment. Because the AF system is not 100% integrated with the OBIEE
front-end, information such as the user’s name, dashboard name, etc. are not
captured.
We do wish
to canonize the Action Framework in OBIEE for where it does truly excel and
make the most practical sense. That is in doing things such as updating
simple variables, or communicating with other Oracle systems such as Oracle
Essbase. In one of the better use cases for AF we turn our attention briefly to
the Sample App catalog dashboard page, /shared/8. Integration
Features/8.21 Oracle Essbase Interaction/Writeback from Tbl,
which showcases an example for updating Essbase on the fly from OBIEE.
Here we will update a measure called “Total
Expenses” for any available intersection shown in a table view. Clicking
the link on the value in the cell gives us an action list with one option.
Clicking on it gives us the AF prompt with a single text field to change the
measure amount.
Clicking on the “Execute” button submits an
UPDATE statement to the BI Server using the AF script mentioned above and the
AF prompt disappears. We are again left with the manual intervention of
refreshing the view or the dashboard page in the browser to see the change but
if all goes well the value is updated in the Essbase cube and reflected on the
dashboard page view.
As you can see the Action Framework for OBIEE
is more suited for navigation type links and for deterministic data sent as a
simple updates to the BI Server or third party system. Although very basic
commenting functionality could be created this falls closer to a custom build
commenting solution which would encounter the same management and scalability
pains. Testing the AF can be quite difficult depending on level of
expertise. Much of the code changes require a restart to portions of
OBIEE or WLS in order to have the change reflected in the system which can
often make iterative development a bit more effort than one would desire but
there are some major benefits for the right use case as explained above.
OBIEE
BITeamwork Collaborative BI Solution for Adding Comments in OBIEE
Finally the best way to create comments in
Oracle BI is a plug-in utility called BITeamwork. This is a comprehensive
comment management solution which integrates seamlessly into the Oracle
Business Intelligence system.
It does so by deploying into the Fusion
Middleware Application Tier and leverages the Oracle BI XML Templates to embed
HTML5 and JavaScript code to augment to the Oracle BI GUI. BITeamwork
provides the ability for end users to create dashboard comments and cell
annotations similar to MS Excel cell commenting.
Its comment management solution shines through
with an emphasis on “management” by providing deletion of comments, archiving
of comments, security on comments, and more features that allow an intuitive
ease for controlling comment access.
A guiding principal behind BITeamwork is
collaboration within the BI System. As such users have the feel of social
networking feedback in BITeamwork with the ability to “Like” a comment in OBIEE
by voting on any comments to which they have access. Similar to the
Google+ or Facebook “Like” features, comments in OBIEE can be aggregated based
on this feedback loop to determine the most appreciated or most important
commentary in the BI System.
Clearly
BITeamwork is the Holy Grail right now for commenting in Oracle BI and the
solution for adding a cell comment in Oracle BI that is intuitive and truly
emphasizes Collaborative BI in OBIEE. BITeamwork is available for download athttp://www.biteamwork.com and can be deployed into an existing
Oracle BI 11g implementation within minutes. Here are some quick start videos to learn more about BITeamwork. Also,
read about many of the BITeamwork features with a bit more on the philosophy of
Collaborative BI.
Nice BLog Thanks for Sharing.
ReplyDeletecompanies address with hr email ids
list of companies in delhi ncr with email address
list of mnc companies in delhi ncr with contact details
Thanks for sharing this great information I am impressed by the information that you have on this blog. Same as your blog i found another one Oracle APEX. Actually I was looking for the same information on internet for Oracle APEX Tutorial and came across your blog. I am impressed by the information that you have on this blog. It shows how well you understand this subject, you can learn more aboutOracle Apex. By attending Oracle APEX Training .
ReplyDeleteIt was very useful for me. Keep sharing such ideas in the future as well. This was actually what I was looking for, and I am glad to came here! Thanks for sharing the such information with us. You can also visit the website for more information related to the - On Demand App Development Company, Live streaming App Development
ReplyDelete