Thursday, December 14, 2023

Oracle Idea Lab really does work!!


I wanted to share some recent idea lab posts I had made in the Oracle Cloud Customer connect ideas lab for EDM and show that getting these ideas into the forum, voted on and community comments provided really does help get new features and functionality for us to use.

 

First and foremost, I want to put out a big THANKS to the EDM product management and development teams for allowing us to provide this important input and even more important fact that you are listening and delivering.

 

In the recent test release of EDM (23.12) these ideas I had submitted came to life (note there are many others that the community submitted that also come to life).

 

·      Need to be able to evaluate (test) an expression in the Expression Build

o   Description

§  We need the ability to test out the results of an expression while still in the expression builder.

o   Use Case and Business Need

§  The process of writing an expression (formula) in EDM can be very complex and iterative. In the current user experience, it requires defining the expression, saving it, closing the object the expression is in (validation, property, NT converter, etc) then going to a view/viewpoint and trying it out. 

§  This cycle of setting up the expression, saving and testing it out can recycle as many as 2 dozen times (or more) before the expression is setup correctly.

§  If we had the ability to select a view/viewpoint and node to evaluate the expression against to see the result while still in the Expression Builder, this would make the process extremely efficient and ensure the expression is correct before actually saving it into EDM. 

 

 

·      Add Lineage to Transaction Audit report

o   Description

§  We would like to have the request lineage information available for download with the Transaction and Workflow audit reports.

o   Use Case and Business Need

§  Having the lineage in the downloads would allow the report to show how each of the transactions are associated via subscription. This is needed to be able to visualize the metadata movement within the application in EDM prior to publishing to the target ERP and EPM applications. 

 

·      Need to have audit filter that will include related requests

o   Description

§  Need to have audit filter that will include related requests.

o   Use Case and Business Need

§  As part of normal business we will filter specific requests in the audit using the given filters EDM has. Once we have the set of requests filtered down, we also need to see any request that is related to what has been filtered. 

§  Two use cases:

·      To see the specific requests that generated the items we have filtered to (up stream requests)

·      To see the specific requests that generated from the requests we have filtered (down stream requests)

 

 

·      Need to be able to run selected validation on a given viewpoint

o   Description

§  Need to be able to run a selected set of assigned validations on a given viewpoint. 

o   Use Case and Business Need

§  When running validations on a viewpoint we have different data stewards that are responsible for clearing different validations. We need a method to run a single or group of validations associated to a viewpoint so the results only show items for the selected validation(s) and not all.

 

·      Hide Tiles not used by 'Users'

o   Description

§  There are several tiles exposed to users that could be hidden when their access does not allow them to manage the related objects. 

o   Use Case and Business Need

§  For Non-Owner/Non-Data Manager users, the Applications, Node Types, Hierarchy Sets, Node Sets, Properties, Lookup Sets & Connections tiles should not be exposed.

§  For Data Managers the same applies with the exception of adding back the Applications tile.

 

Saturday, December 2, 2023

 EDM helpful hint – Data Storage and Implied Share identification for Universal Application in EDM.

How to create a dynamic Data Storage property in a Universal Application type in EDM and identify when a node is implied as a share since it has an ancestor that is shared above it in the hierarchy.

 

One of the challenges I had recently was to identify implied shared nodes in a hierarchy where the application type in EDM was “Universal”.  Since the out of the box logic for Data Storage does not come with or supported for the universal application, my solution required me to create some derived logic mimicking the logic Oracle has provided but not exposed on the Planning and FCC application types.

 

Steps involved:

1 – Add the PLN.Data Storage property to the node type on my universal application dimension. – This will be where we add the derived logic to mimic the OOB Planning and FCC logic.













2 – Create a new property called Custom.Display_DataStorage and add it to the node type on my universal application dimension – This is used to flag and display where a node is “implied” in the location of the hierarchy as an ancestor has been shared in the hierarchy and the particular node is just displayed in the UI but not actually part of the hierarchy (or export). 



Tuesday, May 9, 2023

Custom Navigation Flows for EDM... Just another unicorn... or maybe not.

"Why does EDM show all these things that show up on the home screen that we never access and don't know what they do?"


In the past couple months I have been asked the same question by a few clients. To be honest, I didn't even know what they were talking about to begin with. What extra "things"? Then it hit me, they were talking about the cards to take them to Node Types, Hierarchy Sets, Node Sets, etc.. I never thought of them as items that should be hidden... but I almost exclusively live in the world of an Administrator where I use these to build and configure EDM everyday.

My initial answer and thoughts were that they shouldn't see these being only a user in EDM. Quickly I could see that I was incorrect. When logging into EDM as a data steward these items were still openly displayed and accessible. What could I do with them? Well, not much. I could open and inspect all of the objects but I could not edit or configure them. And in some cases like expressions, I could not inspects and see them as I needed edit rights to get to the expressions. Again in my mind I asked.. What could I do with these? The answer that came I came up was... Nothing. I could not do anything with these, they gave me out of context information. If I was not able to edit or understand how to interpret or edit them, these did nothing for me.




Next logical thought was... How can I hide these from the data stewards so they don't have to see them and they can have a clear path to what is relevant in EDM to manage metadata from a data steward perspective. Again, came to a road block in my mind... "Are there no settings to hide these 'Admin' only objects?" ... Sadly EDM does not have any features as of yet to do this.

I reached out to others in the community and they all agreed, EDM shows these to all users and there was nothing that can be done within EDM to prevent it.


My next thought was there should be a method to hide these unnecessary admin items and only give the users a clear path to navigate. So, I went to the EDM ideas lab to see if someone has already suggested this type of feature in EDM. I did not find anything so I posted my idea and proceeded to wait to see what if any actions could be done to get this added to EDM.

Here is a link to my Idea Lab post if you want to provide some feedback to Oracle: Hide tiles not used by 'users'

As part of the feedback I got from the community on my above idea, I was introduced to an EPM feature by Nate Keller, a former co-worker of mine from about a decade ago. In Nate's comments he referred the the Navigation flows that can be setup with in an FCC or Planning EPM instance and that these flows could also be used to isolate a "Navigation" or workflow for EDM.

It took me a week or so to get access to a Planning EPM pod where I could test this out. 

After a brief overview on how navigation flows work in EPM ( I had never used or seen them before), I spent 30 minutes or so and I had a working EDM flow where only the cards needed for the EDM data steward were being displayed. 






While this is very promising, there are many, many questions I still have to make this truly usable for the data stewards.

Let me know your thoughts on this and if you have seen or used this feature for EDM.

SP



Friday, March 17, 2023

Template migrations have a big hole that most are not aware of...


On a current project I stumbled onto an issue that is causing a great amount of manual work. 

The issue at hand is that not all things migrate in EDM using Templates to migrate applications and dimensions from one EDM instance to another. 

This week while testing and documenting the migration process for a project I am working on, I found what I thought was a HUGE bug in the EDM migration. As I have many times in the past, I completed my code development, ran a small amount of unit testing and felt it was time to test the migration of my code against a current version of production. I had the client provide a snapshot LCM from production, so that I could simulate the migration process in another test instance outside of the instance I had been developing in. I did the typical steps of importing the snapshot into the test instance and exporting my "templates" from my development instance. Since the work involved was a full new EDM application (actually 2), I used the option of exporting the templates at the application level to ensure all objects I created were included.

Now that I had my simulated production target and my source templates I was ready to test out the migration. This should just be a simple import of the template and a quick look around to see that there were no unexpected results and all the objects appeared as they should on the target. I loaded the template into the preview option to see that EDM was reading the file correctly... All looked good.

Once I spent a few minutes looking at each of the items in the preview, it was time to run the import and see the results.

I was surprised that I received some warning messages on the import. Something I had not seen before. With the release of 23.03 EDM in test just a couple weeks ago, there was a new feature for compares that allowed you to define and save a compare definition. I had played some with this in my development application and even did a demo for the client on how they worked. I left several of the compare definitions in the application so the client had some samples to look at as they moved forward post production.

From Node and To Node will need to be updated.

It took me a second to realize why I was getting this warning message. Then it came to me, since I was loading this template for the first time, the target nodes would not be in the application yet as i had not imported data. I was ok with this warning thinking that if I load the data then come back and re-run the template import, the warning would go away and the missing top node information would migrate. So with that I took a note to do these steps later and moved on.

Then came the big head knocker... I started to navigate through the freshly imported applications to see that all of the objects appeared as they should. Thinking in my mind that since there was an issue with top nodes in the compare import but no other warnings for any place else top nodes were defined... I should look in common locations where top nodes would be defined to ensure they imported correctly. I presumed they would have since there were no other warnings on the import.

I got to the subscriptions thinking these are objects that use top node filters all the time and in these applications I had imported there were dozens of subscriptions with top node filters. 

Side note - I had opened an Ideas Lab post on subscription top node filter maintenance while I was developing these applications since there were so many top nodes that had to be defined and the UX in EDM was less than user friendly to do this setup.

Now that I am in the subscriptions and navigate to the filter tab... To my surprise, of of the top nodes I had painfully defined and tested are missing. I was in shock. I first thought what happened in my source app, why were these gone. I quickly logged into the source instance and found that the top nodes were all there as I had set them up... Huge relief.

Not sure what was going on, I thought I should reset the test target and try the import again. Maybe there was an error or warning that I didn't notice the first time. So, I re-imported the production snapshot into my test instance and went through the steps again to preview then import the template. Again, only the warning on the compares... nothing for the subscriptions.

First thing I thought... This is a big bug and I need to open an SR with Oracle ASAP. Not noticing this before when doing migrations, I thought this must be a bug with the 23.03 release. Shortly after opening the SR, I was contacted by Oracle support where they pointed me to the user guide, where it was clearly documented that subscription top nodes do not migrate with templates; as the top node information is considered "data" and the templates do not migrate data.

OK, that all makes sense... but does it?

First, for data we have a method to migrate. We can export the data from each dimension on the source and import it directly to the dimension on the target... But this will not do anything for the "data" in the top node section of subscriptions. 

So how do we get the top nodes into the target without redoing all the setup of the top nodes? Keep in mind from above that there is not a user friendly interface to do this setup in EDM.

Also, why did the import not give me a warning, like it had for the top nodes on the compares?

In doing a quick search in documentation on how I might be able to migrate this, I found nothing... with the exception of a recent post on the ideas lab that made me think I was not the only one with this issue.

CA_User has recently posted this idea: 

Ability to upload subscription from report generated by the source system


In this post he asked to have an enhancement to EDM to allow the importing of subscriptions based on the report that can be exported. Great idea... but again, this just left me with the gap in my migration process and a big hole to fill.

If you have experienced this issue or have thoughts / comments on the subject, please comment here or more importantly, comment and give thumbs up to these ideas on the Ideas Lab so Oracle gets the feedback it needs to fill in this hole ASAP.

EDM Ideas Lab - Related Cloud Customer Connect posts:


Back soon with more ... SP