Oracle EPM Smart Space

Subscribe to Oracle EPM Smart Space feed
Updated: 8 hours 25 min ago

Too Many Blogs

Tue, 2009-04-21 15:54

I thought I would be able to keep up with all these blogs but I cannot so I am posting to let you know that I will only be blogging at Essbase Labs.  You will find some of same content but geared more towards Essbase instead of general EPM...

http://essbaselabs.blogspot.com/

Categories: Development

New Browsers and Oracle EPM

Thu, 2008-09-04 12:08

Whenever there are new browser technologies I am interested to see how our existing EPM products will do in them.  Right now there are 2 large browser betas first IE8 and second Google Chrome.  Both are nice browsers with rich application support but they are both betas so there are plenty of bugs.  I tried IE8 first because IE is the most popular browser and it usually does a nice job with our EPM products.

imageI was able to open Oracle EPM workspace in IE8 and logged in just fine.  The explorer screen showed up and I was able to select and open a report.  Opening the report caused a Java script error that messed up my navigation from that point on.  The script errors caused frustration but it was useable.

image

clip_image002[5]I tried the same thing with Chrome and got nowhere fast.  I got a gray screen when trying to load the logon page and it just kept trying to load...  I tried 9.3.1 to see if the older stuff was any better and it let me login and get to the explorer screen but I could not navigate.

clip_image002[7]

So the only conclusion I can come to is that for EPM products stick to supported browsers and use the betas to play with other web sites. 

Categories: Development

JavaFX Preview SDK

Mon, 2008-08-04 15:11

In previous posts I have attempted to show how RIA’s (Rich Internet Applications) can be used for delivering EPM and BI data to end users.  Until now I have focused mostly on Microsoft’s Silverlight and have gotten some grief.  Well  now I have another option; JavaFX has launched their preview SDK and it is time to see how it compares and what the user experience will be like. 

For this test I plan to see If I can create some Essbase ‘gadgets’ that can be used in the browser and then dragged to the desktop (cool feature shown in a JavaFX video).  Comment if you have ideas and stay tuned for posts on my progress.

Categories: Development

System 9 Gadgets

Tue, 2008-07-15 16:55

A while ago I created some System 9 gadgets for the Windows Vista sidebar.   The project went well but when Hyperion was bought by Oracle it kind of got lost and forgotten.  Well I found the source while going through some old files and I decided to dust them off.  I removed the old branding and made sure they worked with the newest version of System 9 (11.1). 

image

image 

There are 2 gadgets, one that lets you browse the System 9 repository and another that stores favorite reports that you set in the first.  The gadgets are great for the user that opens the same key reports on some sort of periodic basis.

I think these are pretty useful and some users may want them.   Next steps are to figure out how to post them and to see if I can quickly convert them to Google gadgets.  I will update the blog when I get them posted.

Categories: Development

I Guess I was Wrong

Fri, 2008-07-11 09:26

About a month or so back I did a post on Silverlight and that post lead to a comment on iPhone support.  At the time I completely punted on my response saying that the mobile market will have to narrow before you will see any sort of BI applications for the phone.  Well I am officially eating crow and admitting it.  Here is a press release from yesterday…

Oracle Announces Oracle® Business Applications for iPhone Available on Apple App Store

Ok, Ok I was wrong, and I admit it but the real news here is that this helps make my case about User Experience being a key driving point for future BI applications.  If users get this great experience on their phones they will also expect it on their desktop or in their browser.

Categories: Development

Silverlight and EPM

Tue, 2008-07-01 13:42

So we went on a mission to see if we could build our first Rich Internet Application for BI and EPM and here is what we did and what we found out.

We used Silverlight for our first try.  We selected Silverlight over other RIA technologies because; one we knew C# and two there is a pretty good beta available for Silverlight.  We are considering other technologies but wanted to start with what we could use and get running the fastest.

We started with lots of research and came up with two projects.  The first project consisted of building what we called a Provider DLL (thanks Mike) that talked HTTP and XML to the existing Smart View back-end.  This gave us access to the Planning and FM repositories (Forms, Business Rules and Calculations) and access to Essbase (Data and Calculations).  The second project was the UI, this was done with a mix of Expression Blend and Visual Studio.  This turned out pretty awesome and was very easy but we did find that there is not a whole lot out there as far as controls go for BI and EPM.  We had to build all of our own controls.  Here are some screen shots.

image

image

image

The really cool part about the application is the async nature of RIA’s.  Basically everything is async and this really makes for a rich and crisp UI experience…  No browser lockups, fast operations, run multiple operations at once, etc.  Overall RIA’s seem to have a place in more than just consumer applications and we will continue to explore the possibilities of applying this technology to BI and EPM.  Stay tuned for more on this topic.

Categories: Development

Another Site Specific Browser

Tue, 2008-07-01 09:36

I got a comment pointing me in the direction of another site specific browser Bubbles.  This is a Windows SSB that has many of the same features as the ones I spoke about in my earlier post on this topic.  This one also has some cool extension capabilities that enhance the SSB experience.  For example you can get an extension for Yahoo mail and you will get System tray notifications when you get new mail.  I applied this to Workspace and every thing worked great, here is a screen shot:

image

The extensions could be powerful in the context of BI and EPM.  The first thing that comes to mind is notifications like the ones in Smart Space or some how tie into the notifications in Workspace.  For now I just like having Workspace always running in my system tray.

Categories: Development

Site Specific Browser for EPM Applications

Wed, 2008-05-28 11:00

So for the past few posts I have been talking about blurring the lines between desktop and web applications and the technologies that will get us there. And in my first post on this topic I mentioned a technology called 'site specific browsers'. Site specific browsers are just that, it is a browser window dedicated to one site or in the case of BI and EPM a web based application. The installed application gets a shortcut on the user's desktop or the start menu and is a simple click away from running. You can read more about site specific browsers and how Mozilla Labs describes their product 'Prism'.


So in doing some searches I found that there are 2 major options with site specific browsers, Fluid and Prism. Fluid is Mac only so for my testing I used Prism. I decided to throw a couple of BI applications at it and see what I thought of the user experience. (I ignored minor bugs or issues as this stuff is still not official product). So I put Workspace (9.3.1) and OBI (10.1.3.3.2) in Prism and played around a bit. Here are some screen shots:


Workspace with a planning form loaded.



OBI with the default Paint Dashboard.

Both applications worked pretty well out of the box and it was nice not to have all the clutter and overhead that a browser carries with it. It was also nice to have the applications launch from a shortcut on the desktop. Some of the things I didn't like were as follows:


  1. There were times where it would have been nice to have navigation (ability to go back). This is not an issue with Prism itself, it was the fact that the application was designed to live in a browser.
  2. This does not change the application experience that much. (I did not expect it to) Basically if you are happy with the application experience this will improve on it. If you hate the way the application works then this will do little.

Overall this is a very cool concept but you are simply making web applications run as if they were desktop applications. I will use Prism for things like Google Mail or Yahoo Mail but at the end of the day, from a user experience perspective, I still prefer Thunderbird or Outlook for email. It would be cool to see if an RIA (Rich Internet Application) developed in Flex or Silverlight can run in a site specific browser…

Categories: Development

More on JavaFX

Tue, 2008-05-27 14:18

OK I will be totally honest I don't have a whole lot on this one, simply because it is the newest entry in the market. It does look promising from the videos I have seen and what is being said about platform support sounds great. I just hope we can avoid all the issues I have seen over the years with JRE and version compatibility… I have signed up to preview the SDK and when I get a hold of it I will be sure to share more. I do want to share one cool feature I have seen on video. It is the ability to start with the application in the browser and then drag it to the desktop. Here the video that shows this:



The feature I am talking about is about 2:10 into the video and I think this will be a key differentiator that the other RIA (Rich Internet Application) players will quickly try to copy.

Categories: Development

Silverlight 2.0

Wed, 2008-05-14 16:53

In my post on desktop and web convergence I said I would spend some time on each of the technologies I mentioned, so here we go. I will start out with Silverlight only because for the past 2 years I have been immersed in c# and smart clients so it was a pretty simple jump. Don't expect that after reading this post you will be an expert in Silverlight as I have only scratched the surface. I figure the best way to start is to list the pros and cons; here are some things I think fall into the pro category:

Language Support

Silverlight allows development and extensions using a verity of programming languages including JavaScript, C# and VB.Net. This will help ease the learning curve for existing developers familiar with these languages. Silverlight also has a Dynamic Language SDK that allows developers to communicate with the .NET libraries included with Silverlight. This makes it open to many other language possibilities like Python and Ruby.

IDE availability:

This is often time a con for newer technologies but for Silverlight this is a pro, it's integrated into Visual Studio 2008 it has a separate design environment of its own (Expression Studio). Studio is truly for the designer and allows for UI driven creation of animations and overall user experience. Having great IDE's for both the designer and the developer is a big plus.

Platform and browser support:

Silverlight supports many platforms and browsers. This is different than one might expect from Microsoft but Silverlight supports IE, Safari, and Mozilla and will run on both Window and the Mac. Plus there is now support for a growing list of mobile devices.

User Experience Support:

Silverlight has a wide variety of features that support a rich user experience, this combined with the power of Expression Studio make for crisp UI's. Features include; media support, panel and canvas support, animations with timelines, AJAX support, etc.

Here are some things that I considered cons:

Limited .Net Framework:

This one can go either way but for me it is a con. Silverlight comes with a limited set of the .Net framework assemblies (to keep the client install small) and for developers that are used to desktop development this will be difficult. For others new to the .Net world they this will not be a con.

Separate IDE's for Design and Development:

I am always looking for that one IDE that does it all and I tend to cross the line between designer and developer so switching in and out id Visual Studio and Expression Blend was not so smooth. I wish they would just stuff Blend into Visual Studio but I am sure many disagree on this.

Keep in mind that Silverlight 2.0 is currently in beta and like any other beta software you should use and install with care. Here are some cool Silverlight samples.

Categories: Development

Another Desktop/Web Technology

Wed, 2008-05-07 08:21

Just as I was thinking about what technology I should start with from my last post another company decided it was time to hop on this desktop/browser train. Sun announced JavaFX at the JavaOne conference yesterday. JavaFX is the latest entry into this space and this should help to fuel innovation but will add to the confusion when trying to decide what platform to develop on. This technology along with the others has many compelling features like rich user experience, browser and desktop capabilities, and it's cross platform.

Stay tuned next week when I start to dig into each of these technologies...

Categories: Development

Desktop and Web Convergence

Thu, 2008-05-01 09:30

This is not a new topic but it is certainly new for BI and EPM. For the past 5 or so years the focus has been on providing users with functionality while attempting to have zero or limited client deployment. In other words build your front end to run in a browser, preferably with no plugin's (HTML and JavaScript only). Unfortunately this has become more difficult as users have demanded more interactivity and performance from clients. They get this from the consumer application space; while in ITunes they use cover flow to select a song or while checking stocks with a vista gadget the chart animates open and closed. Really we could just select a song in a list view and see the stock chart in a popup window but that would not be cool nor would it differentiate the application from a competitors'. Let's face it innovative user experience is hot! Lucky for us there is now some great technology to help us meet the needs of our end users while still allowing for simple application deployment. Here are a few:

Google Gears

Adobe Air

Microsoft Silverlight

XBAP –XAML Browser Application

Microsoft ClickOnce

Site specific browsers like Fluid and Prism

To try to cover these in one blog entry would not do any of them justice, so stay tuned…

Categories: Development

Blog Name Change...

Wed, 2008-04-16 07:45
You may have noticed a subtle change in the name of the blog. It has changed from 'Oracle EPM Smart Space Technology' to 'Oracle EPM and BI Technology'. This is because many of our current endeavors are moving beyond a single product and we want to blog about them. This small change will allow for more posts on more topics. Anything EPM, BI and the technologies that power them are now fair game.

Thanks!
Categories: Development

Tip: Using a Non-Standard Port for the Collaborator Database

Tue, 2008-03-18 17:04
In Smart Space 9.3.1, one of the common “bumps” in the installation road is when you try to use a non-standard port for the Collaborator database. This is because the configuration utility does not properly update the wildfire.xml file for this situation. To remedy this mistake, simply find the wildfire.xml file and look for the following line:

jdbc:jtds:sqlserver://serverName/databaseName;appName=jive

Change the above line by adding the port number (i.e. 14330) after the serverName like so:

jdbc:jtds:sqlserver://serverName:14330/databaseName;appName=jive
Categories: Development

Guest Blog: Smart Space from an end-user’s perspective

Mon, 2008-03-03 13:54
I had the pleasure of being an early user of Smart Space while Mike, Matt and the team were building it.

I’ve been using software since the days of Wordstar, dBase II, and Visicalc (on CP/M before DOS no less). Using Smart Space was not like using software. This was an environment I was experiencing. I think Matt’s vision of “I just want to ride a bike” is spot on.

Smart Space is:

Intuitive: I didn’t know I was doing enterprise performance management, data mining, query & analysis – I thought I was making decisions (I further didn’t know I was making those decisions based on judgments & knowledge learned from information that came from data!). Gadgets solve problems.

Social: my favorite part of using Smart Space was collaborating with other users. I could slice & dice data and quickly see an anomaly (variance outside of a threshold, for example), and instantly ping a colleague about it, share my view with her and record the decisions/actions taken as a result.

Personal: my desktop was role & function specific, that is it was set up (by me) to only contain those gadgets, workflow, and points of view that had to do with the role I played. So it should be with enterprise performance management: finance cares about the balance sheet, Operations cares about the supply chain, sales cares about revenue and pipeline, and so on. Executives care about summarized results and trends, managers care about tracking targets and variance, and analysts care about cause and effect. And, in an “EPM enlightened” organization, people across all functions care about cross-functional things. They would have gadgets that let them get to revenue growth, operational efficiency, customer satisfaction, and so on.

Ready at hand:” Smart Space is always-on EPM. It’s always there, always ready, and becomes an extension of my work – like the phone, IM, e-mail, and coffee.

Expandable: there is a fairly large (and growing) community of EPM and BI devotees: customers, consultants, vendors, analysts. These folks are candidates for contributing (dreaming-up & developing) the library of gadgets available to get your job done. I just thought of one while typing this (I’ll let you know what it is as soon as I get a developer to write it for me, any volunteers?)

This is pretty exciting stuff, and I can’t wait to see what Matt & Mike have in store for us in ’08.
-Ron
Ron Dimon
Business Foundation
EPM Advisory
Categories: Development

Desktop and Gadget Sharing

Mon, 2008-02-25 12:41

One cool feature that is often overlooked in Smart Space is its ability to share desktops and gadgets with other users. To help understand this feature you need to understand what I am talking about when I use the term 'desktop'. I am referring to Smart Space desktops not Windows desktops. Smart Space Desktops are simply a collection of gadgets and services that a user has self-assembled. The user can have many of these 'sets' of gadgets that they can switch between throughout their working day. Back to the sharing part… Sharing these desktops with fully configured gadgets is a powerful feature. Imagine a financial analyst creating a desktop full of useful gadgets and passing it to everyone in their group, or an IT administrator creating a set to push out to the executives.


There are 2 major ways to do this. The first I call the 'thumb drive' method; the user creates a set of gadgets on a Smart Space desktop and then saves that set to a file (archives it). This file can be passed around in email, on thumb drives, or even on floppy disks (does anyone have one of these?). The second I call the 'push' method, in this scenario the user creates the set of gadgets and then tells Smart Space what user should get it (uses the collaboration engine). The users will then get a toast message (taskbar notification) that they have been passed and new desktop and then they can install it.


Either way is great for sharing content and will help customers deploy a unified application across their enterprise.

Categories: Development

Personal Substitution Variables

Mon, 2008-02-11 10:47
A cool feature of the Smart Space SDK is the ability to create a set of global Smart Space variables that can be used by any gadget. These are essentially name value pairs that are called LocalProperties in Smart Space.

I used this feature in my latest batch of Essbase gadgets. I wanted the ability to set the Time dimension member for all of my Essbase query gadgets in one place and not have to go to each gadget to change this member. I knew that one option would have been to use the Essbase Substitution Variable functionality found in the Essbase product. But I did not want to make this a variable for all Essbase users which is what the Essbase Substitution Variable would provide.

I created a simple MyVariables gadget that allows the user to create personal variables.




These variables can then be used by other gadgets. In the case of the Essbase gadgets, I implemented a special syntax whereby any member name that is preceded by two ampersands (&&TODAY) represents a local variable. When constructing the query, the Essbase gadget then makes a call to Smart Space whenever it encounters a member name with this syntax to get the value of that variable. It replaces the syntax (&&TODAY) with the variable value (“20080823”) and issues the query.

This is another example of the great new benefits of having Smart Space running on your client. It is the analytical footprint that will allow for powerful new capabilities such as creating your own personal substitution variables.


public String getPreference(String key)
{
return Services.PreferenceManager.LocalProperties.Load(key);
}

public void savePreference(String key, String value)
{
Services.PreferenceManager.LocalProperties.Save(key, value);
}

public void deletePreference(String key)
{
Services.PreferenceManager.LocalProperties.Remove(key);
}

public void getPreferences()
{
listViewVars.Items.Clear();
try
{
String[] sPrefKeys = Services.PreferenceManager.LocalProperties.GetAllKeys();

ListViewItem item = new ListViewItem();

foreach (String sPrefKey in sPrefKeys)
{
String sPrefValue = getPreference(sPrefKey);
item = this.listViewVars.Items.Add(sPrefKey);
item.SubItems.Add(sPrefValue);
}
this.Refresh();
}
catch (Exception e1) { }
}
Categories: Development

I Just Want to Ride a Bike…

Mon, 2008-02-11 09:13

I came across an article in Hemispheres Magazine (UAL publication) about this time last year. The article was about cycling, and last February I was just getting back into cycling after a long break from it, so I was intrigued. Aside from getting back into cycling I was also buried in everything Smart Space attempting to build and launch this new product. I was shocked how much this article related what I was doing in software to what Shimano was planning to do for cycling. The article started off talking about how the Lance Armstrong era of cycling was over and the wave of high end bike sales was coming to an end in the U.S. So Shimano went off to figure out how they could get people to again love the sport of cycling and therefore buy more products. The conclusions they found is where all the similarities came. They found that people had very fond memories of cycling and really enjoyed the idea of it but could not wrap their head around the complexity of what cycling has become. Things like 10 speed cogs, carbon forks, STI shifters, and clip less pedals had started to overwhelm the average cyclist. The basic conclusion was that people just wanted to ride a bike; simplicity. This is what I really related to; the goals of Smart Space are in line with this, end users want simplicity. Many end users don't want to worry about connection settings, indexes, caching, dimensionality, etc. they just what to know how their travel expenses will impact the department's budget for this quarter or get the status of their sales pipeline. I saw that the key for Shimano and Smart Space was in simplicity. So whenever I think about a feature or plan out a new gadget I think about the idea that people just want to ride a bike.

Here is the article so you can decide for yourself if the concepts really relate:

http://www.ideo.com/pdf/Hemispheres_2007-02.pdf

Categories: Development

What is the difference between a gadget and an application?

Thu, 2008-01-31 11:33

When talking to people about Smart Space I hear this question come up all the time. I have found that most people have very different views on this topic so take what I have to offer as merely another opinion. In my earlier post I talked about the definition of a gadget and stated the following:


Gadgets (or Widgets) are mini applications that expose key content (bits of data) or features generally from a larger (full) application and they deliver these features or data in a simple and visually pleasing manner.


So when I read this I key in on some key concepts that help me to differentiate between an application and a gadget. First, I wrote that gadgets are "mini applications", and to me this means that they are smaller than an application and, at times, related to a full application. When I say smaller I mean smaller in two ways, smaller in physical footprint and smaller in the screen real estate that the gadget takes up. Second, gadgets focus on "key content"… "or features" where an application will have many features and tons of content. Lastly the gadget should present this information in "a simple and visually pleasing manner". In other words when a gadget is giving me information I should not have to guess at what it is telling me, the presentation of the data is just as important as the data itself.


Here are a few examples:


In Smart Space there is a nice search gadget that lets me search for content in Hyperion Reporting and Analysis (System 9). It is very simple, just enter a search term and get results. This is the kind of search I do 99% of the time and that is why this makes a great gadget. If I want to get more advanced I could open the Hyperion Reporting and Analysis application in my browser and navigate the search page to perform the search with a number of other key options. The gadget takes up very little room on my desktop and covers most if not all of my Hyperion Reporting and Analysis search needs, but the application is there when I need it.


In our beta I wrote a notepad gadget that is great for taking quick notes and having them always visible on my desktop but I would not want to write this blog entry using it. For writing emails, document or blog posts I want to use an application like Word that is full of great features for writing.


In the Smart Space Key Contacts gadget I can limit my list of users that I communicate with, down, from the long list that includes people I have seldom contact with, to a much more focused list. At a glance I can see who is available to chat, and with a single click I can start my IM application. In this case the gadget provides visual indication of my key contacts that are available and launches me from the gadget experience to the application experience.


Here is an example from the consumer gadget world and this should drive my point about presentation of the data. I will use images to demonstrate this:


Both deal with system monitoring but the gadget gives me the basics and at a glance tells me what I need to know. (My CPU is fine but memory consumption is a bit high) If I want features and details then I go ahead and open the application.


To conclude I want to keep things simple, so when creating a gadget don't try to satisfy every use case otherwise you will have an application on your hands, make sure that you are building something a user wants to run on their desktop all the time, and make sure what you present has the right design for a user to 'get it' at a glance. I have found that these same Ideas can be applied to almost any application and I think about these concepts whenever I am building a new gadget.

Categories: Development

Sending A Message - Using Essbase Custom Defined Functions

Sun, 2008-01-27 19:46
In my last post, I talked about how the messaging capabilities contained within the Smart Space product can be leveraged in non-traditional ways. One of the best ways is by using the Smart Space Java API.

I am a big fan of the best OLAP database on the planet: Essbase. Essbase has a great feature where a developer can write their own custom Java functions that can then be called by the Essbase calculator. I have always wanted to have the ability from within an Essbase calculation script to notify Essbase users that a calculation has completed. The combination of the Smart Space messaging Java API and the Essbase custom defined function (CDF) will now allow me to fulfill that dream.

When writing to the Smart Space Java API, there are a number of JAR files that are required from Smart Space (inform.jar, smack.jar, smackx.jar, smackx-debug.jar and log4j.jar). There are four main operations in the Smart Space API: connecting, disconnecting, creating the message and sending the message. As of today, both a discussion message (a message that uses the discussion dialog) and a notification message (a message that uses the Smart Space toast dialog) can be sent using the Java API.

This 9.3.1 code sample shows the three Smart Space messaging operations exposed in the proper format to be used as an Essbase custom defined function.

package com.hyperion.essbase.cdf.smartspace;

import com.hyperion.smartspace.inform.info.*;
import com.hyperion.smartspace.inform.impl.InformImpl;
import java.util.List;
import java.util.ArrayList;

public class SSMessage {
private static InformImpl inform = new InformImpl();
private static String sServer;

public static void main(com.hyperion.essbase.calculator.Context ctx,String[] args)
{
sendMessage(args[0],args[1],args[2]);
}

public static void connect(String sColabServer, String sUser, String sPassword) {
inform = new InformImpl();
try
{
System.out.println("Trying to connect");
sServer = sColabServer;
inform.connect(sServer, 5222, sUser + "\\40native\\20directory@" + sColabServer, sPassword);
}
catch (Exception e1)
{
System.out.println("Error: " + e1.getMessage().toString());
}
}

public static void disconnect() {
try
{
System.out.println("Disconnecting");
inform.disconnect();
inform = null;
}
catch (Exception e1)
{
System.out.println("Error: " + e1.getMessage().toString());
}
}

public static void sendMessage(String sType, String sToUser, String sMessage) {
MessageType mType = new MessageType();

try
{

if (sType.toUpperCase().equals("DISCUSS")) {
mType = MessageType.Chat;
} else if (sType.toUpperCase().equals("MEET")) {
mType = MessageType.GroupChat;
}
else
{
mType = MessageType.Headline;
}

List recipients = new ArrayList();
recipients.add(sToUser + "\\40native\\20directory@" + sServer);

//send created message
if (inform.isConnected() == true)
{
//create jabber message with recepients list and type
Message message = inform.createMessage("t", "t", recipients, mType);
//create body
message.setBody(sMessage);

inform.sendMessage(message, recipients);
System.out.println("Message sent");
}
else
{
System.out.println("Message not sent");
}

}
catch (Exception e1)
{
System.out.println("Error: " + e1.getMessage().toString());
}
}
}

Once this code has been compiled and registered with Essbase as a CDF, the functions can then be accessed from with an Essbase calculation script. This example script sends a discussion message for every value in the database where there is a negative variance for January Sales using the Sample Basic Essbase database. It also shows how to send a notification message to any user.

Set UpdateCalc Off;Set ClearUpdateStatus After;

RUNJAVA com.hyperion.essbase.cdf.smartspace.SSConnect
"servername"
"essbaseBOT"
"password";

RUNJAVA com.hyperion.essbase.cdf.smartspace.SSMessage
"DISCUSS"
"mlarimer"
"The following items currently have a negative variance to budget for Jan Sales:" ;


Fix (@LevMbrs("Market",0),@LevMbrs("Product",0),"Jan","Actual")

"Sales" (IF("Variance" <>
@JechoString(@Name(@CurrMbr("Market")));
@JsendMessage( "DISCUSS", "mlarimer", @JgetConcatenate(@LIST(@Name(@CurrMbr("Market"))," -> ", @Alias(@CurrMbr("Product"))," = ", @JgetString("Variance"))));
ENDIF);
EndFix

RUNJAVA com.hyperion.essbase.cdf.smartspace.SSMessage "NOTIFY" "mlarimer" "one" ;
RUNJAVA com.hyperion.essbase.cdf.smartspace.SSMessage "NOTIFY" "mlarimer" "two" ;
RUNJAVA com.hyperion.essbase.cdf.smartspace.SSMessage "NOTIFY" "mlarimer" "three" ;

RUNJAVA com.hyperion.essbase.cdf.smartspace.SSDisconnect;


Note: This example is very simplistic as it uses a hardcoded username and password in the script itself. There are a number of ways to use variables that can replace the username and password and thus not have them hardcoded in the script.

I am really excited about the future of a product like Oracle EPM Smart Space. It will enable developers to build cool new solutions that have never been possible to build in the past.


Categories: Development

Pages