Power Apps Interview

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 12

f1 ) What are the benefits of using PowerApps (advantages) ?

The top benefits of using PowerApps are:


● PowerApps helps you create apps faster.
● Users can utilize the PowerApps design interface to create
new apps without having to know how to code.
● With only a few development requirements, you may link to
a variety of data sources and web services.
● Automation of business processes
● AI capabilities are available in PowerApps.
● Easy deployment and cross-platform access.

What are the limitations of PowerApps (Disadvantages)?


Despite its potency and comprehensiveness,
PowerApps has limitations that companies should be aware of:
● Under the Microsoft 365 umbrella, licensing is restricted.
● A complicated licensing structures
● Services with a low code
● Integrated development environment for PowerApps
● Support for a variety of device sizes and screen orientations
is limited.
● Throughput limits of the connector ecosystem
● There are no shared functions or code.

2 ) What is CDS or Meta Verse? How to use it ?

 Its a cloud storage platform, you can store and manage


data securely
 Store data as set of entities – Entity is similar to SQL
table where you can store set of records
 Common data service database provides standardized
entities to be used – this is called common data model
 This is native backend data source for Dynamics 365
 This can be used as alternative to your existing data
storage applications
 Model Drive Apps can be created with only supported
backend data source as CDS

3) What is collection ?
It is a special type of Data Source which
we can use to Store and retrieve the Information & it is local to
the App.

It is nothing but rows and columns which holds the data in a


data source
Ex:- If i have 1000 records at the same time it will help increase
in the app Performance like
In terms of speed. We can hold more than 2000 records with
the help of collection.

Collect (EmployeeName,
{EmployeeName:Textinput1.TextSalary:TextInput2.Text})

ClearCollect: It add the new records & remove the old records

ClearCollect (EmployeeName,
{EmployeeName:Textinput1.TextSalary:TextInput2.Text})

Clear (EmployeeName,
{EmployeeName:Textinput1.TextSalary:TextInput2.Text})

PowerApps Patch function syntax ?

It will only update the specific field value from the


Employees data source.

Syntax:- Patch( Employees,First(Filter(Employees,


Name = "Bijay" ) ), { Phone: "675-849-8401" } )

Create a record in the Data source:-

Syntax:- Patch( Employees, Defaults( Employees ),


{ Name: "Preeti" } )

Patch to merge two or more records:-


Syntax:- Patch( { Name: "Bijay", Phone: "675-849-
8401" }, { Name: "Bijay", Department: "IT" } )

4) What is Components ?
Components are reusable building
blocks in Canvas App. App maker will allowed to create and
custom Control & use them across App. Components can
either be Imported and exported in different Apps that have
the same control.

Components are helpful & allow the large building Apps in


same Control pattern we can build Navigation use across your
App on different Screens one Components is update all
instance of app will be reflected. Components make sure
Performance improve & help in Standardization feel power
Apps.

5 ) Concat and Concatenate functions ?


The Concatenate function concatenates a mix of individual
strings and a single-column table of strings. When you use this
function with individual strings, it's equivalent to using the &
operator.

The Concat function concatenates the result of a formula


applied across all the records of a table, resulting in a single
string. Use this function to summarize the strings of a table,
just as the Sum function does for numbers.

Syntax:
Concat ( Table, Formula, separator)
• Table - Required. Table to operate on.
• Formula - Required. Formula to apply across the
records of the table.
• Separator - Optional. A text value to be inserted
between concatenated rows of the table.
Concatenate ( String1 [, String2, ...] )
• String(s) - Required. Mix of individual strings or a
single-column table of strings.

6 ) Difference Between Data table and Gallery ?


Data Table
1. Header auto populate,
2. Cannot add any additional column
3. Complete design auto populate
4. Only use to display data

Gallery
1. Manually need to create header
2. Can add additional column
3. Manually need to design Can apply action on data
in the canvas apps?
4. can apply action on data

7) What is delegation?
Delegation is a mechanism to minimize the
amount of data being transferred locally to the device by
delegating processing of data-to-data source, instead of
moving data to the app for processing locally.
To maintain the App Performance of an App its important
when working with large data source we should minimize the
amount of data is brought to the user operation. It reduces
complexity and increases app performance.
Delegable Functions:
1)Filter: Filter is used to find the set of Records.
2)Search: It is used to find the records in the Table
3)Lookup: It is used to find the First or single Record.

8) What is difference between Update & Update If?


• Update function updates the entire record in a
database
• UpdateIf and Patch functions update only specific
columns
• Update and UpdateIf both return table as a modified
data source.
• The Update function will change all the columns of the
row. So, if you don’t provide the new value for any
specific column, it will update the column to a blank (“”) value
in the table.

9 ) Difference between Canvas vs Model driven Apps ?

Canvas App...
1) Supports 200+ data sources
2) more focused on UI
3) not responsive by default either we can create tablet or
phone layout
4) best for task and role-based applications

Model-driven App...
1) Supports common data sources
2) more focused on data
3) by default, responsive
4) best for end-to-end business solutions

10. How can Error Handling be implemented in PowerApps?


To do so, first, we will have to get information
about any errors through the Error function. And then,
through Validation and DataSource Info, some of the errors
can be ignored even before they take place.

The IfError function tests values until it finds an error. If the


function discovers an error. Syntax:- IfError(Value,)

The IsError function tests for an error value.

The return value is a Boolean true or false.


Using IsError will prevent any further processing of the
error. Syntax:- IsError( Value )

11 ) What is import & export?


1) Select the flow u want to move/deploy into other
environment click on 3 dots from the options
click on export click on package (zip)
2) Give the Name, Environment, Description
3) Select the import setup as Create as New
4) click on Export and zip file will be downloaded
5) Go to the environment where u want to import the flow,
click on import
6) Upload the zip file
7) Check the related resources connected or not and if not
then connect the same
8) click on import
9) your flow has been imported successfully.

12) What is the difference between IsMatch, Match and


MatchAll functions in PowerApps?
* The IsMatch function is used to test if a string
matches a pattern, generally with a regular expression, and
returns True or False. Boolean values
* The Match function returns the first record that
matches a pattern.
* The MatchAll function returns a table for every
match found.

13) What are the major components of PowerApps?


● GALLERY – In the app, a gallery is a way to visualize data. It’s
a combination of screens that
you can use to view and navigate data.
● SCREEN – A screen is a technique to visualize a certain data
set or record (mobile, iPad,
Desktop). You usually have one for seeing all
records, one for viewing a specific record, and one for
editing.
● CONTROL – Controls give you the ability to see and interact
with your records.
● PROPERTY – Each control has properties.
● FUNCTION – The way you interact with and change the
properties is done through functions.

14. How is it possible to use media files in the Canvas app?


We can upload media files such as images inside canvas
apps. Up to 200 MB of media for each app can be uploaded in
PowerApps.
However, what is majorly recommended is using
media/blog storage services, such as Azure Media or Azure
Storage, and embedding the media URL to the app.
For adding App background images we have to upload
images inside the canvas app using the media option.

15 ) Can you add responsiveness to the canvas apps?


Yes, we can make use of the height and width
properties of app screens or control screens to achieve this.
We can also make use of container controls for responsive
apps.

16) What is the purpose of using the SaveData() function?


SaveData() is used to store a collection under an
alias name that can be used later in the app and this is device
specific.

17 ) What is a solution?
Solutions are the mechanism for
implementing Asset Lifecycle Management (ALM) in Power
Apps and Power Automate. The solution represents the
package for all the different components that a business
problem needs to be solved with. When you host your flows in
a solution, they become portable, making it effortless to move
them and all their components from one environment to
another.

A solution is either managed or unmanaged.

Unmanaged solutions are used in


development environments while you make changes to your
application.
Managed solutions, on the other hand, are
used to deploy to any environment that isn’t a development
environment for that solution. This includes test, UAT, SIT, and
production environments.
18) Can we use the REST API in PowerApps?
PowerApps can connect to any current API,
regardless of where it is hosted, using custom APIs. It is not
necessary to have a PowerApps Enterprise subscription to
utilize or register a Custom API.

Custom APIs are RESTful endpoints that


connect to and from PowerApps. You need a Swagger
definition file for your endpoint.

21 ) What is rest API and how to use it in power automate?

Answer: There are plenty of connectors in power automate


however sometimes the connector you need doesn't exist,
then we can use rest API and expand the services.

How to use :
We can call API using three methods, which are:
1)Custom connectors
2) Authorization code flow
3) Implicit flow
We usually used custom connectors to complete the
requirement.

19 ) Explain about Validate function?

The Validate function checks whether the value of a


single column or a complete record is valid for a data source. A
Before a user submits a data change, you can provide
immediate feedback on the validity of that submission,
resulting in a better user experience. This information can
include many constraints, such as these examples:

whether a columna requires a value how long a


string of text can be how high and low 3 number can be how
early and late a date can be.

The Validate function uses this information to


determine whether a value is valid and return an appropriate
error message if not. You can use the DataSourceinfo function
to view the same information that Validate uses,
Syntax
Validatel DataSource, Column, Volue)
DotaSource - Required. The data source to validate with
Column - Required. The column to validate.
Value - Required. The value for the selected column to be
validated.
Validated DataSource, OriginalRecord, Updates )
Dato Source -- Required. The data source to validate with
OriginalRecord - Required. The record to which updates are to
be validated.
Updates - Required. The changes to apply to the original
record.

20 ) How can a local or global variable be defined or used in


PowerApps?

Set ()
Update context() varname ,values
To do so, the Set function is used to set the global
variable's value. This holds an information piece temporarily, like
the result of operational data or the number of times somebody has
clicked a button.

And then, the UpdateContext function is used to create the content


variable, which holds information temporarily.

Global Variable:-Set()

Local Variable:-UpdateContext()

22) Is there any specific situation when you can choose a


model-driven app over a canvas app?
Although both can sometimes serve the same
requirement, a model-driven app can be an easier choice to
make if the data source is supposed to be Dataverse and no
custom UI is required. Also, the UI elements of model driven
apps are driven by data.

Can you tell some tips to improve performance of the


canvas apps?
• Load Multiple Datasets Concurrently •
Write Formulas That Use Delegation • Cache
Data In Collections And Variables • Limit
The Size Of Collections • “Batch Patch”
Multiple Changes To A Datasource Table At
Once • Reduce Code In The App's OnStart
Property • Minimize Number Of Controls On A
Single Screen • Enable DelayOutput For Text
Input Controls • Do Not Reference Controls
On Other Screens • Eliminate The N+1
Problem

https://www.matthewdevaney.com/power-apps-coding-
standards-for-canvas-apps/power-apps-performance-
optimization-guidelines/#Load-Multiple-Datasets-
Concurrently

Load Multiple Datasets Concurrently


Making connector calls sequentially is slow because the
current connector call must be completed before the next one
starts. The Concurrent function allows Power Apps to load
data faster by simultaneously processing multiple connector
calls at once. Only use the Concurrent function to retrieve
data stored in cloud. There is no advantage to using
concurrent when working with data already on the device

Write Formulas That Use Delegation

Always write formulas that can be delegated to the cloud


datasource. Delegation is when data operations such as filter,
lookup and search are performed in the cloud (i.e. SharePoint,
Dataverse) instead of on the user’s device. Data operations can be
performed faster in the cloud because there are more computing
resources than a laptop or mobile phone. Also, less data will be
transmitted to the user’s device because it has already been filtered
by the datasource.

Cache Data In Collections And Variables

Store frequently used data in collections and variables. Data


stored in memory can be accessed very quickly. A cloud
datasrouce must receive a connector call, perform a query and
send a response back to the device before data can be
displayed on-screen.

Limit The Size Of Collections

Limit the size of collections to the least number of rows and


columns that required by the app. Mobile devices have tight
restrictions on memory usage. Collections are stored in the device’s
memory. If too much memory is in use the mobile operating system
will kill the Power Apps process and the app will crash.

Minimize Number Of Controls On A Single Screen

Every control added to a screen increases memory usage when the


screen loads. Try to achieve a screen design with the fewest
controls possible. A screen with fewer controls on it is faster to
render and consumes less memory. For screens with too many
controls, consider dividing their functionality across multiple
screens.
Use a gallery to display repetitive controls . Each control in a gallery
only counts as 1 control no matter how many times it is shown .

Enable DelayOutput For Text Input Controls

The Text property of a text input is updated after each keystroke.


Set the DelayOutput property of the input to true to wait until after
the user stops typing. This is useful when building a search bar
connected to a gallery. With DelayOutput enabled the app will only
make one request to the datasource when typing stops, as opposed
to each keystroke.


 Limit the number of data connections.
 Reduce the number of controls.
 Avoid control reliance between screens.
 Use delegation.
 If Working with huge datasets.we should Write
Formulas That Uses Delegation for data processing
 Load Multiple Datasets Concurrently
 • Cache Data In Collections using CLEARCOLLECT
And Variables
 • Limit The Size Of Collections
 • “Batch Patch” Multiple Changes To A Datasource
Table At Once
 • by reducing Code In OnStart Property
 • Minimize Number Of Controls On A Single Screen
 • Enable DelayOutput For Text Input Controls
 • Do Not Reference Controls On Other Screens

How to call a power automate flow from power app ?

We can do this in 2 ways from power apps and from


automate, in power app we need to create a button and the
click on action then power automate, then create a new flow
chose power app button and the send an email whenever the
flow gets triggered,

Then go to PA flow gets added into list just add that flow
done. Whenever we click on btn flow gets triggered.
2 nd way is from the automate create an instant flow
select PA trigger configure the email done flow will be added to
the PA list.

What is the loading spinner in PowerApps?


Loading Spinner in PowerApps is an animated
element that helps to indicate loading is in process. When the
loading data is slow, in that case, the loading spinner will appear.
This means, it helps to let the user know that the process is in
busy mode and it may take some time to appear.

How do I cache data in PowerApps?

Ans:

To use this option, go to https://make.PowerApps.com > Apps >


Select your Portal app click Settings and click Administration: On
the left menu click on Portal Actions and click the Restart option:
This will restart the website app service and clear the server-side
cache.

How do I save an attachment in PowerApps?

Ans:

Then, to enable attachments you need to:

 Select the forms that you want to add attachments to.


 In the properties pane, click on the Data field to open the
data panel.
 In the list of fields, find the Attachment field and enable it.
 Save and publish your app.
How to navigate one PowerApp to another PowerApp using
Button Event??

Here I am passing my target URL like below: .

Navigate (https://web.powerapps.com/apps/813182fb-57bf-66a1-
5484-7404677d9e5c,ScreenTransition.Cover).

https://www.c-sharpcorner.com/article/how-to-trigger-a-
power-automate-flow-from-powerapps/

You might also like