web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

Community site session details

Community site session details

Session Id :
Power Apps
Unanswered

Text search box

(1) ShareShare
ReportReport
Posted on by 4

Hello I am new to PowerApps and I am having issues with the search Items box. I created a simple test list in sharpoint. I want to be able to search the name and have it display from the list below it. I am not sure if I need to make changes in the BrowseGallery1-items area or the TextSearchBox1 area. Thanks for any help!

 

 

Screen Shot 12-15-17 at 01.14 PM.PNG

 

 

 

Screen Shot 12-15-17 at 01.14 PM.PNG

Categories:
I have the same question (0)
  • Verified answer
    v-micsh-msft Profile Picture
    on at

    Hi @ithinkican123,

     

    Yes, you should modify the Items property of the Gallery control.

    To have the search box work with the proper field, filter or search function should be used here.

    For example, if your SharePoint List has a Field Named with "Name", and you would like to search it with the Search Box, then the formula under the Items property should be modified as below:

    SortByColumns(
    Filter(ListName,
    StartsWith(Name, TextSearchBox1.Text)),
    "Title",
    If(SortDescending1, Descending, Ascending))

    To have the Name Field displayed in the Gallery, please first select the Text field in the first card in Gallery, then under the Data panel, switch the field to ThisItem.Name:

    32.PNG

     

    Adding some more references:

    Gallery control in PowerApps

    Understand data forms in Microsoft PowerApps

     

    Regards,

    Michael

  • ithinkican123 Profile Picture
    4 on at

    Thanks this worked perfect. 

  • babeach Profile Picture
    2 on at

    I'm new to PowerApps as well. I created a simple powerapp from a SharePoint list and it works great.

    But here's my issue:

     

    The list I created shows a compilation of remote offices and their Names (Title column) and locations including Street, City, State, ZIP, etc. The current BrowseGallery1 uses a Search feature that filters the list by Title.

    However, over several years time in referring to some locations they are identified by the name of the City where they are located. So to facilitate new users, I need to be able to search by Title and City, and have the results displayed.

     

    In the current view which is the default view, the Search is done by filtering the results using:

     

    SortByColumns(Filter('datasource', StartsWith(Title, TextSearchBox1.Text)), "Title", If(SortDescending1, Descending, Ascending))

     

    As I stated: this works great if I only need to search the 'Title' column. I've tried modifying the syntax to include the additional column search but I know ity is not formatted correctly and throws errors in the PowerApp edit windows.

    But how can I modify that string to search for the search string in several columns and display the results?

     

    Any help wopuld be greatly appreciated!

  • iAm_ManCat Profile Picture
    18,228 Most Valuable Professional on at

    Hey @babeach,

     

    I don't know if you're still looking for a solution for this.. the problem is that you've got complex Text Fields - when you do a filter on this, it looks at the literal text (so, the formula) rather than the lookup values.

     

    I've recently created a gallery where multiple items within it are searchable - the solution was to create multiple invisible labels where the Text is just ThisItem.Thingy then to have the initial search filter run an Or() logic search of those items.

     

    I've attached pic of a few of the fields I set up (some require that you use .Value) and below is the code solution:

     

    SortByColumns(
          Filter('Issue and Actions',
             (
                Or(
                      StartsWith(Title, TextSearchBox1.Text),
                      StartsWith(Owner.DisplayName, TextSearchBox1.Text),
                      StartsWith(Contract.Value, TextSearchBox1.Text),
                      StartsWith(TypeOfIssue.Value, TextSearchBox1.Text),
                      StartsWith(Text(IssueNo), TextSearchBox1.Text)
                     )
             )
       ),
       "Title",
       If(SortDescending1, Descending, Ascending)
    )

     

    Fields.png

     

    *Edit*

     

    In order to delegate the searches back to Sharepoint instead of limiting your results for anything with .Value or .Text columns:

     

    Create a new Text column in SharePoint, Call it TheReferredThingActualValue

    Refresh the data source in your app, add that column as a field within the gallery, make it invisible.

    In any of your edit/new screens have your app fill the Default value of the Textbox of TheReferredThing Card with Text(TheReferredThing.Value) during every edit/new item (or go into sharepoint and retrospectively copy/paste the text value for all historic items OR create a Flow that extracts the Thing.Value and populates the new Text Column with those values).

     

    Once those fields are filled, you can change your filter to:

    Filter('Issue and Actions',
             (
                Or(
                      StartsWith(Title, TextSearchBox1.Text),
                      StartsWith(OwnerDisplayNameActualValue, TextSearchBox1.Text),
                      StartsWith(ContractActualValue, TextSearchBox1.Text),
                      StartsWith(TypeOfIssueActualValue, TextSearchBox1.Text),
                      StartsWith(Text(IssueNo), TextSearchBox1.Text)
                     )
             )

     

    Which will then be Delegable

  • mattyB Profile Picture
    4 on at

    Hey @iAm_ManCat - I really appreciate you jumping in here. I firmly believe what you're suggesting is the solution I am looking to implement. Much like @babeach, I've got a SharePoint list, where I want two fields (which are drop downs and have a predefined list of values) searchable - CaseOwner, and status. Status has values like New/In Progress/Closed. CaseOwner has different Names of people who own the case. Much like everyone else has stated, the initial search box will let me search for the name of the, in my case, customer; but any time I add other columns to search by, my gallery goes blank. I think I get an error suggesting that text is the required data type. 

     

    When I read your answer however, and being so very new to PowerApps, I was confused by the main important message, do you mind further clarifying? 


    I've recently created a gallery where multiple items within it are searchable - the solution was to create multiple invisible labels where the Text is just ThisItem.Thingy then to have the initial search filter run an Or() logic search of those items.

     


     

    tempsnip.jpg 

  • TomBelgium Profile Picture
    on at

    Hi all,

     

    I am also new to PowerApps but I'm trying to make a simple app to access the Open tasks from a sharepoint list.

    In the browsegallery, I add following function which should seem to work (according to this post):

    SortByColumns(
          Filter('Acties - taken',
             (
                Or(
                      StartsWith(Title, TextSearchBox1.Text),
                      StartsWith(ActieManager, TextSearchBox1.Text),
                 )
             )
       ),
       "Title",
       If(SortDescending1, Descending, Ascending)
    )

     

    However, I get an error like included in the screenshot. The field Actiemanager is a person field so probably something is wrong there. I can see that I can use Actiemanager_dataCard1 but that doesn't seem to do the trick either.

     

    Furthermore, I would actually search not only the start but I would like to search all fields. For example, all list items which contain my initials. 

    Thx for advice, help, 

     

    Best,

    Tom

  • TomBelgium Profile Picture
    on at

    Hi there,

     

    just found out that I can search for Actiemanager.Displayname. 
    When I use this in the filter, it works fine.
    The only question remains, is there another function than StartsWith, fx Contains or sth like that?

    Best

  • iAm_ManCat Profile Picture
    18,228 Most Valuable Professional on at

    Hi Tom,

     

    You can use 'in' but it's not a delegable command currently so you'll be limited to what is filtered by delegation before it checks that item.

     

    When you use Actiemanager.Displayname does it have the blue squiggly lines beneath to show that it's not delegable?

     

    Cheers,

    Sancho

  • iAm_ManCat Profile Picture
    18,228 Most Valuable Professional on at

    Hi @mattyB,

     

    Could you paste your code here for the items property of the gallery once you've added in the additional filters?

     

    Cheers,

    Sancho

  • Community Power Platform Member Profile Picture
    on at

    This si the filter i am using and i am want to search by department name, manager name and the title: 

     

    If(IsMatch(admins.users,User().Email,Contains)=true, SortByColumns(Filter('Out of office (No approvals)',
    StartsWith(Title, TextSearchBox1.Text)
    , If(
    Submitted=false && Approved=false && Declined=false && Cancelled=false,
    true,
    If(Submitted, 'Status of Request'.Value = "Submitted", false) || If(Approved, 'Status of Request'.Value = "Approved", false) || If(Declined, 'Status of Request'.Value = "Declined", false) || If(Cancelled, 'Status of Request'.Value = "Cancelled", false )
    ) ), "Title", If(SortDescending1, Descending, Ascending)), SortByColumns(Filter('Out of office (No approvals)', StartsWith(Title, TextSearchBox1.Text), If(Manager.Email = User().Email, Manager.DisplayName = User().FullName, Requester.DisplayName = User().FullName) , If(
    Submitted=false && Approved=false && Declined=false && Cancelled=false,
    true,
    If(Submitted, 'Status of Request'.Value = "Submitted", false) || If(Approved, 'Status of Request'.Value = "Approved", false) || If(Declined, 'Status of Request'.Value = "Declined", false) || If(Cancelled, 'Status of Request'.Value = "Cancelled", false )
    ) ), "Title", If(SortDescending1, Descending, Ascending)))

     

     

     

    I cannot use your formula because it gives error.

     

    Capture.PNG

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

Forum hierarchy changes are complete!

In our never-ending quest to improve we are simplifying the forum hierarchy…

Ajay Kumar Gannamaneni – Community Spotlight

We are honored to recognize Ajay Kumar Gannamaneni as our Community Spotlight for December…

Leaderboard > Power Apps

#1
WarrenBelz Profile Picture

WarrenBelz 717 Most Valuable Professional

#2
Michael E. Gernaey Profile Picture

Michael E. Gernaey 329 Super User 2025 Season 2

#3
Power Platform 1919 Profile Picture

Power Platform 1919 268

Last 30 days Overall leaderboard