Wednesday, June 17, 2026

Power Automate Desktop (PAD)

Power Automate Desktop (PAD)

Part A — Beginner (Q1–Q30)

# Question Short Answer
1 What is Power Automate Desktop (PAD)? A low-code RPA tool from Microsoft used to automate repetitive desktop and web tasks by recording or building flows visually.
2 What is RPA? Robotic Process Automation — software "robots" that mimic human actions on a UI to automate rule-based tasks.
3 Difference between Power Automate (cloud) and PAD? Cloud flows run on triggers/connectors in the cloud; PAD runs on the desktop to automate UI, files, and legacy apps.
4 What is a desktop flow? A sequence of actions built in PAD that automates a task on a Windows machine.
5 What are actions in PAD? Pre-built building blocks (like "Click", "Read from Excel") that you drag into the flow designer.
6 What is the Actions pane? The left-hand panel listing all available actions grouped by category.
7 What is a variable in PAD? A named container that stores data (text, number, list, datatable, object) used during a flow.
8 How do you create a variable? Use "Set variable" action, or variables are auto-produced as outputs of other actions.
9 What variable data types does PAD support? Text, Numeric, Boolean, List, Datatable, Datarow, Custom object, Datetime, and others.
10 What is the percent notation %variable%? The syntax PAD uses to reference or evaluate a variable or expression inside a field.
11 How do you run a flow in PAD? Click the Run button in the flow designer or trigger it from the console.
12 What is the PAD console? The home screen listing all your flows, where you can run, edit, or schedule them.
13 What is the recorder in PAD? A feature that captures your mouse and keyboard actions and converts them into flow steps.
14 Can PAD automate web browsers? Yes, via browser automation actions using extensions for Edge, Chrome, and Firefox.
15 What is a UI element? A captured reference to an on-screen control (button, field, link) that PAD interacts with.
16 Where are UI elements stored? In the UI elements repository of the specific flow.
17 How do you add a comment in a flow? Use the "Comment" action to document logic for readability.
18 What is the "Send keys" action? Sends keystrokes to the active window to simulate typing or shortcuts.
19 What is the "Wait" action? Pauses the flow for a fixed number of seconds.
20 How do you display a message to a user? Use the "Display message" action to show a dialog box.
21 What is "Input dialog" used for? To prompt the user to enter a value during flow execution.
22 How do you read data from Excel in PAD? Launch Excel, then use "Read from Excel worksheet" action.
23 How do you write to Excel? Use "Write to Excel worksheet" action specifying cell or column/row.
24 What is a Datatable? A variable type that holds rows and columns, similar to a table or grid.
25 What is a Datarow? A single row from a datatable.
26 How do you launch an application? Use "Run application" action with the executable path.
27 What file actions does PAD offer? Copy, move, delete, rename files; read/write text files; get file info.
28 How do you take a screenshot in a flow? Use the "Take screenshot" action.
29 Difference between Run and Debug? Run executes fully; Debug lets you step through with breakpoints and inspect variables.
30 Is PAD free? A free version is available for Windows 11/10 (attended); paid plans unlock cloud-connected and unattended automation.


Part A — Intermediate (Q31–Q60)

# Question Short Answer
31 What is a conditional action? "If", "Else if", "Else" actions that branch logic based on conditions.
32 What is a "Switch" action? Evaluates one value against multiple cases, like a multi-branch if.
33 What loops does PAD support? For each, Loop (fixed count), Loop condition (while), and the loop control actions.
34 Difference between "Loop" and "For each"? "Loop" runs a set number of times; "For each" iterates over items in a list or datatable.
35 What does "Exit loop" do? Breaks out of the current loop immediately.
36 What does "Next loop" do? Skips to the next iteration of the loop.
37 How do you handle errors on a single action? Open the action's "On error" tab to set retry, continue, or go-to behavior.
38 What is a "Block error" / "On block error"? A way to wrap multiple actions and define error handling for the whole block.
39 What is a subflow? A reusable group of actions within a flow that can be called like a function.
40 How do you call a subflow? Use the "Run subflow" action.
41 Why use subflows? To organize logic, avoid repetition, and improve maintainability.
42 What are input and output variables? Variables marked to receive data into a flow or return data out, enabling parameter passing.
43 How does PAD pass data to a cloud flow? Through input/output variables when the desktop flow is invoked by a cloud flow.
44 Difference between attended and unattended automation? Attended runs with a logged-in user present; unattended runs without supervision, often scheduled.
45 How do you schedule a desktop flow? Trigger it from a cloud flow using a schedule, since PAD itself has no native scheduler.
46 What is image-based automation? Locating and clicking UI by matching screenshots instead of structured UI elements.
47 When would you use image-based clicking? When stable UI selectors aren't available (e.g., Citrix, virtual desktops, images).
48 What is OCR in PAD? Optical Character Recognition to extract text from images or screens.
49 Which OCR engines does PAD support? Windows OCR engine and Tesseract.
50 How do you extract data from a web page? Use "Extract data from web page" to capture tables, lists, or specific elements.
51 Difference between "Populate text field" and "Send keys"? Populate sets a field's value directly via the UI element; Send keys simulates raw keystrokes.
52 How do you handle pop-ups or dialogs? Detect them with UI elements/window actions and click or dismiss accordingly.
53 How do you convert text to a number? Use "Convert text to number" action or expression functions.
54 How do you manipulate text in PAD? Actions like trim, replace, split, pad, get subtext, and change case.
55 What is the "Get subtext" action? Extracts a portion of a string by position and length.
56 How do you split a string into a list? Use "Split text" with a delimiter to produce a list.
57 How do you parse a date? Use "Convert text to datetime" with a format specifier.
58 How do you handle CSV files? Read with "Read from CSV file" and write with "Write to CSV file" actions.
59 What is a custom object / JSON in PAD? A structured key-value object; PAD can convert JSON to/from custom objects.
60 How do you call a web API in PAD? Use the "Invoke web service" (HTTP) action with method, URL, headers, and body.


Part A — Advanced (Q61–Q85)

# Question Short Answer
61 What strategies make UI selectors more robust? Use stable attributes, avoid index-only selectors, leverage anchors, and use wildcards for dynamic values.
62 How does PAD identify elements (selectors)? Through a hierarchy of UI element attributes (control type, name, class) forming a selector path.
63 How do you make a selector dynamic? Edit the UI element to insert a variable into an attribute (e.g., %itemName%).
64 How do you handle dynamic or changing web pages? Add waits for element existence, use relative selectors, and reduce reliance on fixed indexes.
65 What is the "Wait for" family of actions? Actions that pause until a UI element, window, image, or condition appears/changes.
66 Why prefer "Wait for element" over fixed "Wait"? It waits only as long as needed, making flows faster and more reliable than hard-coded delays.
67 How do you implement retry logic? Use the "On error" retry policy, or a loop with a counter and try/catch-style block error.
68 How can you run PowerShell or scripts from PAD? Use "Run PowerShell script", "Run VBScript", "Run JavaScript", or "Run Python script" actions.
69 How do you run a SQL query in PAD? Use the database actions: open SQL connection, execute SQL statement, close connection.
70 How do you work with COM/automation in legacy apps? Use window/UI automation actions or scripts; PAD can drive apps exposing accessible UI.
71 How do you secure credentials in PAD? Store secrets in Azure Key Vault or environment variables; avoid hardcoding passwords.
72 What is the role of the on-premises data gateway? Not used by PAD directly; PAD connects via the machine/machine groups for cloud-triggered runs.
73 How is a desktop flow triggered from the cloud? A cloud flow uses the "Run a flow built with Power Automate Desktop" action targeting a registered machine.
74 What is a machine in Power Automate? A registered Windows device with the PAD runtime that can execute desktop flows.
75 What is a machine group? A pool of registered machines that distribute desktop flow runs for load balancing and resilience.
76 Difference between direct and gateway connectivity? Direct connectivity registers the machine to the cloud directly; the older model relied on a gateway.
77 How do you handle exceptions globally? Wrap logic in block errors, log failures, capture screenshots, and route to a clean-up subflow.
78 How do you log flow execution? Write to a file, database, or send results back to a cloud flow; use screenshots for diagnostics.
79 How do you debug a failing flow? Use breakpoints, run from a specific action, inspect variable values, and check the UI element selectors.
80 How do you optimize a slow desktop flow? Replace fixed waits with conditional waits, minimize UI hops, batch data ops, and reduce screenshots.
81 Difference between picture-in-picture and full desktop run? Picture-in-picture runs attended automations in an isolated session so you can keep working.
82 How do you reuse logic across many flows? Use subflows within a flow, or copy/standardize patterns; share via solutions in the cloud.
83 What are solutions in Power Platform? Containers that package flows and components for ALM (move dev → test → prod).
84 How do you move a desktop flow between environments? Add it to a solution and export/import, or use pipelines for ALM.
85 How do you handle sensitive input variables? Mark them as sensitive so their values are masked in logs and run history.


Part A — Expert (Q86–Q100)

# Question Short Answer
86 How do you design for unattended automation at scale? Use machine groups, idempotent flows, robust error handling, queueing, and centralized logging/monitoring.
87 How do you implement a work-queue pattern in PAD? Store items in Dataverse/SharePoint/SQL, have flows pick pending items, lock, process, then mark status.
88 How do you ensure idempotency in automation? Check state before acting, use unique keys, and design steps so re-runs don't duplicate effects.
89 What governance considerations apply to RPA? DLP policies, environment strategy, credential vaulting, naming standards, monitoring, and CoE oversight.
90 What is the Center of Excellence (CoE) Starter Kit? A Microsoft toolkit to govern, monitor, and scale Power Platform adoption across an organization.
91 How do you apply DLP to desktop flows? Define data loss prevention policies in the admin center to control connector usage and data movement.
92 How do you handle concurrency and locking? Use machine groups for parallelism plus record-level locking in the data store to avoid double processing.
93 How do you monitor desktop flow runs? Use run history, the monitoring portal, machine/machine-group dashboards, and CoE analytics.
94 How do you implement CI/CD for PAD flows? Use solutions with Power Platform Pipelines or Azure DevOps/GitHub to promote across environments.
95 How do you secure unattended run credentials? Store and retrieve secrets from Azure Key Vault; use service accounts with least privilege.
96 Common reasons selectors break in production? App updates, locale changes, dynamic IDs, layout changes, and resolution/DPI differences.
97 How do you make flows resilient to UI changes? Use stable attributes, anchors, OCR/image as fallback, defensive waits, and centralized selector updates.
98 How do you decide between attended and unattended? Attended for human-in-the-loop tasks; unattended for high-volume, scheduled, fully rule-based processes.
99 How do you measure RPA ROI? Track hours saved, error reduction, throughput, and cost per transaction versus manual processing.
100 When is RPA the wrong solution? When a proper API/integration exists, the process changes constantly, or the UI is too unstable to automate reliably.


Part B — Beginner Scenarios (Q1–Q25)

# Scenario Short Answer
1 A user must copy 50 rows from one spreadsheet into a web form daily. How do you start? Map the manual steps first, capture the form's UI elements, then build a loop that reads each row and fills the form.
2 Your recorded flow clicks the wrong button after the app window resizes. Likely cause? The recorder captured a position-based selector; recapture using a stable attribute instead of coordinates.
3 A teammate's flow works on their PC but not yours. First thing to check? Confirm the app version, screen resolution, browser extension, and that the same UI elements exist on your machine.
4 You need the flow to greet the user by name at start. How? Show an input dialog to capture the name, store it in a variable, then display it in a message.
5 A flow must pause until a slow report finishes loading. How to avoid guessing the time? Use a "wait for element" on something that only appears when the report is done, instead of a fixed wait.
6 The same five actions appear in three places in your flow. What do you do? Move them into a subflow and call it from each place to reduce duplication.
7 A flow should only email a summary if at least one record was processed. How? Track a counter, then use an If condition to send the email only when the count is greater than zero.
8 You want to test a flow without sending real emails. How? Disable or comment the send action and use a display-message in its place during testing.
9 A flow needs to open a file whose name changes daily (date-stamped). How? Build the filename dynamically from the current date and pass that variable to the open-file action.
10 The user accidentally closes the target app mid-run. How to recover? Detect the missing window, relaunch the app, and resume or restart from a safe checkpoint.
11 You must skip blank rows in an Excel sheet. How? Inside the loop, use an If condition to continue to the next iteration when the key cell is empty.
12 A flow keeps typing before the page is ready. Fix? Add a wait-for-element-ready or wait-for-page-load before the typing action.
13 You need to confirm a flow ran successfully each morning. Simplest approach? Write a timestamped success line to a log file at the end of the flow.
14 A flow must handle both .xls and .xlsx files in a folder. How? List files with a wildcard pattern, then loop through and process each matching file.
15 The business wants the flow to ask "Are you sure?" before deleting records. How? Use a message box with Yes/No buttons and branch on the user's choice.
16 A flow should stop early if a required file is missing. How? Check if the file exists; if not, show a message and end the flow gracefully.
17 You need to rename hundreds of downloaded files consistently. How? Loop the files and apply a rename action using a built pattern (prefix + index/date).
18 The flow must copy text from a desktop app field into Excel. How? Capture the field as a UI element, read its value into a variable, then write it to the worksheet.
19 A flow runs too fast for a legacy app to keep up. Quick fix? Insert short waits or wait-for-element steps between actions to let the app catch up.
20 You want non-technical users to launch the flow easily. How? Pin it in the PAD console or surface it via a simple trigger so they just click Run.
21 A flow must extract today's date in yyyy-MM-dd format. How? Get the current datetime and convert it to text with that format specifier.
22 The flow should clear a field before typing into it. How? Focus the field, select all and delete (or set the field value to empty) before populating.
23 You need to verify a login succeeded before continuing. How? Wait for a post-login element (e.g., dashboard) to appear, and branch to error handling if it doesn't.
24 A flow must total a numeric column from Excel. Approach? Loop the rows accumulating a sum variable, or read the range and compute the total.
25 The user wants a popup at the end showing how long the flow took. How? Capture start and end datetimes, compute the difference, and display it in a message.



Part B — Intermediate Scenarios (Q26–Q55)

# Scenario Short Answer
26 A flow occasionally fails because a popup appears randomly. How to handle it? Before the main step, check for the popup element and dismiss it if present, then continue.
27 You must process 10,000 rows but the flow is slow. What do you optimize? Minimize per-row UI interactions, read/write in bulk where possible, and remove unnecessary waits/screenshots.
28 A web element is found but the click does nothing. Likely fix? The element may be obscured or not interactive yet; wait for it to be enabled/visible or scroll it into view first.
29 A flow needs to retry a flaky network call up to three times. How? Wrap it in a loop with a counter and a try/catch-style block error, breaking on success.
30 You must extract line items from PDF invoices. Approach? Use PDF extraction actions to pull text/tables, then parse the fields into a datatable.
31 The same flow must run for three different clients with different settings. How? Externalize settings into a config file/table and load the right set based on an input parameter.
32 A flow downloads a file but the next step runs before download completes. Fix? Wait until the file exists and its size stops changing before proceeding.
33 You need to compare two Excel sheets and flag mismatches. Approach? Read both into datatables, loop one keyed by a unique column, look up the other, and record differences.
34 A flow must send different emails based on order status. How? Use a Switch on the status value with a case for each path, or chained If/Else branches.
35 The target website shows a CAPTCHA. What's the right stance? Don't try to bypass it; redesign around an API/authorized channel or insert a human-in-the-loop attended step.
36 A flow throws "element not found" intermittently. How to stabilize it? Add wait-for-element with a timeout, improve the selector, and add retry on the action.
37 You must mask a password that appears in run logs. How? Mark the input variable as sensitive so its value is hidden in history and logs.
38 A flow needs data from a REST API and then enters it into an app. Approach? Invoke the web service, parse the JSON into a custom object, then drive the app UI with those values.
39 Two flows occasionally edit the same Excel file and collide. Fix? Serialize access (a lock/flag), or have one flow own the file and queue requests.
40 A long flow fails near the end and you don't want to redo everything. Design fix? Add checkpoints/state so the flow can resume from the last completed stage.
41 You need to validate an email format before submitting. How? Apply a regex/pattern check and branch to an error path if it doesn't match.
42 A flow must loop through rows but stop when it hits a "STOP" marker. How? Inside the loop, test the cell value and use exit-loop when it equals the marker.
43 The app sometimes opens in a different window position. How to click reliably? Use UI-element selectors (not coordinates) and bring the window to focus before interacting.
44 A flow needs to keep only unique values from a list with duplicates. How? Build a result list, and before adding each item, check it isn't already present.
45 You must capture an error screenshot only when something fails. How? In the block error / on-error handler, take a screenshot and save it with a timestamped name.
46 A flow reads a date as text but needs to do date math. How? Convert the text to a datetime using the source format, then add/subtract as needed.
47 The business wants a daily run but PAD has no scheduler. How? Trigger the desktop flow from a scheduled cloud flow.
48 A flow must handle a dropdown that loads options dynamically. How? Wait for the options to populate, then select by visible text rather than index.
49 You need to move processed files to an "archive" folder. How? After processing each file successfully, move it to the archive path; leave failures in place.
50 A flow's output must feed a Power Automate cloud flow. How? Define output variables in the desktop flow; the cloud flow reads them after the run.
51 The same selector breaks whenever the record ID changes. Fix? Parameterize the selector with a variable so it adapts to the current ID.
52 You must extract a number embedded in a sentence. Approach? Use regex/text actions to isolate the digits, then convert to a number.
53 A flow needs to send a Teams/email alert on failure. How? In the error handler, call a notification step (cloud flow or email action) with the error details.
54 A flow processes a folder that may be empty some days. How? Check the file count first and exit gracefully with a "nothing to process" log if zero.
55 You want to reuse one error-handling routine across many steps. How? Centralize cleanup/logging in a subflow and call it from each on-error handler.

Part B — Advanced Scenarios (Q56–Q85)

# Scenario Short Answer
56 An unattended flow fails at 2 AM with no one watching. How to make it safe? Add full error handling, logging, failure notifications, and a clean exit so the machine isn't left in a bad state.
57 A flow works attended but fails unattended. Common cause? The unattended session has no interactive desktop / locked-screen issues; ensure proper machine/session setup and no UI prompts.
58 Selectors break after a vendor app update. How to minimize future pain? Centralize selectors, use stable attributes/anchors, and add a fallback (OCR/image) for fragile elements.
59 Two machines in a group sometimes grab the same work item. Fix? Implement record-level locking/status in the data store so an item is claimed before processing.
60 You must process 50,000 items within a window using multiple bots. Design? Use a work queue plus a machine group, with each bot pulling and locking pending items.
61 A flow must run as a specific service account with vaulted secrets. How? Run unattended under that account and retrieve credentials from Azure Key Vault at runtime.
62 Throughput drops when many flows hit one database. What do you change? Add connection pooling/batching, reduce round-trips, and stagger or throttle concurrent runs.
63 A regulator needs an audit trail of every action a bot takes. Approach? Log each step (who/what/when, inputs/outputs) to a durable store, with sensitive data masked.
64 A flow must continue past a non-critical error but stop on critical ones. How? Classify errors in the handler: continue/log for non-critical, raise/abort for critical.
65 You need to promote a flow from Dev to Prod safely. Approach? Package it in a solution and move via Pipelines/ALM rather than manually rebuilding.
66 A long-running flow hangs and never times out. Fix? Set timeouts on waits and actions, and add a watchdog/overall time limit that aborts cleanly.
67 The same flow must support English and another locale's date format. How? Detect or parameterize locale and parse/format dates using the correct culture.
68 A bot must hand off to a human for approval mid-process. Design? Pause and route to an approval (cloud flow/Teams), then resume based on the decision.
69 You suspect a memory/resource leak over long runs. How to investigate? Monitor the machine's resource usage, close apps/handles you open, and split very long runs.
70 A flow must process items in priority order. How? Sort or query the work queue by priority before the processing loop.
71 Production fails but you can't reproduce it in Dev. Approach? Add detailed logging/screenshots in prod, compare environment/data differences, and replay with prod-like data.
72 A flow runs on Citrix/virtual desktop where UI elements aren't exposed. How? Fall back to image-based automation and OCR since structured selectors aren't available.
73 You need zero data loss if a bot crashes mid-batch. Design? Make each item idempotent and commit progress per item so a restart resumes safely.
74 A team wants standardized flows across many developers. How? Establish templates, naming conventions, shared subflows, and code-review/CoE standards.
75 A flow must not run two copies at once on the same machine. How? Use a lock/flag (file, mutex, or queue status) so a second instance exits if one is active.
76 The business changes the process weekly. Is RPA still right? Often no — high-change processes break UI bots; recommend an API/integration or stabilize the process first.
77 You must securely pass an API token to a flow without hardcoding. How? Pull it from Key Vault or an environment variable at runtime; never store it in the flow.
78 A bot must reconcile data between two systems and report drift. Approach? Pull both datasets, key-match them, compute differences, and output a reconciliation report.
79 A flow's run history shows random failures only under load. Likely area? Timing/race conditions — strengthen waits, add retries, and reduce contention on shared resources.
80 You need to roll back a faulty flow version quickly. How? Keep versioned solutions/exports so you can re-import the last known good version.
81 A flow must respect a maintenance window and not run during it. How? Gate execution with a time/window check (or schedule logic) that exits if inside the blackout.
82 Sensitive PII flows through a bot. What controls apply? Mask in logs, encrypt at rest/in transit, limit access, and apply DLP policies on connectors.
83 A flow must scale to more bots next quarter. What do you prepare? A queue-based architecture, a machine group, idempotent items, and centralized monitoring.
84 A vendor portal logs you out after inactivity. How to handle long jobs? Keep the session alive with periodic activity, or chunk work and re-login between batches.
85 You inherit an undocumented flow that breaks often. First steps? Map its logic, add logging, identify fragile selectors, and refactor into subflows with error handling.



Part B — Expert Scenarios (Q86–Q100)

# Scenario Short Answer
86 Leadership asks whether to automate a process at all. How do you decide? Assess volume, stability, rule-clarity, and ROI; automate stable high-volume rule-based work, defer the rest.
87 You're designing an enterprise RPA platform from scratch. Key pillars? Governance/CoE, environment strategy, queue architecture, credential vaulting, monitoring, and ALM pipelines.
88 Citizen developers are creating ungoverned bots. How to regain control? Stand up a CoE, apply DLP and environment policies, inventory existing flows, and set standards/training.
89 Two business units want conflicting changes to a shared bot. How to manage it? Parameterize/config-drive the shared logic, branch via solutions, and govern changes through a review process.
90 A critical bot must meet an SLA with high availability. Design? Use a machine group across hosts, health checks, automatic failover/retries, and proactive monitoring/alerting.
91 You must estimate capacity for a new automation program. Approach? Model transaction volume × handle time vs. bot hours, then size machines/groups with headroom for peaks.
92 Auditors require proof that bots only access permitted data. How? Enforce least-privilege service accounts, DLP policies, access logging, and documented data-flow diagrams.
93 A flagship process spans web, desktop, and APIs across teams. How to architect it? Orchestrate with a cloud flow calling modular desktop flows, each owning one system, with a shared queue/state.
94 Costs are rising with bot count. How to optimize spend? Consolidate flows, right-size machines, retire low-ROI bots, and prefer APIs where they replace UI automation.
95 You need a disaster-recovery plan for the automation estate. What's in it? Versioned exports, documented configs/secrets locations, machine rebuild steps, and tested restore procedures.
96 A merger doubles the systems your bots touch overnight. Strategy? Inventory and prioritize by ROI, reuse modular subflows, standardize patterns, and phase rollout by risk.
97 The board wants metrics on automation value. What do you report? Hours saved, error reduction, throughput, SLA adherence, cost per transaction, and adoption trends.
98 A bot caused a costly error in production. How to respond and prevent recurrence? Contain/rollback, root-cause the failure, add validation/guardrails and tests, and update the runbook.
99 You must choose between RPA and a proper system integration. How to frame it? Prefer integration when a stable API exists and volume/longevity justify it; use RPA for legacy/no-API or short-term needs.
100 Adoption stalled after early wins. How to scale sustainably? Build a CoE, reusable assets, training, a prioritized pipeline, executive sponsorship, and clear value tracking.




No comments:

Post a Comment

Featured Post

Power Automate Desktop (PAD)

Power Automate Desktop (PAD) Part A — Beginner (Q1–Q30) # Question Short Answer 1 What is Power Automate Desktop (PAD)? A low...

Popular posts