PL 400 Create Power Apps 2 — Questions and Answers
Question 1: A developer needs to implement a custom component that can be reused across multiple canvas apps. Which technology should they use?
- Power Apps Component Framework (PCF)
- Power Automate custom connector
- Power Apps canvas component library (Correct answer)
- Dataverse plugin
Correct answer: Power Apps canvas component library
Canvas component libraries allow developers to create reusable components that can be shared and imported across multiple canvas apps.
Question 2: When building a model-driven app, a developer wants to restrict which columns are visible based on the user's security role. What is the recommended approach?
- Use JavaScript to hide fields on the form load event
- Configure column-level security in Dataverse (Correct answer)
- Create separate forms for each security role
- Use Power Automate to filter data before display
Correct answer: Configure column-level security in Dataverse
Column-level security in Dataverse restricts access to specific columns based on security roles, enforced at the data layer.
Question 3: A canvas app needs to display a gallery that updates in real time as other users add records. Which approach achieves this with minimal code?
- Use a Timer control to call Refresh() on the data source periodically (Correct answer)
- Embed a Power BI tile in the app
- Use the Notify function on app start
- Set the Items property to a static collection
Correct answer: Use a Timer control to call Refresh() on the data source periodically
A Timer control combined with Refresh() on the data source periodically pulls updated records without requiring manual user action.
Question 4: Which formula would correctly navigate to a screen named 'DetailScreen' and pass a context variable named 'selectedItem'?
- Navigate(DetailScreen, ScreenTransition.Fade, {selectedItem: Gallery1.Selected}) (Correct answer)
- Navigate('DetailScreen', {selectedItem: Gallery1.Selected})
- Launch(DetailScreen, selectedItem, Gallery1.Selected)
- Set(selectedItem, Gallery1.Selected); Navigate(DetailScreen)
Correct answer: Navigate(DetailScreen, ScreenTransition.Fade, {selectedItem: Gallery1.Selected})
The Navigate function accepts a screen name, transition type, and an optional record that sets context variables on the target screen.
Question 5: A developer is building a Power App that needs to call a REST API that is not available as a standard connector. What should they create?
- A Dataverse virtual table
- A Power Automate instant flow
- A custom connector (Correct answer)
- A PCF control
Correct answer: A custom connector
Custom connectors allow Power Apps to communicate with external REST APIs by defining authentication, actions, and triggers.
Question 6: In a model-driven app, which event should a developer use to run validation logic before a record is saved?
- OnLoad
- OnSave (Correct answer)
- OnChange
- PostSave
Correct answer: OnSave
The OnSave event fires before a record is committed, allowing developers to run validation and cancel the save if conditions are not met.
Question 7: A developer wants to display a PDF file stored in SharePoint within a canvas app. Which control should they use?
- Image control with the SharePoint URL
- PDF viewer control (Correct answer)
- HTML text control with an iframe tag
- Attachment control
Correct answer: PDF viewer control
The PDF viewer control in canvas apps renders PDF files directly from a URL, including files stored in SharePoint document libraries.
A developer needs to implement a custom component that can be reused across multiple canvas apps.
Which technology should they use?