Skip to main content

Notifications

Community site session details

Community site session details

Session Id : WgQPy0bbEc88KGfD0IR6xw
Power Apps - Building Power Apps
Answered

Solved: union operator or function to append one table to another

Like (2) ShareShare
ReportReport
Posted on 27 Jan 2017 11:33:29 by 6,949

Hi, does anyone know if it possible to create the union of two tables?  I.e. to be able to append TableB to TableA?

 

I know that you can use Collect (or ClearCollect) to do this, but this requires calling an action.  This is not what I am asking for.

 

Ideally I would like to be able to make then Items property of my gallery something like:

 

TableA+TableB

 

or

 

Table(TableA, TableB)

 

But netiher of these work.

 

Any ideas?

  • cindyc Profile Picture
    on 04 Feb 2022 at 20:26:09
    Re: Solved: union operator or function to append one table to another

    Thank You rshafique!,

     

    I was also able to get this to work based on what you did.  What I needed to do was combine the values in a column in a Sharepoint list with those in an excel based list of Lookup values that acted as the choices I wanted to show on a form dropdown. But ultimately what I really wanted to combine these 2 to display on the form, because I also have an "Other" option whereupon the user can enter a custom value, if none of the values in the list represent what they need. For example;

     

    Excel Lookup List:

    MANUFACTURERS

    Manufacturer_1

    Manufacturer_2

    Manufacturer_3

    Manufacturer_4

     

    SP LIST COLUMN VALUES:

    Device Manufacturers

    Manufacturer_1

    Manufacturer_2

    Manufacturer_5 <-- entered as a custom value from the user

    Manufacturer_6 <-- entered as a custom value from the user

     

    Here is the combined list I wanted on the form dropdown, so I can show the base values from the lookup, and also any new custom values entered by the user, with no duplicate values:

     

    FORM MANUFACTURER DROPDOWN:

    Manufacturer_1

    Manufacturer_2

    Manufacturer_3

    Manufacturer_4

    Manufacturer_5 <-- entered as a custom value from the user

    Manufacturer_6 <-- entered as a custom value from the user

     

    And here is how I did that based on your example:

     

    Entered in Screen1.OnVisible --> this is a collection of base lookup values from an excel spreadsheet "Table" called "MANUFACTURER_TABLE".

     

     

     

    ClearCollect(collection_Manufacturer, MANUFACTURER_TABLE)

     

     

     

    Entered in Screen1.OnVisible --> this is a collection of values from a Sharepoint List (SP_TRANSACTION_LIST) column called "Device Manufacturers" where the transactions are entered from a form. If users enter a custom value, these new values should show up in the drop-down.

     

     

     

    ClearCollect(list_Manufacturers,
    Ungroup(
    Table(
    {list_ManufacturersOptions: Choices(SP_TRANSACTION_LIST.Device_x0020_Manufacturers)},
    {list_ManufacturersOptions: ["Other"]}
    ),
    "list_ManufacturersOptions"
    ));

     

     

     

     

    Entered in Screen1.OnVisible --> this is a collection combining the above collections and calling the new one "tables_Manufacturers" - "list_Manufacturers" and "collection_Manufacturer", not grouped or sorted, basically just appending one table to another.

     

     

     

    ClearCollect(tables_Manufacturers, Ungroup(Table({all_Manufacturers: list_Manufacturers},{all_Manufacturers: collection_Manufacturer}), "all_Manufacturers"));

     

     

     

     

    Entered in Screen1.OnVisible --> this is a new collection based on the above collection "tables_Manufacturers" but is now only showing Distinct values in the dropdown. Keep in mind here that the Column Name in my example within my Sharepoint list is actually "Device Manufacturer", but when I tried to enter that inside "Distinct", the powerapps screen editor gave an error when I tried it and tried Device_X0020_Manufacturer.  When I put in "Value" as below inside "Distinct", it worked. So be aware, when you put in the column value name like "Column Name" or COLUMN_NAME or Column_X0020_Name inside "Distinct", that actual column name may not work, especially one that has spaces in it, and you may need to put in "Value", or "Result" like below.

     

     

     

    ClearCollect(dist_Manufacturers, Distinct(tables_Manufacturers, Value));

     

     

     

     

    Thanks for the help, I search a bunched and could not find a solution that worked to combine to tables or collections together and not repeat rows, and this worked for me!

  • rshafique Profile Picture
    8 on 27 Jun 2019 at 04:00:50
    Re: Solved: union operator or function to append one table to another

    With the above solutions I was getting list of TableA visible but only Blank Cells for Items of TableB. I figured the reason was my tables had more than one column.

    Therefore I used a bit of a work around:

    First I made a collection (on the on visible property of the screen) which is:
    ClearCollect(combined, {Comb:Distinct(TableA,DesiredColumnName)},{Comb:Distinct(TableB,DesiredColumnName)})

     

    Then I used a Dropdown control to view the combined data by ungrouping the collection:

    Set Item property of the Dropdown control to:

     

    Ungroup(combined,"Comb")

  • Community Power Platform Member Profile Picture
    on 29 Nov 2018 at 15:22:02
    Re: Solved: union operator or function to append one table to another

    Hi @martinav

     

    I was able to resolve my issue.   We were using two separate SharePoint list to get around the 2000 limit and I needed a way to union the two list together into one collection.  I was able to do that using ClearCollect for the first list and then a Collect to append the records from my second list the collection.   I didn't know that "Table" was a function when I sent my initial quesiton.  

  • martinav Profile Picture
    3,340 on 29 Nov 2018 at 14:47:22
    Re: Solved: union operator or function to append one table to another

    @Anonymous,

     

    Please forgive me.  I'm not sure I fully understand what you are asking.  

     

    I think you are saying that your ungroup function performs the same as the one I posted.  

     

    Then your second statement.  using AND to combine them?  

     

    The row limitation issue I have is in the my filters not being able to search the entire sharepoint list items. (<2000)   Getting them into the collection can be done in 2,000 item chunks.  The method I used was to get the first 2000, and the last 2000, and then doing the merge together, eliminating duplicates using the Not() command for List 2.  Then, I can do all of the filter statements I want in the collection without delegation issues.  

     

    I'm not entirely sure this helps.  Please try to restate your question if you need too.

     

    Regards,

    Rod

  • Community Power Platform Member Profile Picture
    on 28 Nov 2018 at 16:05:40
    Re: Solved: union operator or function to append one table to another

    Hi @Meneghino and @martinav , 

     

    I am trying to simulate a union of two sharepoint list to be used in one collection.   I tried both of the methods with the "Ungroup" and the ClearCollect with the filter based on no duplicate IDs.  

    For this one what does the first "Table" represent? 

    Ungroup(Table({MyTables: TableA},{MyTables: TableB}), "MyTables")

     

    For this one is there a way to do a collection from two different list using an && ?  The two list that I have are the same but we're separating to accomadate for the row limitation in PowerApps.  

    ClearCollect(
    MDL_All,
    List1,
    Filter(
    List2,
    Not(Id in List1.Id)))

  • martinav Profile Picture
    3,340 on 30 Oct 2018 at 13:51:12
    Re: Solved: union operator or function to append one table to another

    Thats a good suggestion.  I ended up doing it this way:

     

    ClearCollect(
     MDL_All,
     List1,
     Filter(
     List2,
     Not(Id in List1.Id)))

    Props to @CarlosFigueira

  • Meneghino Profile Picture
    6,949 on 30 Oct 2018 at 10:40:21
    Re: Solved: union operator or function to append one table to another

    I would just wrap a Group() function around the whole lot to eliminate duplicates

  • martinav Profile Picture
    3,340 on 29 Oct 2018 at 19:34:24
    Re: Solved: union operator or function to append one table to another

    How could you handle this if you wanted no duplicate line items?  Provided there were completely duplicated rewords in either table?

  • Verified answer
    Meneghino Profile Picture
    6,949 on 27 Jan 2017 at 11:41:44
    Re: Solved: union operator or function to append one table to another

    Got it!  Here is how you do it:

     

    Ungroup(Table({MyTables: TableA},{MyTables: TableB}), "MyTables")

    I am beginning to think you can do anything with PowerApps

     

    PS This will not work if either of the two tables has no rows, i.e. is an empty table.

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Understanding Microsoft Agents - Introductory Session

Confused about how agents work across the Microsoft ecosystem? Register today!

Warren Belz – Community Spotlight

We are honored to recognize Warren Belz as our May 2025 Community…

Congratulations to the April Top 10 Community Stars!

Thanks for all your good work in the Community!

Leaderboard

#1
WarrenBelz Profile Picture

WarrenBelz 146,786 Most Valuable Professional

#2
RandyHayes Profile Picture

RandyHayes 76,287 Super User 2024 Season 1

#3
Pstork1 Profile Picture

Pstork1 66,093 Most Valuable Professional

Leaderboard