Advanced Certification Feedback

Took my first attempt at the practical part of the certification exam and failed due to the following criteria:
Check TransactionItem Varaible and arguments data type to be the correct one,
(I really don’t understand this! The prompt called for a datarow and thats what my transactionItem variable and following arguments are!)
Please make sure you’ve read the statement of the exercise and clearly understood it and also used the proper URL and credentials for ACME
(I used an orchestrator asset and i guess i shouldve just typed in the credentials into the config file?"
Check for csv appendrange configuration,
(Literally no clue)
Please make sure you’re using the TransactionData as showed in the Advanced Training.,
(Again no idea)
Please make sure you’re not using any hardcoded values in non-xaml files.,
(I’m working on this but i’m having trouble accessing the city list from the config file)
Please check you’re using the correct city values

This was my prompt:
In this exercise, you will create a UiPath automation that performs the steps below.
To achieve this, you will use the REFrameWork as the starting template and follow the UiPath development best practices.
Here are the steps performed by the Robot:

  1. Log in to https://www.acme-test.com.
  2. On the landing page, Dashboard, click or hover over the Vendors menu item and then click on Search for Vendor. Click on Display All Vendors. Scrape the data from the whole table displayed. The resulting datatable will be used as the input data for the process. Navigate back to the dashboard.
    Note: Navigation can be achieved in multiple ways by the robot - choose whichever you find best.
  3. For each Tax ID:
  • Navigate to Vendors - Search page (click or hover over the Vendors menu item and then click on Search for Vendor);
  • Type the Tax ID into the Vendor Tax ID field;
  • Click on Search;
  • Extract the values for the Vendor, City and Country and compare them with the values from the previously extracted table from the Display All Vendors page (check for EXACT match for all fields!);
  • If the values are not matching, this should be categorized as a Business Rule Exception;
  • If the City does NOT belong to the group {"“Brasov”", ““Bucuresti””, ““Koln””,"“Moscow”", ““Berlin””}, this should be categorized as the second Business Rule Exception. We can only process requests from these cities. Check the City value extracted after the individual Tax ID search;
  • If no Business Rule Exception, Append the resulting datatable from each page into an Excel worksheet;
    you shouldn’t worry about the headers and format of the output file.

Constraints to follow in the development, using the REFrameWork:

  1. TransactionItem datatype should be a DataRow. The process should recover and retry 2 times in case of errors in navigation between the Vendor Search and Vendor Search Results pages. One transaction is the action of navigating to the Vendor Search page, searching for the TaxID and scraping the values from the resulting one row table. (Similar to ACME Process 5 from the UiPath Academy).
  2. Create a separate workflow file for the Login to ACME. File input arguments: URL ; Username ; Password .
  3. Create a separate workflow file for closing ACME.
  4. Add the ACME_URL and ACME_Credential to the Excel Config file.
  5. Populate InitAllApplications.xaml from the Framework folder with Invoking the Login to ACME and navigation to the Work Items.
  6. Populate CloseAllApplications.xaml from the Framework folder with Invoking the Close ACME.
  7. Populate KillAllProcesses.xaml from the Framework folder with killing the process used.
  8. Populate the Process.xaml file with the following actions: Navigation, Searching for TaxID, Scraping, Checking if the values match, Checking for the correct City, Appending to Excel.

Important Note: Don’t use external file references outside of the project folder (including Orchestrator Assets). Place all the used files within the project folder, zip that folder and upload it to the UiPath Certification Platform.
Zip ALL the used workflow files AND the output Excel file. Then upload the .zip file to the UiPath Certification Platform.
Good luck!

This is my project:
project.json (971 Bytes)

Any help would be appreciated!

2 Likes

Was the project.json file you’ve uploaded your submission?

I submitted this zipped folder:
CompareVendorDetails (Copy of Submission.zip (1011.7 KB)

This workflow will not run. Here is the crux of the problem:

System1_Credential is set to ACME_Credential in the Settings tab. The REFramework only reads Orchestrator assets from the Assets tab. If I had to guess, I assume the workflow prompted you for a username and password, and that’s how it was able to pass on your machine. However, it only prompted you because it could not find the asset in your Assets tab.

The automation will not prompt a user. It likely uses an asset stored on a testing machine of with the same name, ACME_Credential. Because it couldn’t find the asset, it failed your project due to an execution error.

The error output from the certification exam is not very helpful on this, as you’ve no doubt realized.

So hold on, that config file is not the one I submitted.

Also I ran my workflow like three times before submitting. I am always able to successfully login to acme without any prompting. The ACME_Credential is the name of the orchestrator asset. When I ran the project it successfully was able to process through the work items. Note the output file in the data folder.

Here is the project folder:
CompareVendorDetails.zip (1018.4 KB)

The ZIP file you uploaded in your response also does not contain the ACME_Credential in the Assets tab.

Also, the process will only prompt you for the username and password one time. If it is already stored in the Windows Vault, the process will get the credentials from there and not prompt you again the next time you run the process. I think that’s why this went unnoticed when you were testing.

Okay…what about everything else?

Like the TransactionItem variable being wrong?
csv appendrange configuration?
TransactionData?

The UiPath certification exam error readout will throw all errors if it was unable to process anything. This is not very helpful for understanding what went wrong, but it’s likely that you did everything else correctly. Just double check your work, and you should be fine.

Updated: Config file: Config.xlsx (20.8 KB)

Okay so is the accepted cites and DetailRow default values in the variable panel okay then? Or should i just replace DetailRow with TransactionData bc thats what it literally is. And call the AcceptedCities list from the config file?

As a rule of thumb, if you had to use quotes (other than when you use Config("ValueName").ToString) or type out a specific number into any fields in UiPath, it probably should be in the Config file. So, your cities should be read from your Config file as well.

Think of it this way: If this is a real-world process, what if I want to change the cities I’m searching for? Will I have to update the code, or can I change a string in the Config file?

Process changes will require changes to the workflows, but anything that could be regarded as a parameter to the processs (cities, names, search criteria, etc.) should be in your Config file.

Okay thank you so much.

Do you happpen to know how I can get the citylist from config into my workflow?

All the practicing and exercises i completed never really dealt with most of this stuff.

You can create a delimited list in the Config file and split it in your workflow (e.g. London|Paris|New York). I’m advising this as a best practice, but I don’t know if the test checks for this specifically. I do know that it checks for hard-coded values at least in parts of the code.

When i moved the System1 Credential to the asset page, the workflow does not work. It cannot access the orchestrator asset:

image

The error indicates that you do not have ACME_Credential set as a Credential in Orchestrator.

But I do:

Looked a little deeper into the code, and I found out that credentials actually should not be under Assets (you had it right the first time).

So digging deeper, I saw some things which could cause problems in your workflow:

1.) You have a series of workflows being invoked on your first run in the Init stage, and then you run InitAllApplications afterward, which runs some of the same workflows again.

2.) There are several places in the processes where there are hard-coded values. These should be moved to the Config file.

3.) The Process should me as minimalistic as reasonably possible. Ideally, it should be a series of invoked workflow files and/or simple activities.

4.) The REFramework provides an Output folder, where your output Excel should be stored (may be why the append error was raised in the feedback from the site)

However, I can also say that your code ran successfully on my machine, so it wasn’t actually an execution problem.

1 Like

Thank you so much for your continuing feedback! Literally everything i’m doing is how I’ve been completing the training exercises and practicing for this exam.

  1. I’ve streamlined the init workflow so it only logs in once now.

  2. I am going to comb through the whole project for those “hardcoded values” Although I really didn’t find much.

  3. I’m working on cleaning up the process file

  4. FIxed the output folder in the config file

have you completed the certification exam

Yes!

1 Like