cancel
Showing results for 
Search instead for 
Did you mean: 

Recover deleted object

manasab
Level 2
Is it possible to recover the object/process that has been deleted? Please help me through the steps to recover it ?
4 REPLIES 4

Hi Manasa,

If your objects or processes are just retired then you can easily retrieve them from the System Manager section by again bringing them back from the retired list otherwise you might have to follow the below procedure that was suggested in another similar forum post: Reference by @Walter Koller, @Vivek Goel and @John Carter

You can query the BPAAuditEvents table. This table usually consists of any last modifications that happen for any specific process/object.
You can find the below query as an example

SELECT MAX(eventid) FROM [BPAAuditEvents] where sNarrative like '%<Object_Name>%'
Note: Replace the <Object_Name> with the object that you want to recover.

Since, there is a limit over the SSMS query, for extracting the XML, you can used the data export wizard with No row headers and Unicode properties in SSMS with following query:
select newXML from BPAAuditEvents where eventid = <Event_ID>

You can rename the export file with .xml extension and import the same into Blue Prism without any other modification.

You can follow the below blog post as well for more details:

NOTE: Please do this if you are on DEV environment only otherwise in PROD environment refrain to such practices and it is better to either redeploy the solution using the .bprelease file if available or by importing the backup DB dump.
---------------------------------------------------------------------------------------------------------------------------------------
Hope this helps you out and if so, please mark the current thread as the 'Answer', so others can refer to the same for reference in future.
Regards,
Devneet Mohanty,
SS&C Blueprism Community MVP 2024,
Automation Architect,
Wonderbotz India Pvt. Ltd.

vigneshShankar
Level 4
Hi Manasa,

Yes, We can able to restore both objects/processes using an SQL database server.  Because All Processes and Objects in Blue Prism are stored in your SQL Server/SQL Express database.
Check this below table in SQL for your updated process list "BPAProcess"

Hi Manasa,

  • If you have simply retired your process/objects in System Manager, you can simply drag them back from Retried objects/processes or take the backup of the same from the BPAProcess table in your Blue Prism Database using SSMS.

  • However, you have achieved the components, then you won't be able to find the entries in the BPAProcess  table and you would need to access the XML from BPAuditEvents table. There you can search for the latest entry of the object name and using data export wizard, fetch the XML file as there is some 8k character limit if you generate a direct query. The wizard will help you to extract the whole XML extract at once with few settings like Unicode and No Row Headers setting if you apply.

  • If your organization is enforcing some purging policy for the audit event logs then you need to confirm if you have exceeded the allowed time, if yes then the only way to recover would be via some prior bprelease file you have exported it by any chance or if you have the backup dump of Database.

NOTE: In production environment the first two approaches should not be used and you should comply with the last suggested approach.
---------------------------------------------------------------------------------------------------------------------------------------
Hope this helps you out and if so, please mark the current thread as the 'Answer', so others can refer to the same for reference in future.
Regards,
Devneet Mohanty,
SS&C Blueprism Community MVP 2024,
Automation Architect,
Wonderbotz India Pvt. Ltd.

Hi Manasa,

If you have deleted the Process/Object then the instance won't be available in BPAProcess table but if you have retired the process/object then you will be able to recover the component XMl easily if I am not wrong either from BPAProcess table or by unretiring the component again from System Manager.

If you have deleted the component, then in order to retrieve it you would need to query the BPAAuditEvents table and check the event where you deleted the object. For example, I deleted a dummy object I created a while ago:

On running the SQL query on my SSMS : SELECT sNarrative,newXML FROM BPAAuditEvents

36746.png

You can see that the first record indicates that I created the object and the last record indicates that I deleted the object. I can simply copy the XML text of the first record and paste it in a dummy notepad file and again try to save it with <somename>.xml. Once saved, I can reimport this file again to create my object back.

In case your XML is having more than 8k characters, then you might need to use the data export wizard in SSMS and use some other options.

Also, please note the following considerations:

  • Such a method is only advised in a DEV environment. In PROD, do try to either use a backup of bprelease file or the backup of your PROD database if you have that. 
  • You also might need to see the purging policy if you are in an enterprise where the event logs get deleted in a stipulated period of time. If the logs are achieved then unfortunately there is no other way than using the backups of bprelease file or backkup of PROD database.
---------------------------------------------------------------------------------------------------------------------------------------
Hope this helps you out and if so, please mark the current thread as the 'Answer', so others can refer to the same for reference in future.
Regards,
Devneet Mohanty,
SS&C Blueprism Community MVP 2024,
Automation Architect,
Wonderbotz India Pvt. Ltd.