30 questions / 10 random questions
Random questions, instant feedback, and review for missed questions.
Inspectors need a screen with carefully arranged photos and inputs. Which Power Apps approach best emphasizes layout control?
Answer: Arrange controls in a canvas app.
Canvas apps provide control over layout and control properties. Model-driven apps emphasize a data model and standard components.
A model-driven app uses related customer and case tables with standard forms and views. Which data platform underpins it?
Answer: Microsoft Dataverse tables
Model-driven apps are based on Dataverse tables and related components. Canvas apps can use a broader range of connector-backed sources.
A canvas Gallery lists pending requests. Which property specifies the table or filtering formula to display?
Answer: Configure the Items property.
Items supplies the records displayed by a Gallery; its template presents each record.
A Power Fx expression must return multiple matching records as a table. Which distinction is correct?
Answer: Filter returns matches; LookUp returns the first match.
Filter returns a table of matches; LookUp finds the first matching record. Connector delegation support still matters.
A query against a large source has a delegation warning but passes a small-data test. What is the appropriate conclusion?
Answer: Check delegation support and test at realistic data scale.
A nondelegable query can evaluate only a limited subset and miss matching rows. Verify support for the source and expression together.
A nondelegable query's row limit is raised to 2,000 while its source contains 50,000 rows. What is correct?
Answer: A larger limit still does not guarantee searching all rows.
Raising the limit does not convert an expression into a delegated query. Redesign the expression or access approach when completeness matters.
Which call uses Form1's validation and submission behavior to save an edit form?
Answer: Call SubmitForm(Form1).
SubmitForm validates and attempts to save the form. Handle completion through OnSuccess and OnFailure.
After SubmitForm, navigation should occur only if saving succeeds. Where should the navigation action go?
Answer: In the form's save-success handler, OnSuccess.
Use OnSuccess to navigate after confirmed submission. Handle failure separately rather than assuming the attempt succeeded.
To create a new Requests record using Patch, which base-record expression is appropriate?
Answer: Use Defaults(Requests).
Defaults for the same data source supplies the base for creation. An existing source record instead identifies an update.
A failed Patch still results in a success message. What is the appropriate error-handling approach?
Answer: Handle errors with IfError and separate success from failure.
Handle save errors explicitly, preserve recoverable input, and run success messaging only on a successful path.
What is the basic scope difference between Set and UpdateContext in a canvas app?
Answer: Set is app-wide; UpdateContext is screen-local.
Set assigns a global variable; UpdateContext assigns screen context. Neither alone persists values to a data source.
A colleague can open a shared canvas app but cannot read its data. What should be checked?
Answer: Check data-source permissions and connection requirements.
App sharing does not by itself resolve every data-source permission or connection requirement. Check the connector's access model.
A delete button is hidden to protect sensitive Dataverse data. What is needed for authorization?
Answer: Restrict permissions through Dataverse security roles.
UI hiding is not an authorization boundary. Enforce permitted operations and scope at the data layer.
Which Power Platform control can restrict mixing business-data connectors with personal external-service connectors?
Answer: Classify connectors in data policies.
Data policies classify connectors and constrain combinations. They do not replace record-level permissions or every other data-protection control.
Development changes are affecting production users directly. Which environment strategy is appropriate?
Answer: Separate dev, test, and production with controlled promotion.
Separate environments help isolate changes and data. Pair them with access control, suitable test data, and a promotion process.
Which solution approach follows the usual Power Platform ALM recommendation?
Answer: Develop unmanaged and deploy managed solutions.
Develop in unmanaged solutions and deploy managed build artifacts downstream, accounting for dependencies and target settings.
A notification URL differs by environment and is hard-coded in formulas. How can environment changes avoid formula edits?
Answer: Store the setting in a solution environment variable.
Environment variables separate setting definitions from target-specific values. Validate target values and handle secrets appropriately.
A solution cloud flow must bind to a connection in its target environment. Which solution component references the connection?
Answer: A solution connection reference
A connection reference lets solution components use a connection mapped in the target environment. Validate ownership and access there.
Data loading on one canvas-app screen is slow. Which tool helps inspect runtime requests and events?
Answer: Inspect runtime events with Live monitor.
Live monitor exposes runtime events to investigate data calls, errors, and duration. Use evidence to locate the bottleneck.
A canvas app has many inputs and icon buttons. Which accessibility check is appropriate?
Answer: Check accessible labels and keyboard operation throughout.
Verify meaningful accessible labels and logical keyboard operation. Supplement automated checks with interaction testing.
A gallery displays colRequests, a copy of a SharePoint list. Refresh(Requests) runs after another user edits the list, but the gallery stays stale. What should you do?
Answer: Reload the collection after refreshing the source.
A collection is a snapshot, not a live link. Refresh the source, then reload the needed records. Protect unsaved local edits before replacing them.
Requests were copied from a server into colRequests. What does Clear(colRequests) do?
Answer: It clears local records but keeps columns.
Clear removes collection records while retaining its columns. It does not delete records from the source that was copied.
A message should appear when colResults has no records. Which expression directly tests whether this collection is empty?
Answer: Test with IsEmpty(colResults).
IsEmpty tests for zero table records. IsBlank checks blank values or empty strings, not an existing collection with no records.
A label uses Coalesce(nickname, "Not set") for a text value. How does it behave when nickname is blank or an empty string?
Answer: It uses the fallback only when nickname is empty.
Coalesce returns the first value that is neither blank nor an empty string. A label formula does not write to storage. Whitespace alone is not an empty string.
Product and store masters can be loaded independently. What is a sound condition for using Concurrent to reduce loading time?
Answer: Run calls that do not depend on each other's results.
Concurrent does not guarantee call order. Keep dependencies outside parallel branches or sequence them within a branch. It is not an all-or-nothing transaction.
ForAll processes ten local line items and calls a service for each. What must you remember about the order of these calls?
Answer: Record processing may run out of order and in parallel.
The returned table's order is not a guarantee of side-effect order. Use an explicitly sequenced mechanism for operations that depend on previous calls.
A saved canvas-app change is not visible to users who already have access. What action makes the tested version available to them?
Answer: Publish the saved and tested version of the app.
Saving retains edits; publishing makes that version available to shared users. After publishing, also verify that users open the updated version.
Form1 creates a request whose ID is generated by the server. Which record should its OnSuccess formula use to obtain that saved ID?
Answer: Read the record from the Form1.LastSubmit property.
LastSubmit exposes the last successfully submitted record, including generated fields. Read it in this submission's OnSuccess to avoid using a previous result.
An in-app Back button should warn before discarding edits in Form1. Which property indicates unsaved user changes?
Answer: Check the value of Form1.Unsaved.
Unsaved indicates pending user changes. Use it to offer save, discard, or continue editing before navigation. Reading it does not save anything.
A local colCart collection contains two products. Collect(colCart, {Product: "Extra"}) runs once, with no other operations. How many records are then present?
Answer: Three records; both original records remain.
Collect appends a record: two plus one gives three. It does not replace an existing row or automatically deduplicate by product name.