Can anyone tell what exactly I have to capture is it page number or next page icon

Can anybody tell where exactly I have to capture here. This is for Process workflow for assignment 2. Dispatchers.

Hi @balkishan

You have to capture the page number… not the next page icon.

So in the GetTransactiondata.xaml you check whether a particular page is available and if available you pass it to the process state.

In process.xaml, you click on the provided page number to move to the page
Then, we should use on element appear activity to make sure we have successfully loaded the given page number. And within that activity, you have to do the data scraping

Use the in_transactionNumber to get the page number sent from getTransactionData

you mean to capture 2 page is it?

Yeah… basically the TransactionNumber starts from one… so in every iteration…

  1. GetTransactionData checks whether the transactionNumber has a page. So if transaction number is 1, it checks whether there is a page 1
  2. In process. You click on that page…
  3. Element exists to check whether the clicked page is loaded
  4. Data scraping

And again… in the next iteration the number is 2. And

  1. Check if page 2 is available in get transaction data
  2. In process. Click on page 2.
  3. On element appear… do scraping and so on…

Get the idea?

I get the idea but as I am new in uipath it’s confusing for me

But in the GetTransactionData we need to check for the next page is existing according to the ppd documents. As I am using scrapping part in Process workflow. for dispatchers.

Yeah…

In getTransactionData.xaml, we should check whether the page is existing. We should use a element exists activity to check whether the page is available. How do we know the page number? we have it in the In_TransactionNumber argument because it increments by one in every iteration of the entire process.

Sample of GetTransactionData.xaml
image

When it comes to the Process.xaml,

Here we first click on the page we checked whether its available or not. Just to note: the Process segment is only executed if the checked page is available.

here is a sample of the Process.xaml

Does it make sense? Let me know if anything is not clear… I can help!!

1 Like

Understand bro can you plz tell me what is the use of On Element Appear activity, and here in Process workflow we have to extract the data, so we have to use data scrapping here for next page ???

@Lahiru.Fernando same I have done bro why it’s showing pageexist = false

@Lahiru.Fernando I have done the same but I am getting the same error, robo still not finding the page is exisiting result is showing false

Sorry for the delay in replying bro… It’s like this… don’t get it confused :slight_smile:

On Element Appear Activity
This activity is mainly used to check whether a particular UI element is loaded in the screen. And as soon as the element is loaded, what should be done when it appears. That’s the idea behind this activity. you can find more info on that here.

You are absolutely right. In the process workflow… we have to do data scraping. That’s true. But… to do the data scraping… the particular page should be loaded right? That’s why we have a click activity to click and load the page…

The idea here is like this…

Init state:
You initialize the settings and the application. Load the web app… make it ready for processing

Get Transaction Data:
Before processing… we need to check whether there are any pages available to scrape data. So, here we have a Element exists activity to check whether the given page (the number which is available in the in_transactionNumber) is available or not.

If the page is available -> go and do the processing
If not -> end the entire process

Process state:
You get here only when the given page is available. So, now we know that the page is available. But, have we already loaded it? No right. So, we have a click activity to click on the page number to load the page.

So you have a click to load the page, But, how do we know whether the page is loaded and its ready for processing? That’s where the On Element Appear activity comes in. So… If you see each page number, once you click on a particular page number, that page number button is changed to a different state right? Ideally, once you are on page 2, you cannot click on page 2 again. It’s disabled because you are already on that page and it is the current page we are looking at. That’s what we are checking here. So, once the clicked page is loaded, That’s the best time to do the data scraping. That’s why we are having the data scraping within the On Element Appear activity…

1 Like

Awesome… so You have implemented it… But you get an error because the robot is still unable to find the element. This happens due to a Selector issue. The selector you are using may not be working properly…

Could you share the selector you are using for that Element Exists activity?

1 Like

@Lahiru.Fernando Bro now the dispatchers is working fine but I want to know where I can see the captured data. As I can see in the dt_workitem. But I want to know in dispatchers we have to upload this data in orchestrator queue or in excel while. Now it’s fetching the data from all pages.

Bro can you tell me what is this error in Performer

yeah. you need to uploaded the extracted data to a Queue in Orchestrator. This Queue is later used to process them in the Performer stage.

So, after the data scraping, upload all the data to a Queue. Once the Queue data is uploaded, you can see the data through the Orchestrator itself

Bro, may I know in which activity exactly you are getting this error. AS I see, the errors comes in the INIT state. Can you try adding a break point to that “Catch Initialization Exceptions” flow in the Init state… right click on the header of the activity and select “Toggle Breakpoint” to add one. Then execute the workflow in Debug mode. Then, once the execution reach the point we added the breakpoint, do a step by step execution so that we can easily capture from where it is coming…

Looks like you have not passed some parameters… I just want to see where…

Bro It’s showing in the Init State even I can’t put breakpoint in Init State
As I put breakpoint here and it’s throing the error at initial only

Can you share your solution with me so I can take a look?

One more bro I am uploading the data into the queue here is my excel

Here is the Queue created in Orchestrator
image

Here I have given value in the Add Queue item

Performer.zip (296.8 KB)

Here is the solution bro for Performer