PL 400 Create Power Apps 3 — Questions and Answers
Question 1: A developer needs to implement offline capability in a canvas app so users can continue working without internet access. Which data source supports offline mode natively?
- SharePoint Online list
- SQL Server (direct connection)
- Dataverse for Teams
- Local collections saved with SaveData/LoadData (Correct answer)
Correct answer: Local collections saved with SaveData/LoadData
SaveData and LoadData functions store collection data in the device's local storage, enabling offline access in canvas apps.
Question 2: When using the Patch function to update a record in Dataverse, what does the first argument represent?
- The record ID to update
- The data source (table) to update (Correct answer)
- The new field values
- The filter condition
Correct answer: The data source (table) to update
The Patch function signature is Patch(DataSource, BaseRecord, ChangeRecord), where the first argument is the table being modified.
Question 3: A Power Apps developer needs to embed a canvas app inside a model-driven app. Which feature enables this?
- Inline canvas app via a custom page (Correct answer)
- PCF component wrapping the canvas app
- iFrame web resource pointing to the canvas app URL
- Dataverse virtual table with canvas rendering
Correct answer: Inline canvas app via a custom page
Custom pages in model-driven apps allow developers to embed canvas app experiences directly within the model-driven app shell.
Question 4: Which Power Apps formula function is used to add a new record to a collection without replacing existing records?
- Patch(MyCollection, Defaults(MyCollection), {...})
- Collect(MyCollection, {...}) (Correct answer)
- ClearCollect(MyCollection, {...})
- Update(MyCollection, {...})
Correct answer: Collect(MyCollection, {...})
Collect appends new records to an existing collection, while ClearCollect first removes all records before adding the new ones.
Question 5: A developer wants to improve canvas app performance by reducing the number of calls to a SharePoint list. What is the most effective technique?
- Enable delegation for all queries
- Cache data in a collection on app start using ClearCollect (Correct answer)
- Use concurrent calls with the Concurrent function
- Switch to a direct SQL connection
Correct answer: Cache data in a collection on app start using ClearCollect
Loading SharePoint data into a collection on app start with ClearCollect reduces repeated network calls as users navigate between screens.
Question 6: In a canvas app, a developer uses the Filter function against a SharePoint list with 6,000 items. Which scenario would cause a delegation warning?
- Filtering by a Choice column using '='
- Filtering by a text column using StartsWith()
- Filtering by a number column using '>'
- Filtering by a Date column using Year() (Correct answer)
Correct answer: Filtering by a Date column using Year()
Functions like Year() applied to Date columns are not delegable to SharePoint, so only the first 500/2000 records would be filtered client-side.
Question 7: A developer needs to programmatically send an email from a canvas app when a button is clicked. What is the correct approach?
- Use the Office365Outlook.SendEmailV2() function directly in the button's OnSelect (Correct answer)
- Create a PCF control that calls the Mail API
- Use the Notify function with NotificationType.Success
- Write a Dataverse plugin triggered by a button click event
Correct answer: Use the Office365Outlook.SendEmailV2() function directly in the button's OnSelect
The Office 365 Outlook connector exposes SendEmailV2 as an action that can be called directly in canvas app formulas.
A developer needs to implement offline capability in a canvas app so users can continue working without internet access.
Which data source supports offline mode natively?