Solved BluePrism - Invalid Object, Missing Action

maera

New Member
I just finished doing the 3 objects (there are no errors left) and I published it as an action so that I can use it in my Process. It shows up in the action like this:
1526983050020.png

But if I click "okay" and then view its properties again. This is how it looks like:
1526983020398.png
1526982392802.png
1526982446182.png

^Those happen to all of the 3 objects when I use it as action.
I can't seem to understand because there are no errors in my objects and it is also published.
 
Last edited:

VJR

Well-Known Member
Hi Louisa,

This usually occurs when the objects may have been renamed during its creation or later on or may have moved by creating folders/sub folders etc. Once again check if the action is correct under the Object (with location, spelling etc.). Usually clicking the Reset, Refresh button at the top on the Object and Process Studio resolves the issue. But if not then restarting Blue Prism fixes the issue.
 

santosh dhere

New Member
Hi Louisa

Yes, VJR is right. This show the missing issue if object may have renamed or deleted from respective object. But you can browse & can map right object back again. This will solve the issue.
 

maera

New Member
Hi Louisa

Yes, VJR is right. This show the missing issue if object may have renamed or deleted from respective object. But you can browse & can map right object back again. This will solve the issue.
What I did is to export the object and then import it again as an object. It worked. :) Thank you anyway!
 

maera

New Member
Hi Louisa,

This usually occurs when the objects may have been renamed during its creation or later on or may have moved by creating folders/sub folders etc. Once again check if the action is correct under the Object (with location, spelling etc.). Usually clicking the Reset, Refresh button at the top on the Object and Process Studio resolves the issue. But if not then restarting Blue Prism fixes the issue.
What I did is to export the object and then import it again as an object. It worked. :) Thank you anyway!
 

chrifmarwen

New Member
This is an issue with the Software no ?
I had this twice, but now i'm not able to fix it either after a export / import like Louisa had said.
That's weird !
 

jcrowell1

New Member
Has anyone had any success with this issue yet? I've tried export/importing, renaming, regrouping and everything else I can think of but to no avail...
 

MrSneezy3D

New Member
This error occured to me when my object had the exact same name as the containing folder. I tried renaming the object to something different and that solved the problem.
 

quicknight

New Member
This instance happened to me when we deployed on an UAT environment, our deployed BP release is working properly, then when our tester is testing it, the problem arises. We tried fixing it by re-importing our release but still puzzled on why it happened. When no code change was done on the UAT environment.

I tried investigating this matter and I come up with this. Please take note, that I did look into any BluePrism documentation or website, for I think there is none, or so I assumed since I wasn't able to find anything. So I recreated the scenario that's when I come up with this.

Hope this article will help other BluePrism developers in the future.


Based on my investigation I can conclude that, Blue Prism reference objects and processes by its process id. Since objects and processes are saved within a database, the database is using a primary key to reference those objects and process that you see on the Studio.

So when you export / release and object , it creates an xml file that has that primary key, which you will see on the xml as the preferredid.
View attachment 1552526570399.png

However, when you call an object via ACTION:
View attachment 1552526669472.png

It uses the NAME of the object. Not the preferred ID.

So, when you import the stock VBOs of BluePrism, it copies and build that xml file on the database and it uses the preferredid, as the primary key. So when you import and just renamed the VBO, it uses the same preferredid.

How does this affect your processes and objects?

Suppose you create your own Process and uses the MS Excel VBO by importing and renaming it. You uses the Actions inside the VBO, and eventually you create your own ACTIONS or modify existing actions. (Remember you imported and rename)

Now, let us say another developer does the same thing of creating a new process and uses the same MS Excel VBO by importing and renaming it, and also modified existing objects or creates a new action based on the developer needs.

When you created a release, it builds and xml file, that has your object information, together with your changes and modifications. BluePrism uses the preferredid stored on its database as the preferredid for that xml file.

When you import that release on a BluePrism database instance (application server or local) it copies that information on that release which uses the preferredIDs again on that database instance.

If you can recall, or has observed it, the first time you import on a clean database, it doesn't ask you to resolve conflict. Right? because there are no stored information on the database.

You did a sanity check on your deployed release and everything works fine.

When the other developer imports his own release on the same database server you deployed your release to, He will get this message:

View attachment 1552527739918.png

I' sure you are all familiar with this one. We usually would use Assign a New ID, if that is the case BluePrism creates a new ID for your object. So no issues, at this point, the other developer process are working and objects are all present. Because your objects have it's own ID and name.

Why did this appear? When the other developer has a different name? you have to remember, earlier we assumed that you just imported the stock VBO and renamed it and the other developer did it as well.

Both your objects have the same ID (stock vbo) but a different name. So Blue Prism, detects that there's already an existing id on the database, it doesn't check the name. So it will give you the option to OVERWRITE EXISTING ID or create a new one.

IF, the 2nd developer used OVERWRITE, it will reference the incoming OBJECT to that ID, now everything will be overwritten, the OBJECT NAME, including your modified and newly created actions which does not exist on the 2nd developers object.

2nd developer did a sanity check and everything is working for his project.

HOWEVER, when you tried to run yours, you now have a missing object!

View attachment 1552529751991.png

Why is that?

As I mentioned earlier, on Studio, basically what is on the database, it uses the ID (preferredid) of the object it. So if the 2nd developer unknowingly overwritten your object, (because of the same preferredid) your object actually is not there anymore, ACTION property will not find the NAME of the object it is referenced its action with.

So if re-imported your release to "fix" the missing object and now uses OVERWRITE, you now overwrite the 2nd developers object. (same id), but if you CREATED new ID, then you wont have a problem on that deployed machine.

But if you changed anything on local copy and deployed again, and used OVERWRITE, assuming it will overwrite YOUR object, it is actually overwriting the object with the same ID (which still uses the stock vbo id), not the same NAME, thus going back to the same problem.

HOW DO WE AVOID THIS? Keyword is SAVE AS!!!

When dealing with a new project, and you need an already existing VBO whether it is BluePrism stock VBOs or you own VBOs, use SAVE AS on your intended object and rename it using best practice guidelines.

View attachment 1552530453095.png

This would create a new ID and name for the object.

So when you deploy a release you wont have to worry about your object being overwritten.

I tried explaining it the best that I could. Hope this would help other developers in the future.

Happy Coding/Automating!
 

Neetu

New Member
I faced the same issue multiple times , i tried refreshing the object, reset , close and reopen again .
Close Blueprism .Nothing worked ........
But if you export the individual object and import it by overwriting(so that you can keep the previous version as well ) and renaming it again, it worked for me .
 

Pete_L

Active Member
I'm late to the party here, but let me add this: Open a Customer Support ticket with Blue Prism on this issue. It might be a known bug in the version you are using, but if not they will want to fix it for a future release. When this has happened to me, a Refresh usually works. If not, I Save>Close>reopen the object and that works. Definitely open a ticket!
 
Top