Hyperion & stuff

Stuff about Hyperion and stuff

Target application does not exist

EPMA 11.1.1.3

Recently, I accidentally removed an EPMA-managed Essbase application directly from EAS console.  This resulted in EPMA showing the “Target application does not exist” for the particular application.  I found out there are two (possibly more?) ways to fix this.

The easy (lucky) way is to recreate the Essbase application directly in EAS.  This is the second time this thing happen to me.  The first time around, I recreated the delete application as an empty application.  It didn’t work, so I had to take the hard way.  This time around, I had a backup that I can restore in EAS.  Maybe EPMA had to make sure that the structure is there, so empty application didn’t work.  Once restored, I managed to remove the application from EPMA.

The hard way is to remove the application from the SQL back-end (avoid).  Mind you that this way is not supported by our good, hardworking friends at Oracle support.  Here’s the SQL (tested this once and seem to work just fine).  Use at your own risk !!!
delete from ds_property_application where I_APPLICATION_ID=(select distinct I_APPLICATION_ID from ds_application where c_application_name = ‘APP_NAME’)
select count(*) from ds_property_dimension where I_APPLICATION_ID=(select distinct I_APPLICATION_ID from ds_application where c_application_name = ‘APP_NAME’)
delete from ds_property_dimension where I_APPLICATION_ID=(select distinct I_APPLICATION_ID from ds_application where c_application_name = ‘APP_NAME’)
delete from ds_property_dimension_ref where I_APPLICATION_ID=(select distinct I_APPLICATION_ID from ds_application where c_application_name = ‘APP_NAME’)
delete from DS_PROPERTY_RELATIONSHIP where I_APPLICATION_ID=(select distinct I_APPLICATION_ID from ds_application where c_application_name = ‘APP_NAME’)
delete from ds_property_application_array where I_APPLICATION_ID=(select distinct I_APPLICATION_ID from ds_application where c_application_name = ‘APP_NAME’)
delete from ds_property_application_ref where I_APPLICATION_ID=(select distinct I_APPLICATION_ID from ds_application where c_application_name = ‘APP_NAME’)
delete from ds_application where I_APPLICATION_ID=(select distinct I_APPLICATION_ID from ds_application where c_application_name = ‘APP_NAME’)
delete from ds_view where I_View_ID=(select distinct I_view_id from ds_application where c_application_name = ‘APP_NAME’)
delete from ds_library where I_library_ID in (select distinct I_library_id from ds_application where c_application_name = ‘APP_NAME’)
delete from or_object where c_object_ID=’1_’ || (select distinct I_APPLICATION_ID from ds_application where c_application_name =
‘APP_NAME’)

Typically, I would do a select before deleting anything to make sure everything is OK.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: