Chapter nine, other blue prism capabilities. In this chapter, we'll give an overview of the other blue prism capabilities, and we'll discuss the supplementary features as well. Overview up to chapter eight, we have discussed all the basic capabilities blue prism provides to create a software robot. They have successfully discussed the ways to interact with the external applications, identify its UI elements, perform operations, handle errors efficiently, and manage severe workload by putting multiple bots to work. Alongside these capabilities. There are additional features incorporated within this blue prism application to make it reliable and interactive for a system user or RPA.
Developer. These capabilities come handy at a time when you're looking for more efficient ways to implement business logic. supplementary features the first feature we're going to talk about is stopping a running process. In blue prism, we have two means to stop a running process. One is the immediate stop where the process will be stopped at the very instant the stop command is provided. And the other is where the program looks for a voluntary stock statement within the process flow diagram and stops the program execution at that particular stage.
For the former option, we have two separate ways to do. The first is we go to the control room, and we choose the process and within the environment. We have those processes which will be running instead of the status is completed. We select that particular process and we choose this top selection method. The option here The second way is by right clicking on that running process, and we simply choose immediate stop. Both of these ways are gonna stop or halt the process immediately and we can Like we'll have to run the program again.
The way the latter option to stop the process at some stage within the program like that voluntary statement that we have given within the progress within the process flow diagram to stop the process at that particular stage is by choosing this request stop. Both of these options would be enabled if the process would have been running, right these are completed process we are showing right now. And the stop stage statement that we're talking about can be configured within the process flow diagram somewhat like this. Let's open up process flow diagram let's say in here, right we use a decision stage and we check if the process has been asked to request a stop. Something like this name should be good and in the predefined functions We go to the environment. And we have a function called stop requested.
Simply paste it and we have the function right here, we can validate the function as well hit OK. And we can connect it anywhere across the program wherever we want the process to be stopped, in case we provide the voluntary stop command to it that you know, we want to stop the program. So just whichever is like the safe stop that we have configured, right. So that's how we have different ways to stop the program. Next, we're going to talk about choice stage. So choice dates can also be called as multi decision stage. It looks quite like the decision stage, except for the fact that we can provide multiple decision statements in it.
Right correspondingly, the direction of the process flow is chosen based on the turning up of the first valid condition provided within this stage. Let's take an action sample. Let's say we have a choice stage in here. And we open it and let's say we are working on the marks, right? Whatever the marks are chosen for the like, let's say we have to assign some grade to the marks of the students of class. So we add these conditions where we can provide any name to the condition A plus, let's say, right, and the choice criteria is I'm just making an example or probably we can use a like this.
If the student marks are greater than 8085. Something right? We can say the students would get a b grade if the marks are greater than 75. Don't get a C if it is greater than 60 and you'll simply get an F if are probably for spring D So that student marks are greater than 40. But otherwise it's going to be a fail. So we assign three different types of grades.
And we hit OK. And if you'll see, within the choice stage and this otherwise stage, we got four anchor points. And based on the first valid condition that it's going to see, see, it's the conditions will be validated based on the sequence that we have provided in here. For us this will it will check whether the students marks 400 A plus category. If it does, it won't even check the other conditions it will directly take this route. If the marks satisfied the choice name is B, then it will take this route. Similarly for C and D, and if none of these conditions satisfied, we'll take the otherwise route.
Right which is going to be we also call it as the default route, which is like in case none of these workout. So that's how we can use multiple stages and it's better to use Choice stage instead of using, you know, like going nested decision statements, because that way you have a lot of complexity added to the program when you can actually solve it in a much efficient and, and in a better fashion. Right. So that's how we use the choice stage, we can just show, you know, like, you can add any computations for this particular row. And if I click the, if I attach the link, you'll see that it shows a plus that means if a plus condition satisfies, this is the route that will be taken and we can come like subsequently put any number of stages in here, right? Similarly for B as well, I can just show it one more.
And you can play around with these characters in here. And that's it's going to show the choice stage name as well. Right? So that's how the multiple conditions validities checked and you Provide the direction to the process flow accordingly. Next, we're going to talk about collection operations to a very high level. So, the use collections throughout in this blue prism hands on exercises and in the sample use cases that we have taken throughout this tutorial.
Mostly, we have use collections when a defined set of data and structure is provided. However, that may not always be the case, there is a possibility that the business operations we need to perform require runtime operations such as adding or removal of rows, counting the number of rows and columns within the you know within the data item, then copying the rows and pasting the values into some or another collection etc, etc. For all these functionalities, we have predefined actions provided within the internal collections business object, you can see a dro capito counting the columns and removing the rows as well. So this becomes pretty easy for us to play around with the collections data. And these can be leveraged in us into our process, which literally can save a lot of time to perform these simple operations right from the scratch. Right?
So I would recommend when you're dealing with the collections, which is going to be pretty often in blue prism programs, use the internal business object which is provided and play around with the structure of the of the table within the collection or with the data as well. Right. Okay. Next is event logs. during processing of stages, logs of events, such as status changes, data operations, system, our environment, information, etc, etc. are maintained by the blue prism application.
These logs can be made visible by enabling the stage logging Option provided within these stages. So mostly all stages have this feature available. Let's see, if we start off with any stage here, we have the stage login option parameter or the capability here which is marked as enabled. enabled will log all events, while errors is gonna only log the events in case any error is encountered during the process execution. It can be observed that usually all stages within process to do have stage logging enabled within the process flow diagram. While let's look at the business objects as well, because we will be dealing with these stages within the business objects too.
So, in here, if you see, by default, they are usually disabled, but we can always say enable them. And they are precisely holding the same definition as the stage logging feature provides for the process flow diagrams. Okay, and these logs once they have been like once the process is executed to view these logs we have let's go here in the system, this administrator settings. And in here, we have different logs that process logs, object logs, you can start linking see all the logs that have been enabled because most all the objects that we have dealt, we're having disabled logs so nothing is shown in here in the object logs. But in the process logs, you can see all the ones that we have worked upon or even before this tutorial was made. So to view these, we can check these out and we can view the selected log as well that you know, this is how The log look like.
Right? Okay. Next we're going to talk about grouping. So within the process studio, right, we have objects and we have the process flow diagrams, and we can group them. So, two groups group, we simply create a group, and it's gonna be a folder like these ones that I have created. And you create the name as new group.
And simply, we drag and drop it into the new group. Right and it automatically forms this hierarchy. It's not going to make a difference to the capability of process flow or to a business object when it is being grouped under a certain name. Right. And this overall provides us a very good capability to manage the different process flows and the business objects we will be dealing with or a program is dealing with and provides a you know, a feel of the complete working solution. So that way you can manage different projects under different names and play around with the tool itself.
We can also check the references of a process makes to another process or to a business object by selecting that particular process. And we collect this this hamburger icon, we see the find references. So new sample sequence Q is not making any references to anywhere, right, so that means this is all set, but if you want to check the references, simply click in here and find the references and you'll be able to see any references. This is gonna make this particular process. The last one, the last capability that we're going to talk about is exporting the process flow. So, a process or a business object can be migrated to another system by exporting it as an XML.
Right And for this, we simply go to the File and we export it. We export the process or the object which Every selected and that whichever you want like process or the business object, you select the process and you export it once you export it will be shown as an XML file it will be available within your local system locally and you can simply import it which we have done in case of the business objects, right the internal business objects that you may not have right away when you were opening the application and trying to use the object. So, same case, we can just import them those XML files browse for it and the capabilities provided within that business object could be for any external application can be used in any other system whatsoever. Right. But the small limitation is that when you are exporting a process or an object, right, that only that particular process will be will be exported.
Right. And let's say you are working with the exception handling, right and you want to export this process, so this process will be there, but it is referencing to, let's say, several business objects or to several pages and all that stuff, then it won't have the launcher application, if the target system where you will be running this program again, if that already has the business objects and everything available, then it's alright, the process is gonna work. But if it is not, then it might be a problem because you need to have all the dependencies of a process also extracted. And like when you're importing it, you want all those capabilities to be inherited from the from the imported file, right? Because we might be dealing with lots and lots of dependencies within the process flow. So for that, we simply export the whole release.
So if you see instead of the process, if we choose the new release option, we get all the business objects, process flows, all the different. Any process that this that the current process that we're dealing with is going to have dependency on those will be extracted to, and then we can simply import it using the same import functionality at the destination system. Right? Then we'll get all the business objects and process diagrams created automatically. So, once the solution is ready, usually what happens is in real time projects, we have like, you know, we have dev environment, we have test environment and then we have like the production environment right. So, before moving to the production, we usually go through the development and testing rigorous you know activities, we test all the functionalities, we develop all the functionalities, and these functionalities as we have discussed before, need to be in separate layers of the business process, right.
Like the interactions with the applications, external applications in the object level, and any capabilities, any features any operations that need to be performed. We either put it in the business object or in the process flow diagram. And all these references that we make, we want to have them wrapped in a in a in a you know, in a complete package. So this BP release, blue prism release is what provides this packaging feature which can be leveraged in the destination site towards that site. Okay, so that's how we are going to export and import the processes once we will be dealing in the real time projects. All right.