Chapter - 10 BluePrism Focus Points

22 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$99.99
List Price:  $139.99
You save:  $40
€95.03
List Price:  €133.05
You save:  €38.01
£79.15
List Price:  £110.82
You save:  £31.66
CA$139.67
List Price:  CA$195.55
You save:  CA$55.87
A$153.55
List Price:  A$214.98
You save:  A$61.42
S$134.39
List Price:  S$188.16
You save:  S$53.76
HK$778.22
List Price:  HK$1,089.54
You save:  HK$311.32
CHF 88.36
List Price:  CHF 123.71
You save:  CHF 35.34
NOK kr1,105.21
List Price:  NOK kr1,547.34
You save:  NOK kr442.12
DKK kr708.87
List Price:  DKK kr992.45
You save:  DKK kr283.57
NZ$170.45
List Price:  NZ$238.64
You save:  NZ$68.18
د.إ367.26
List Price:  د.إ514.18
You save:  د.إ146.92
৳11,959.01
List Price:  ৳16,743.10
You save:  ৳4,784.08
₹8,452.40
List Price:  ₹11,833.70
You save:  ₹3,381.29
RM446.45
List Price:  RM625.05
You save:  RM178.60
₦168,042.19
List Price:  ₦235,265.79
You save:  ₦67,223.60
₨27,819.88
List Price:  ₨38,948.94
You save:  ₨11,129.06
฿3,466.55
List Price:  ฿4,853.31
You save:  ฿1,386.76
₺3,454.83
List Price:  ₺4,836.90
You save:  ₺1,382.07
B$580.99
List Price:  B$813.41
You save:  B$232.42
R1,812.36
List Price:  R2,537.39
You save:  R725.02
Лв185.85
List Price:  Лв260.20
You save:  Лв74.35
₩140,106.88
List Price:  ₩196,155.24
You save:  ₩56,048.35
₪373.41
List Price:  ₪522.79
You save:  ₪149.38
₱5,905.80
List Price:  ₱8,268.36
You save:  ₱2,362.56
¥15,438.71
List Price:  ¥21,614.81
You save:  ¥6,176.10
MX$2,034.25
List Price:  MX$2,848.03
You save:  MX$813.78
QR364.93
List Price:  QR510.92
You save:  QR145.98
P1,367.12
List Price:  P1,914.02
You save:  P546.90
KSh12,923.70
List Price:  KSh18,093.70
You save:  KSh5,170
E£4,964.56
List Price:  E£6,950.58
You save:  E£1,986.02
ብር12,476.97
List Price:  ብር17,468.25
You save:  ብር4,991.28
Kz91,223.61
List Price:  Kz127,716.70
You save:  Kz36,493.09
CLP$97,372.26
List Price:  CLP$136,325.06
You save:  CLP$38,952.80
CN¥724.09
List Price:  CN¥1,013.76
You save:  CN¥289.66
RD$6,035.83
List Price:  RD$8,450.41
You save:  RD$2,414.57
DA13,357.64
List Price:  DA18,701.23
You save:  DA5,343.59
FJ$226.99
List Price:  FJ$317.80
You save:  FJ$90.80
Q772.55
List Price:  Q1,081.60
You save:  Q309.05
GY$20,937.04
List Price:  GY$29,312.70
You save:  GY$8,375.65
ISK kr13,828.61
List Price:  ISK kr19,360.61
You save:  ISK kr5,532
DH999.72
List Price:  DH1,399.66
You save:  DH399.93
L1,820.82
List Price:  L2,549.22
You save:  L728.40
ден5,848.08
List Price:  ден8,187.54
You save:  ден2,339.46
MOP$802.33
List Price:  MOP$1,123.29
You save:  MOP$320.96
N$1,815.10
List Price:  N$2,541.22
You save:  N$726.11
C$3,682.57
List Price:  C$5,155.75
You save:  C$1,473.17
रु13,507.81
List Price:  रु18,911.48
You save:  रु5,403.66
S/379.77
List Price:  S/531.69
You save:  S/151.92
K402.86
List Price:  K564.02
You save:  K161.16
SAR375.38
List Price:  SAR525.55
You save:  SAR150.16
ZK2,769.51
List Price:  ZK3,877.43
You save:  ZK1,107.91
L472.94
List Price:  L662.13
You save:  L189.19
Kč2,407.85
List Price:  Kč3,371.09
You save:  Kč963.24
Ft39,078.98
List Price:  Ft54,712.13
You save:  Ft15,633.15
SEK kr1,102.90
List Price:  SEK kr1,544.10
You save:  SEK kr441.20
ARS$100,263.16
List Price:  ARS$140,372.43
You save:  ARS$40,109.27
Bs693
List Price:  Bs970.23
You save:  Bs277.22
COP$441,313.30
List Price:  COP$617,856.28
You save:  COP$176,542.97
₡50,820.06
List Price:  ₡71,150.12
You save:  ₡20,330.05
L2,528.86
List Price:  L3,540.51
You save:  L1,011.64
₲783,733.33
List Price:  ₲1,097,258.01
You save:  ₲313,524.68
$U4,278.05
List Price:  $U5,989.44
You save:  $U1,711.39
zł413.19
List Price:  zł578.49
You save:  zł165.29
Already have an account? Log In

Transcript

Chapter 10 focus points of blue prism. In this chapter, we will be giving you a few points to remember while going through you know, the development of a process flow diagram and Business Objects etc. And we'll also talk about the recommended practices for voice to remember. While building software bots, we have discussed all major concepts in greater detail. However, there are a few extra concepts one must keep in mind at all times during the whole development process. Let's bring them up front so that you can make sure that the bots being built work reliably and efficiently.

First, is the data items initialization. data items are initialized by providing an initial value while configuring it as you have seen in multiple examples. Now, this value becomes the current value while the process execution starts, but may change depending on the computation. performed over it. By default, they are made available to the process or the business object locally. And upon unchecking the, you know, hide from other pages checkbox, we can make them available across all process or business object pages, and sector etc.

Let's see, we have the data item in here. And if you uncheck this, then this whole data item will become available to the whole business object itself. Same is the case with the process diagrams to alongside. We also have the option to reset the initial value of the data item every time the process page runs, right by enabling this option. So by this whatever would be the initial value provided here For the data item, if the page is re executed, this initial value would be taken rather than whatever the last current value was. Right.

So the page will re execute from the beginning itself, taking the data item initial value and compute further. Okay, next, we're going to talk about collection initialization. So collections are the only data items that may not be initialized with a data type. This means that these can be undefined and operations to allow data from external files, like spreadsheets or any other data table or anything can be performed, where the data type would be automatically assigned to the elements of each column. Right. So you should be always taken care of that part that you know, if you don't have a data type allotted.

That's all right for the collections, but only for the collections. Next, we're going to talk about environment. variables. So in my environment variables are like the data items that are exposed to all business objects and processes within an environment, which is like the system resource. And the to access these within the blue prism application. Right in here, we go to this, and we go to the processes.

And here we have the environment variables option, right. And we can create any variable using this add variable option here, we can remove any variable by using the Remove variable option. Right, the data item, you know will be converted to a drop down menu. We'll see that let's say this is the stopping time right? And we can simply give the same name as the environment variable settings we have given. So let's let's take this example.

We have an item here right and in here, we choose the environment option. So, we can choose the stopping time and that way we get that variable and this variable is accessible across the whole system resource. So, any data item can be used if it has been provided, if it has been configured in the environment variables option within the system manager of the blue prism, then we can use that stopping time variable across across any pages within the below or at the process level. All right, next topic is session variables. So, session variables are those variables which are available to the particular running instance of a process. Once the running session ends, the variable is no longer available to the process.

They don't need explicit configuration in System Manager right like we did it in the environment variables. We simply go here we provide we take this out We choose the session variable to provide any date, any name to it any time any type to it, the initial value and everything and they will be used only for the current for the instance of the process which will be running. Right. So pretty easy to use and only available for the particular session. Next, Next topic we're going to talk about is guessing. So, forecasting, what we're going to do is let's take down this stick out this okay.

So okay, in the casting option, it is the process of implicit conversion of one data type into another. It is an automatically within the software application itself. A quick example would be, let's say we have data item Right, which is a numeric type and we provide the initial value as 100. Right. And that's the let's take a process flow diagram itself this is why we mess up with a program when we already have it in here running good program right. So in here, let's use the start process here and then initial value okay providing the initial value in double quotes right.

Still it is shown as hundred number with the initial value of 100. So, that means even if we have tried to provide it as a text, implicitly, within the software program itself, the program has been converted the program the application has converted this data type into numeric type because that's what the data type we have given. And we can perform the computations in the normal fashion, and they will execute. All right, next we're going to talk about code stage. So this is within the business objects. And it allows the developer to incorporate Microsoft dotnet code logic into the program.

This is usually used when you know you are trying to create capabilities that are not generally provided within the blue prism predefined functions. It's really very sort of difficult, but you have to provide the actual code. I can show a quick example which we have used in which you have directly used but we haven't created the codes as such. Let's say we have the MS Excel VBA, right? We have used a lot of codes, like without even knowing we've used like, like Jessica Stage right. And in here, it's actually performing this code, it's actually executing this code to delete the blank rows within the internal MS Excel VBA.

Right. So, to use this stage within our program, we need to have a pretty thorough knowledge of of the software programming. Okay, next, we are going to talk about RUN mode. There are several runtime modes supported for execution of business objects within the blue prism. To configure this, we need to view the properties of the business object. So we go to the initialized page, we choose the new business object or whatever the business object name is.

And this is the rectangle box, right? We call it the information stage. So we go to the information stage, we choose Properties. And in here under the information tab, we have these different three three different run modes. So the first mode is the foreground mode. This makes sure that the execution performs as a foreground process, which means visible execution on the screen.

Only one foreground process can run at a given instant of time, you cannot have two foreground processes, right, because the actual movement of the cursor, the keyboard drivers and all that will be taking place, you'll be able to see the actual input and the output methods that are going on. So, this is how the Run Mode is chosen for the foreground operations. Next one is the background operations. And this enables the business object to be executed as a background operation. Right. And the third one is the exclusive.

This option makes sure that the business object is executed exclusively, with no other business object being executed at that particular moment. Right. It's going to be just for that particular view, only the execution would be there and the system resources would be used only for, for execution of that particular business object. Alright. Next, we're going to talk about dynamic attributes within the application modeler. So, there are ways in which the attributes corresponding to a UI element within an external application can be modified to enable them to identify the relevant element.

There are several options provided within the column, like match type, I'll show you them right here, where which can help you set the dynamic attributes. Like if you want to set the dynamic attributes. Let's take an example here. Right? Let's say the window text could be anything, right? So you choose the word dynamic here.

And it's gonna be something different for for each time, right? You can use a wild card. That means anything could be put in here, which The bot will be using this attribute the window text to identify the particular UI element. Right, it could have been a wild card, it could be a less than greater than sign, let's say if the width is equal, right. And if you want to select the weight, and you're sure that it's not going to be equal to 129, for sure, then you can use not equal sign if it is gonna be less than 129, you can use that corresponding match type element. And if it's going to be dynamic, you can choose dynamic as well.

So this way to, to create a reliable identification of UI elements process, we change we can change these attributes accordingly. Right. But this requires a pretty good knowledge of how you'll be you know, which are parameters which are attributes which are traits characteristics you want to use to identify the UI elements of a target application. You can Accordingly, change your attributes. And it's not always going to be equal, although that's the one that is chosen by default. But if you click here, you will be able to see that you know, this is not going to be equal to false, right?

That means it is always going to be equal to true, the active has to be true, something like that, or actual active has to be false. So, these are the different options that you can choose and perform some numeric comparisons. We have seen an example, right, like not equal to equal to all those things should be taken into consideration. Next, we're going to talk about global mouse clicks and global send keys. So, within the navigation stage, let's take one into example here. This one, right, we have the option to send global clicks and keys to specific UI element of an application, right, like global send keys, global key, and all this stuff.

These are usual application operations. With the limitation that they work only as foreground processes. Thus, the target application where these operations need to be performed must be active if you are going to use the global send keys or any global operation. Right. Okay, next, we are going to talk about credentials. So for any application, data integrity plays a crucial role.

We cannot provide login user IDs and passwords catering to specific users into an RPO process as usual data items like in here, you know, this is like insensitive data. So it's okay to have the workbook name or any set information across the whole process flow its pages or at the bureau level. But for the credentials, we have a separate internal business object which is going to be split Typically dealing with the credentials, so it's better to use them and try them. And if it is not working, you're marked as invalid. And there are a lot of other options, get the property, get the credential, set the credentials and all this stuff. I'm sure if you'll give it a shot, you know how to use a business object.

So try to use them and see bear with them interact the data between the Business Objects between subsequent pages and see if you're able to use them or not. Okay. Next, we're going to talk about application types right. We also discussed this before that when we selected the application modeler initially, then this is how we got there, we have four different application types. And these application types, like depends on the type of Excel application we will be interacting with within our business object. So To quickly go through it again the mainframe application is going to be interacting with the mainframe also called the green screen systems interaction is done by imposing some rectangular mesh, a grid like structure will be there on top of the application, where each rectangle will represent one character space on the screen.

This type of automation requires extra effort and meticulous identification of the application area where the operation needs to be performed. So you'll have like a command prompt like screen for the mainframe applications. And what blue prism will do is it will impose a grid on top of it and that grid will be like small table like rows and columns with small rectangular boxes. And you choose those boxes, right in the mainframe application and based on the rectangle box that you chose, the area where the input or the output operation needs to be performed, will be chosen. So that will act as the UI element where the operations will be performed. Right.

This is a really tough exercise and would need a mainframe application access as well. So if you have one, feel free to try it out, I'm sure it's going to be a great learning experience. Right. The next one we're going to talk about is a Java based application. Where as the name itself suggests, includes the capability to interact with Java based applications. The attributes need to be checked for each element and possibly use dynamic attribute values to increase the reliability as we were discussing just now.

Then, last we're going to talk about is the browser based application. This capability is pretty similar to Windows and Java based application automations. The only difference is that this application type caters to web browser based applications, right, the attributes here might look a little different because they can be modified by using numerical comparisons or dynamic attributes or better performance, like same as the other two, but on and all the other three, because there'll be the running locally on the system, or even with the virtual applications, right this is going to be they're going to be pretty similar in terms of their functionalities, their capabilities and the automation process in general. The next topic we're going to talk about is surface automation. So surface automation is the process of automating applications based on the image processing and OCR capabilities. OCR stands for optical character recognition.

So we will be usually using surface automation as the last resort. When the RP application is unable to interact with the UI elements directly. Right within the application modeler you can always select which UI element you want to use to perform your input output operations. But for surface automation, you choose images, right? You want to click on an image which looks like this PDB shredder or this TeamViewer icon or something like that, that's where surface automation comes into play. And it is commonly used to automate in virtual environments like Citrix machines.

So, this is not something specific to local systems. for local systems, we can directly interact with the UI elements using the application modeler and selecting the correct application type, and we should be all set. The final topic for this entire video tutorial series is the recommended practices. There are a few best practices that are going to be talked about to create a competent RPA robot. First is to set the design of your workflow prior prior to building the actual robot. We have discussed the concept of process flow diagrams and Business Objects throughout this video tutorial series right.

Each have their own capabilities and usage, much of their functionalities overlap That is a program module being worked upon to solve a business problem in hand may be implemented in business process or within the process studio itself. However, it must be thoroughly evaluated as to where the program creation would make more sense. This recommendation is not limited to the main process, but also to the sub process level like the pages and the logical implementations within them. decisions on the designing must be made keeping in mind the comprehensibility of other users or developers who will be looking at the programming near future and also the use of proper naming convention, which further enhances the overall comprehensibility. Right. And having these, this practice can hugely reduce the effort of debugging a problem by making it more readable and new making it more acceptable in terms of other users will be developers will be working or enhancing your functionalities.

Second, break the complex business problem into simpler logical implementations. There are cases when implementing business processes and adding more and more capabilities, such as Exception Handling recovery mechanisms, enhanced features, particular use cases, etc. Makes a program so complex that it becomes hard to grasp and maintain. dividing it into smaller parts and connecting these parts into logical sequence strengthens the maintainability and enhances the reusability of bots. Third, is thorough Exception Handling no matter how hard we try, there are always events when it comes to unexpected errors during process execution, a detailed and comprehensive implementation of error cases and corresponding recoveries can make the bottle liable for a company to reduce the effort in all productive work to a great extent. Fourth, is keep the system clean.

One of the major reasons why an RPA bot fails is because of the interference of an already running application with the target application. It's imperative to open applications only when needed, and close them as soon as the operation on them is finished. any extra time and application remains active can hog system resources, making it less responsive and prone to inefficiencies. The last is version control and periodic backup. During development, there are always instant thoughts use cases enhancements and other ad hoc changes that our developer gets tempted to implement. It's certainly a good practice to follow, as the final goal is to make the bot as capable and efficient as possible.

However, we can To work directly on a working solution, and sometimes, the logical implementations of these enhancements get too complicated, that it becomes impossible to rollback these changes. It's a highly recommended practice to periodically have backups of the business process and save each and every working solution separately. This can avoid huge reworks and in some cases, development of incapable mediocre products. This finishes our video tutorial series for blue prism. And I do appreciate if you guys could provide a feedback on on here on the website and let me know if there are any changes that you would like to have. Thank you very much.

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.