Deep dive into delegation - what exactly is it? (2023)

Hello fellow PowerApps!

This article is the first in a series called Deep Dive into Delegation, where I try to explain in depth how it works and how to get around different data sources (SharePoint, SQL, CDS)

  1. What exactly is it?

Anyone who has worked on a medium to advanced scenario in PowerApps has probably heard about delegation, at least on this alert.

Deep dive into delegation - what exactly is it? (1)


The first thing to do to understand what this mysterious thing is is to look at itthis articlefrom the PowerApps documentation, which gives a good overview of what delegation is.

What is this ?

(Video) Deep Dive into Commodity Jurisdictions

One of the strengths of PowerApps is all of its connectors that allow you to build applications around powerful data systems, the most famous of which are Excel, SharePoint, SQL, and Common Data Service (CDS). Delegation is a PowerApps feature that allows you to handle a large dataset in your apps while maintaining decent performance and resource consumption.

When building an app, you can interact directly with the data source to display a list of items (or records or records...) or information about an item. What happens is that whenever possible,PowerApps delegates the data retrieval process to the data source itselfso the data source retrieves small data sets to ensure performance consistency. When the user requests more data, such as scrolling through a list of items in the gallery, the data source provides another small set of data to display PowerApps. You can see the phenomenon that when you scroll the gallery plugin in the SharePoint list, load points appear on top of the app, which means more data is loaded from the data source. We can even quantify small data sets retrieved by the data source by using a label to display this number.


How does it work?

I have a simple gallery connected directly to my SharePoint list and a label that counts the items in my gallery. When I load the gallery for the first time, let's say when I start the application, the label states that only 100 items are gifts in my gallery. This is the first set of data retrieved directly by SharePoint.

Deep dive into delegation - what exactly is it? (2)

When I scroll down, I tell my app that I want to see more data from my data source, so SharePoint takes 100 more items.

Deep dive into delegation - what exactly is it? (3)

I can scroll through all my 2000 items with no performance issues because SharePoint has itgot it back step by step.

Deep dive into delegation - what exactly is it? (4)

Not all data sources support delegation

Yes, yes, it's a great feature that ensures you can work with large amounts of data, as 90% of business applications require ... but there is a but (actually at least 2).Only works withsome data source:

(Video) Little SIS Deep Dive: Delegation

  • SharePoint
  • SQL
  • Shared data service
  • Dynamics 365
  • Sales force

If you plan to work with a large amount of data (more than 2000), consider working only with the data sources listed above. With others, it is (yet?) not possible.

What happens when my data source cannot be delegated? I want to use the same data, but this time in an Excel file, so PowerApps won't be able to delegate data retrieval.

Deep dive into delegation - what exactly is it? (5)

Here it is"delegation limit"appears. Knowing that the data source I'm using couldn't handle delegation, PowerApps locally loaded a small amount of data into my app's temporary internal storage: the first 500 items downloaded.Whenever I refer to my excel data source, I always only look at the 500 itemsalthough my excel table has 2000 items stored.


Deep dive into delegation - what exactly is it? (6)

The data is not loaded incrementally (100 items at a time), I have direct access to the top 500 items in my table (since it's a locally stored sample), but I can't scroll down to see more than those 500 things.

The delegation limit can be increased to 2000 items. (File/Preferences/Advanced)

Not all operations can be delegated

I've previously highlighted how delegation can work with the simplest call to a delegated data source: no filtering, no sorting, no data transformation. Can you see the second "but" coming?

If you are working with a large data set,you will only be able to use delegated operations(functions and operators). Just as PowerApps delegates the step-by-step process of retrieving data to the data source, it also delegates all the functions and operators that you can use to retrieve data.

To know exactly which operations can be delegated to each data source, [this article] is a reference.

(Video) Deep Dive into Action Plans, Tags & Automations with Albert Vasquez | Bosses in Action

For example, PowerApps can delegate filtering to SharePoint, but only with the "=" operator.

Going back to my SharePoint list, I filter out all expenses titled "Lunch".

Deep dive into delegation - what exactly is it? (7)

No delegation warning in my formula means it can be delegated.

I have a total of 490 items titled "Lunch" and I see that SharePoint has retrieved the first small dataset. SharePoint itself filters its own data and downloads the results to PowerApps.

Deep dive into delegation - what exactly is it? (8)

After scrolling down I am able to see all my items downloaded small set by small set by delegation in SharePoint.

What if the formula I wrote cannot be delegated? As soon as I use a non-delegable function or operator I fall for a non-delegable data source. This means that PowerApps will load the first 500 items locally and only perform the non-delegable action on that dataset.

For example, PowerApps can delegate filtering to SharePoint, but not to the "in" operator.

If in my SharePoint list I want to list all requests whose title contains "nch" (as in "Lunch"), I run into a delegation problem.

Deep dive into delegation - what exactly is it? (9)

(Video) What is a Converter Delegate in C# | How to convert Object from one type to another | C# tutorials


Since my formula cannot be delegated, PowerApps responds by loading the first 500 items locally and ONLY handles the filter on those datasets.

In total, I have 490 requests that contain "nch" in the title, but only 177 of them are in the top 500 of my list. And that's exactly what my gallery shows.

Finally, I have an incomplete set of data that cannot be used.

A simple misunderstanding

One of the biggest misconceptions I see is using a local PowerApps collection to avoid the delegation problem.

You actually avoid the delegation warning this way, but not the problem.Collections do not support delegation (since it is a locally stored dataset), so collecting items from a large data source that can be delegated will not change anything because your collection will only contain the first 500 items from the data source. It is during the ClearCollect() function that the delegation problem occurs, resulting in only the first 500 elements being fetched.And of course, there is no delegation warning when you use a non-delegable function on a collection, because when you perform an operation on local data, delegation is absolutely zero, but you just want to perform this operation on a limited set of data.

The other common misconception is that delegation only happens when retrieving a set of data (array, table, list...), so retrieving a single element is not subject to delegation. This is wrong, delegation happens every time you have an interaction with an external data source. The best example is the Last() function, which retrieves only one element, the last one from the table. In my SharePoint list with 2000 items, the formula "Latest ("Expenditure Requests").ID' gets '500' not '2000' as I might have expected: This is the last of the 500 items fetched locally, since the formula cannot be delegated.

In future articles in this series, now that the concept of delegation is crystal clear, I'll dive into the delegation issues you may encounter with the most popular data sources and how you can work around them.

Feel free to comment or send a DM if some aspects of the delegation are not clear.

Teo

FAQs

Deep dive into delegation - what exactly is it? ›

Delegation is a decision about who will process the operations: the Power Apps client or the data source server. Our goal is to delegate the operation to the server. The server will process the request at scale, returning the entire package of the requested data.

What is delegate in Power Apps? ›

Delegation is where the expressiveness of Power Apps formulas meets the need to minimize data moving over the network. In short, Power Apps will delegate the processing of data to the data source, rather than moving the data to the app for processing locally.

How do you overcome delegation in Power Apps? ›

Limit non-delegable functions and records to 1 if possible and use delegable functions in your queries. Create static views where appropriate to reduce the number of records needed for functions such as additional filters.

Is search delegable in Power Apps? ›

Search is Delegable in Azure SQL, but you you need a premium connector (and per user licenses) for this. Ultimately, it is the data source (not Power Apps) that determines what it is prepared to accept Delegation for.

How does delegate work? ›

Delegation is the act of redirecting tasks and initiatives to other team members. You might delegate work to distribute responsibility more evenly, or because the task or initiative is more relevant to another team member's priorities, skills, or interests. Knowing when and how to delegate makes you a better manager.

What is an example of delegation? ›

Some examples of delegation in the workplace with varying levels of trust and autonomy include: Giving directions to a subordinate and telling them exactly what to do. Assigning someone to compile research, gather feedback, and report back to you so you can make informed decisions.

How do you resolve a delegation warning? ›

How to resolve delegation warning message on PowerApps formula?
  1. First Warning: Filter('dataSource', 'Created On' >= DateAdd(Today(), -3))
  2. Second Warning:Filter('dataSource','Associated Column'.cr9fd_name = lbl.Text )
  3. Third Warning: LookUp('dataSource',cr9fd_fullname = User().FullName).Project.

How do I turn off delegates? ›

Click the “File” menu in the top left corner of the Outlook window. Under the “Info” tab, click on “Account Settings” then select “Delegate Access“. The “Delegates” window will appear. Click on the delegate you wish to remove, click “Remove“, then “OK“.

What is the max delegation in Power Apps? ›

The default delegation limit in PowerApps is 500 records. Delegation does not apply to data sets with less than 500 records, they will work correctly without any issue. Also you can increase this limit to be up to 2000 records.

What is the difference between Dataverse and SharePoint list delegation? ›

Any web part in SharePoint that holds content can be considered a SharePoint List. The key difference of Dataverse is that it is a relational database just like Microsoft SQL. This will allow you to form relationships and lookups to other tables of data.

What is the difference between search and filter in Power Apps? ›

Unlike Filter and LookUp, the Search function uses a single string to match instead of a formula. Filter and Search return a table that contains the same columns as the original table and the records that match the criteria.

What are the benefits of delegation? ›

Delegation helps to boost team moral, improve efficiency and productivity, and promotes enthusiasm, innovation, and cooperation – all of which are vital to a company's bottom line.

Why do we need delegation? ›

Delegating effectively saves time, helps you as a leader and your team develop as professionals, prepares you to manage larger teams, and inspires employees and team members to perform better. Delegation is an important management skill to work on through your career.

What are the 3 golden rules of delegation? ›

Three Rules For Keeping The Monkey Off Your Back

To start, don't keep the monkey. Make a list of projects to keep and to delegate. Discuss and decide with your employees how much oversight they need for each project so you don't micromanage them.

What are the 4 types of delegation? ›

Types of Delegation of Authority
  • General or Specific Delegation. It is based on the job assigned.
  • Formal or Informal Delegation. It is based on the process of giving authority.
  • Top to bottom or bottom to top Delegation. It is based on the hierarchy.
  • Lateral Delegation. It requires a group or team to work in parallel.

What is delegation in simple words? ›

Delegation is the assignment of authority to another person (normally from a manager to a subordinate) to carry out specific activities. It is the process of distributing and entrusting work to another person, and therefore one of the core concepts of management leadership.

What are the 5 types of delegation? ›

The main types of delegation include:
  • General or specific delegation. ...
  • Formal or informal delegation. ...
  • Lateral delegation. ...
  • Principle of results expected. ...
  • Principle of authority and responsibility. ...
  • Principle of absolute responsibility. ...
  • Principle of scalar. ...
  • Principle of authority level.
Sep 30, 2022

Is delegating lazy? ›

Though it might be perceived as laziness when you delegate a menial task to an employee, as long as you intend to free up more productive time for yourself, it's a smart strategy.

What is delegate permissions? ›

Using Delegate Access , you can give someone permission to act on your behalf. For example, you might have an assistant that you want to create and respond to meeting requests for you. Some assistants might also monitor a manager's Inbox and send email on behalf his or her behalf.

How do I remove myself as a delegate from a team? ›

Select Settings and more (ellipsis) next to your profile picture at the top of Teams and choose Settings. Under General, click on Manage delegates. Select the Your delegates tab and click on More options (ellipsis) next to your delegate's name, then select either Edit permissions or Remove delegate.

What is an example of bad delegation? ›

Bad delegation examples often show some common signs. Here are a few signs that your delegation may be insufficient: You constantly seek updates. The tasks leave the delegate confused.

What is the common fault in delegation? ›

One of the top delegation mistakes is not knowing what to delegate. Do not delegate tasks that are not in tune with what your team is capable of: or better yet, find out first what your team is capable of, and then delegate.

Can delegates delete emails? ›

You can grant a delegate permission to read items in your folders or to read, create, change, and delete items.

Why does my Gmail say delegated? ›

In Gmail, delegated accounts and shared inboxes are the same thing. Use them to grant people or groups (delegates) access to your Gmail account, resulting in an inbox with benefits such as: Automatically sorting email with filters (rules) Keeping a record of correspondence by archiving email.

What does manage delegates mean? ›

What is delegation in management? In management, delegation is the act of assigning tasks to team members in a department or project team. Often, these are tasks that the manager might have performed when the team was smaller or had fewer obligations.

What does it mean to delegate power? ›

delegation of powers, in U.S. constitutional law, the transfer of a specific authority by one of the three branches of government (executive, legislative, and judicial) to another branch or to an independent agency.

What is the difference between delegate and notifications? ›

One obvious difference is that delegation is for sending a one-to-one message (to which the receiver can return a value) whereas notification is a one-to-many message (where the receivers cannot return anything to the sender).

What does delegate user mean? ›

Delegation is when a person authorizes another to serve as his or her representative for a particular task. With the Delegated Access framework, a user can authorize another user to perform a task on their behalf by delegating access to perform a transaction.

What is delegate vs empower? ›

Delegation and empowerment are both effective tools for effective leadership used for different business situations. In other words, empowerment is allowing employees to act on their own behalf whereas delegation is giving enough lead for them to act on your behalf as their manager.

Is delegate good or bad? ›

A massive benefit of delegating is growing a team in numbers and employee skills. By sharing the load of responsibilities, you're not only investing in your team's careers, but it also means you won't waste time, leading to increased productivity and business output.

What are some examples of delegated powers? ›

The delegated powers include the power to coin money, to regulate commerce, to declare war, to raise and maintain armed forces, and to establish a Post Office.

What are the three types of delegation? ›

Types of Delegation of Authority
  • General or Specific Delegation. It is based on the job assigned.
  • Formal or Informal Delegation. It is based on the process of giving authority.
  • Top to bottom or bottom to top Delegation. It is based on the hierarchy.
  • Lateral Delegation. It requires a group or team to work in parallel.

What are the two types of delegation? ›

The main types of delegation include:
  • General or specific delegation. ...
  • Formal or informal delegation. ...
  • Lateral delegation. ...
  • Principle of results expected. ...
  • Principle of authority and responsibility. ...
  • Principle of absolute responsibility. ...
  • Principle of scalar. ...
  • Principle of authority level.
Sep 30, 2022

What is delegation in Android? ›

A delegate is just a class that provides the value for a property and handles its changes. This allows us to move, or delegate, the getter-setter logic from the property itself to a separate class, letting us reuse this logic.

What kind of person is a delegate? ›

a person designated to act for or represent another or others; deputy; representative, as in a political convention.

What are the types of delegate? ›

  • Singlecast : A delegate that represents only a single function is known as Single Cast Delegate Or we can say It contains reference of only one method at a time. ...
  • Multicast Delegate: Multicast Delegate is derived from System. ...
  • Generic Delegates : A delegate that can define its own type parameters.
Mar 29, 2019

What does delegate mean at work? ›

Delegation refers to the transfer of responsibility for specific tasks from one person to another. From a management perspective, delegation occurs when a manager assigns specific tasks to their employees.

What leadership style is best for delegation? ›

A delegating leadership style is a low task and relationship behavior approach to leadership where a leader empowers an individual to exercise autonomy. Employing this approach entails providing the individual with the big picture, then trusting them to deliver agreed-upon results.

How do you delegate the best? ›

You will win best delegate by being nice, friendly and human. If you don't, it will be easier for others to turn the room against you. The P5 caucus gives you a chance to speak to the others away from the room. However, according to almost all Rules of Procedure, the rest of the committee get to set in an unmod.

Does a good leader delegate? ›

Successful leaders are master delegators and masters at using Key Principles for effective communication. But leaders will only empower employees if they are able to delegate the right tasks to the right people. What does this mean? Well, the task must of course empower, engage, and encourage the person to develop.

Videos

1. Here's EXACTLY how to delegate every business task | Delegation for Small Businesses
(Next Wave with Jen)
2. What Lies Beneath - A Deep Dive Into Clojure's Data Structures - Mohit Thatte
(ClojureTV)
3. Understanding the Delegation of Power and Authority
(Geneva Graduate Institute)
4. Delegation 101 for Business Owners and Freelancers
(AIM Social Media Marketing)
5. Delegation: First 5 Things You Must Stop Doing
(Women Conquer Business)
6. Aave - Stable Loans and Credit Delegation
(Campbell Harvey)

References

Top Articles
Latest Posts
Article information

Author: Manual Maggio

Last Updated: 23/07/2023

Views: 5683

Rating: 4.9 / 5 (69 voted)

Reviews: 84% of readers found this page helpful

Author information

Name: Manual Maggio

Birthday: 1998-01-20

Address: 359 Kelvin Stream, Lake Eldonview, MT 33517-1242

Phone: +577037762465

Job: Product Hospitality Supervisor

Hobby: Gardening, Web surfing, Video gaming, Amateur radio, Flag Football, Reading, Table tennis

Introduction: My name is Manual Maggio, I am a thankful, tender, adventurous, delightful, fantastic, proud, graceful person who loves writing and wants to share my knowledge and understanding with you.