Author Archives: Seismi

Oracle Hyperion DRM Tips & Tricks | Save Your Work

Oracle Hyperion Data Relationship Manager (DRM) has a somewhat unorthodox interface, which can lead the unwary into losing their work. Grizzled Oracle Hyperion DRM veterans will have discovered these traps the hard way, but if you are relatively new to the product this blog post might spare you some pain, we hope.

Items Displayed in Tabs

Oracle Hyperion DRM uses tabs to display the details of queries, compares, imports, blends, exports and all the objects managed by a system administrator. When you have one of these open, as the image below shows the only indication that you have unsaved changes is an asterisk next to the item name (and even this cannot always be relied on).

130425_DRM Tips and Tricks_Save your work

 

If you close an item after making changes, you don’t see the Save / Don’t Save / Cancel dialog box that most programs would display – Oracle Hyperion DRM simply closes the item and discards any unsaved work. It is thus important to get into the habit of being conscious of whether you need to click the Save icon towards the top left before closing a Oracle Hyperion DRM tab.

Versions

When an Oracle Hyperion DRM version is created it starts in an unsaved state. Unsaved versions are deleted whenever the Oracle Hyperion DRM service is restarted (which happens every night at some sites). New versions are often used for importing data to blend into other versions, so are legitimately temporary. However, if you have created a version you want to keep, it does not matter how often you clicked Save after adding or moving nodes or updating properties. If the Oracle Hyperion DRM service is restarted you will lose everything.

You should save a version you want to keep as soon as you have created it, by right-clicking on its name and selecting Save. 

130425_DRM Tips and Tricks_Save your work_2

 

Once a version has been saved, all confirmed node changes and property updates are preserved without you having to save the version again.

Hopefully that should save you some time and stress!

Tagged , , ,

Oracle Hyperion DRM Tips & Tricks | Query Limitations

This is the first item in an on-going series of blog posts designed to help our readers get the most out of Oracle Hyperion DRM (Database Relationship Manager).

This post addresses a limitation in the way Oracle Hyperion DRM allows users to define queries. Specifically, Oracle Hyperion DRM allows you to structure queries using parentheses but does not allow you to put a NOT in front of criteria grouped in this way.

What if you were making a complex query and wanted to exclude nodes that meet two conditions? For instance you want to select all nodes that are below the top node, except leaf nodes if they are also linked in from another hierarchy. In Oracle Hyperion DRM terms what you are trying to achieve is:

  • Level Greater Than 1 And Not (Leaf Equal True And Linked Equal True)

You cannot code this as it stands in an Oracle Hyperion DRM query. However, the following rule of logic can help:

  • not-(A and B)     is logically equivalent to     (not-A or not-B)

Our example now becomes:

  • Level Greater Than 1 And (Leaf Equal False Or Linked Equal False)

Which as the screenshot below shows can be implemented in Oracle Hyperion DRM in the following way:

130417_Seismi_DRM Tips & TricksIf you have anything you want to add please do post a comment. Until next time….

 

Tagged , , ,

The Value of Managing Your Data Effectively

We recently came across a very good presentation that described concisely, in business terms, why a strategic approach to data and masterdata management is a must for any serious organisation.

I highly recommend that anyone who is struggling to understand the benefits of these critical areas, or needs a reminder, to take a few minutes out of their day to view the slides below:
 

 
Do you agree or are there other areas we all should also be considering….?

Tagged , , ,

Oracle Hyperion DRM technical issue | Application Restart Failure

We’re back blogging again!

Firstly, please accept our apologies for the lack of submissions over the last few months. It has been a busy time for Seismi. We have had major implementations underway with a number of our clients that has distracted us from this blog! It is only now that we have time to draw breath.

I thought that it would be useful to report back an issue that we recently experienced with Oracle Hyperion Database Relationship Manager (DRM) in a client’s development environment. Hopefully this blog will achieve two objectives.

• help you understand this particular issue; and
• explain the process we went through to diagnose and fix the issue.

The issue

During our development cycle we needed to restart our DRM server. The server stopped fine, but refused to start again. A review of the Windows event viewer showed us that two errors had been produced. The first related to a validation incorrectly referencing a global property and the second, showed the DRM application was shutting down. Our immediate thought was that the two must be related and so we raised an service request with Oracle. Oracle gave us a fix to allow us to change the property used in the validation to a global property. With much anticipation we ran the fix and then tried to bring up the application. Unfortunately, it still would not start. A further review of the Windows event log now showed a different error message.

System.ArgumentException: An item with the same key has already been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at Oracle.Drm.Engine.Core.VersionMgr.b__9a()
at Oracle.Drm.Engine.Core.VersionMgr.Write(Action func)
at Oracle.Drm.Engine.Core.VersionMgr.b__b6()
at Oracle.Drm.Engine.Core.VersionMgr.Write(Action func)
at Oracle.Drm.Engine.Core.Engine.Start()
at Oracle.Drm.Engine.Host.Program.Main(String[] args)

We notified Oracle that their fix had not resolved the issue. We also felt it was necessary to restore the DRM database from the last back up prior to the issue occurring (i.e. the day before). Disappointingly this restore did not resolve the issue, implying that the issue had been lying dormant for an unspecified period of time.

With very little information to go on we revisited the Windows event viewer and, starting from the first time we experienced the issue, we worked backwards through all the DRM messages to identify any unexpected entries. After a few hours of (mind-numbing!) analysis, we discovered the following entry dated three days prior to the eventual problem:

Oracle.DataAccess.Client.OracleException ORA-03114: not connected to ORACLE at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure) at Oracle.DataAccess.Client.OracleTransaction.Rollback()
at Oracle.Drm.DalFramework.DatabaseContext.Rollback()
at Oracle.Drm.DalFramework.DataAccessLayer.Rollback()
at Oracle.Drm.DalFramework.DataAccessLayer.ExecuteTransaction(Action codeBlock, Action afterCommit, Action afterRollback)
at Oracle.Drm.Engine.Core.VersionMgr.DeleteVersionFromDB(Int32 versionID)
at Oracle.Drm.Engine.Core.ReaderWriterLockSlimExtensions.WriteLock(ReaderWriterLockSlim rwLock, Action action)
at Oracle.Drm.Engine.Core.VersionMgr.DeleteVersion(String versionAbbrev, Action`1 updateProgress, Action fireEvent)
at Oracle.Drm.Engine.Core.ReaderWriterLockSlimExtensions.ReadLock(ReaderWriterLockSlim rwLock, Action action)

Please note that this entry was not logged as an “Error”, but as a “Warning”. Looking at these two messages side-by-side we saw that both errors mentioned the “Oracle.Drm.Engine.Core.VersionMgr”. The “Warning” suggested a loss of connectivity during the delete of a DRM version (“Oracle.Drm.Engine.Core.VersionMgr.DeleteVersionFromDB”) and the error at start-up suggested some form of duplication with the versions (“System.ArgumentException: An item with the same key has already been added.”). At this point we decided to connect directly to the DRM database to have a look at the version table. When we queried the table we saw two versions with identical names, aside from case. One was called “LIVE” and the other “Live”. This seemed unusual and so we used a different DRM server to try and replicate the issue. The DRM interface prohibited it.

We suspected that if we changed the name of one of the versions, the duplication issue would be resolved and the server would restart. With the upmost caution, and only as a last resort, we manually updated the RM_VERSION table to remove the duplicate names and restarted the server successfully. We are still in the process of trying to identify why the database allowed this issue to occur. The RM_VERSION table has a unique that should have prevented this and so we are starting to look at the schema settings. If we track anything down, we will publish an update to this blog.

Hopefully this has helped those of you trying to diagnose this particular issue. We also hope that it has given you some guidance on how to diagnose an issue with DRM. Remember that some issues only become apparent after an application restart and can be hidden by other errors. Always concentrate your analysis on the period between the last successful restart and the failure. Finally, remember that you need to review all log entries, not only those that are tagged as “Error”.

Until next time – hopefully next week….

Issue with remove level validations in Oracle Hyperion DRM

We recently encountered a small problem with the “remove validations” functionality in Oracle Hyperion DRM (Data Relationship Manager). As the screenshot below shows, we had set up a validation to prevent the deletion of certain nodes.

This is an important issue as most finance applications need to be assured that no nodes can be deleted to ensure no historical data is deleted. Disappointingly, when we assigned this validation to a hierarchy, it was ignored.

This problem affects release 11.1.2.1 of Oracle Hyperion DRM and is fixed in the latest release (11.1.2.2.300). Fortunately, for clients still on the earlier release, Oracle has provided a workaround. As the screenshot below shows this is simply to define the validation as both real time and batch:

Once assigned to a hierarchy as both a real time and batch validation, it successfully prevented nodes from being deleted.   This is only a small bug, but it could have had a wide impact.  We hope you have found this useful and we’ll be back next week!

 

Tagged , , ,

Financial Intelligence | think before you jump…...

What is financial intelligence, I hear you say? Well it goes by many names and comes in many shapes…

Example 1: You have a single intercompany account in your ledger, but you need to present this in your consolidation and/or reporting solution as either an asset or a liability, depending on whether the balance this month is a debit or credit.

Example 2: You have 20 sales tax (VAT) accounts in your ledger. You need to evaluate the sum of all the accounts and present the entire amount as either an asset or liability in your consolidation and/or reporting solution, depending on whether the cumulative balance is a debit or a credit.

In my experience, there are the following three approaches to solving this challenge:

  1. use the ledger to present the information in the required format. This can be done via an automated or manual month-end journal;
  2. use the ETL (Extract Transfer Load) process via a rule based mapping to transform the data; and
  3. load the data into the consolidation and reporting tools in the format of the ledger, and use scripts within these tools to copy this data into presentation accounts.

Which of these three options are right for you, depends on your business process. I thought it would be useful to share the following considerations when you are deciding which of the three options to use:

  • In my experience clients are often cautious about putting presentation journals in their ledger, because of the concern that these will not be visible or auditable in the consolidation and reporting solutions. There are effective solutions to this requirement via the ledger setup;
  • Rule based mapping solutions should be evaluated to confirm that they a) do not jeapodise the audit trail and b) will support solutions that allow you to drill from a consolidation or reporting tool back to your ledger. For example, logic groups in Oracle Financial Data Manager (FDM) can affect the audit trail and the ability to drill through;
  • If the mapping approach is selected, the mapping must be available to all the consolidation and reporting tools: say HFM (Oracle Hyperion Financial Management), Oracle Essbase and OBIEE (Oracle Business Intelligence Suite Enterprise Edition); and
  • The third option, using scripts to create the presentation data in the consolidation and reporting tool, has the obvious risk that if these multiple scripts fall out-of-alignment, the tools will not reconcile.

As a final comment, in my experience, regardless of which of the three approaches you decide to use, incorporating a masterdata governance tool can provide a robust as well as a flexible long–term solution…

Tagged , , , , ,

Positive or Negative | which way to turn?

In a recent meeting I was asked whether there is a standard approach to signage in reporting. I think we can all agree this is a big question.  “Reporting” covers a wide range of purposes and platforms.  Did the client mean management, statutory or transactional?  Were they looking at the consolidation tool, budgeting and forecasting or analytical?  The implications of the decision are wide ranging for the usability of your financial applications, and therefore it needs significant thought.

However, it is a common question. There is no standard! With my consulting hat on, the solution is clear: an organisation needs to adopt a single reporting standard which addresses its management, financial and transactional reporting purposes. What that standard is, from my selfish point of view, is immaterial! I have included an example of signage standards, but this is by no means the only approach.

In my past life as a management accountant, I spent many a late night during month-end trying to reconcile reports across Oracle Hyperion Essbase, HFM (Hyperion Financial Management and Oracle E-Business suite (EBS).  Were the numbers I was seeing correctly sign-flipped?  As each application was using its own approach to sign-flipping, how could I be sure that the rules had not fallen out of alignment?

Then I discovered masterdata governance. I found that by centralising all our financial masterdata (including our report definitions) into a single location we could create a single definition of our core financial constructs, including a single definition of the signage rules. These rules were then published for use in all our financial reporting applications, thereby ensuring that they were using the standard definition. Once implemented, I spent less time reconciling and more time analysing, a benefit that I think all my fellow accountants and the business would see as a “positive”! Smile

Until next week.

Tagged , , , , , ,

Cash Flow design | where is the elephant?

This week I have been working on a driven or calculated cash flow design. As is the common pattern in my experience, the requirement was initially expressed as a need for a consolidation tool, Oracle Hyperion Financial Management (HFM). When digging into the requirement, I asked whether this report definition needed to be shared with their relational reporting tool, OBIEE (Oracle Business Intelligence Suite Enterprise Edition) looking at Oracle E-business Suite (EBS) and their analytical reporting tool, Essbase? Would the cash flow report not be a valuable operational and analytical tool, rather than just a retrospective month-end report? Everyone agreed it would be, but this is when I noticed the elephant in the room. Everyone agreed that the cash flow could be calculated, but had assumed that the ledger did not have sufficient detail to populate the model.

Don’t get me wrong, I have yet to encounter a client that can calculate a full cash flow without some manual analysis, however this is the 5%. The other 95% is usually available in the ledger. I think what deters us, is that we are used to mapping to HFM at an account level only. The information that drives cash flow is often only available at sub-ledger and journal type. Using a masterdata management tool allows you to easily map all kinds of information, including sub-ledgers and journal types. If in doubt about the source of data, start by analysing the support for your cash flow journals or calculation …then get ready to look for elephants!

Tagged , , , ,

FTSE 100 Global Financial Services Client, Seismi & Oracle DRM

Some more good news to share!

We have been selected by a FTSE 100 global financial services client to implement Oracle Hyperion DRM (Data Relationship Manager) as the single repository to maintain all financial masterdata. Oracle Hyperion DRM will be responsible for publishing masterdata definitions and mappings to a wide range of applications, including Oracle Hyperion Essbase, HFM (Hyperion Financial Management), FDM (Financial Data Quality Management) and Oracle ERPi (Enterprise Resource Planning Integrator).

Seismi are responsible for delivering the Oracle Hyperion DRM solution, alongside an Oracle Hyperion Essbase reporting environment, which will be built using Oracle Hyperion EPMA (Enterprise Performance Management Architect) and Oracle ERPi.  As always, Oracle Hyperion DRM will provide them with a comprehensive governance solution enabling efficient maintenance of all their core financial masterdata, whilst Essbase will provide an incredibly powerful analytical tool to transform their month-end financial reporting requirements.

The project has already started we look forward to sharing more details and a case study in due course..

Off for another celebration Smile!

Tagged , , , , , ,

Reporting | Quicker is Better?

This week one of the team’s priorities has been working on defining the requirements for an integrated budgeting, reporting and consolidation solution. The key priority in this workstream is the importance of breaking down reporting requirements into distinct use cases…

We commonly find that there are two main use cases for reporting. The first use case is month-end reporting or journal support reporting. You are at working day one, posting your accruals: you need to have immediate visibility of the journal you have just posted, otherwise you risk duplicating the journal or wasting time investigating. This means you need real time reporting and the ability to drill from balances to transactions. Also, if your ledger and consolidation structures are different, you need your ledger data mapped to your consolidation tool format, to avoid an iterative loop of posting journals, loading, posting more journals….

The second use case is what we call analytical reporting: preparing the management reporting packs, writing up commentary, investigating discrepancies to budget or forecast, as well as add-hoc reporting. Here you need a far more flexible view of data. You also need a greater range of data: metrics, often combined with financial data to create key performance indicators, budget and forecast data. In addition there is often a difference in the timing of the data: normally this data needs to be synchronised with the data published in the consolidation tool for financial reporting. Coming back to the topic of the blog, for this reporting use case, quicker or more frequent data refreshes are not necessarily better!

Do these contrasting requirements ring true to your experience? Is so, the key point to take away from this blog is that different technology might be appropriate to address your distinct use cases. For example, in our experience, Oracle OBIEE or Oracle Essbase XOLAP are excellent online reporting tools for month-end; and a classical Oracle Essbase configuration delivers excellent cross-dimensional capability for analytical reporting.

If reporting is an area you are focusing on at the moment, I highly recommend putting the following on your pre or post holiday reading list:

If you would rather discuss it in more detail with a member of our team then do get in touch.

Tagged , , ,