cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
faithdwn
Frequent Visitor

Gallery Items

I'm new to powerapps and I am trying to edit an app that was started by another associate. 

 

I have two SPLists: PurpleScan and PIVTickets.

PurpleScan is the list i use to submit any barcodes created with the columns: Title, AssetType, Department and Serial Number. For every unique Serial Number, there is a unique barcode "Title" assigned to it. All through the scanbarcode/findbarcode feature.

PIVTickets is the list where all requests are submitted. 

 

I have a screen that has a gallery (MyTicketsScreenGallery) connected to PIVTickets form. OnSelect property is "Set(SelectedTicket,ThisItem)". Items Property is in the picture below.

What I would like is for PIVTickets list/ MyTicketScreenGallery to display the Barcode "Title" based on the selected Serial Number. 

 

I have created another non visible gallery refrencing the PurpleScan list. However, I can't figure out the formula to filter out the "Title" based on the (MyTicketScreenGallery) Selected Ticket.

 

Please Advise.

 

12 REPLIES 12
LRVinNC
Resident Rockstar
Resident Rockstar

Based on what I see here, try using a Lookup to set your Barcode Title, something like: Lookup(PurpleScan, ThisItem.SerialNumber = PurpleScan.SerialNumber, Title) which says look in the PurpleScan table for a match between the SerialNumber of the current item in PIVTickets and a serial number in PurpleScan. If you find one, show the title column from Purple Scan. The syntax may not be exactly right depending on your variable names, but I think this should point you in the right direction. LRVinNC
LRVinNC

------------------
Please click Accept as solution if my post helped you solve your issue. This will help others find it more readily. It also closes the item. If the content was useful in other ways, please consider giving it Thumbs Up.
RandyHayes
Super User
Super User

@faithdwn  welcome to PowerApps!

 

So, if I understand, you have MyTicketsScreenGallery that is a Filter of PIVTickets

In there you have a Label control and want to get the Title column of the item that matches the Serial Number in the PurpleScan list.

I'm not sure I follow the logic of selecting the item in the gallery in order to display the "title".  From your pictures, it seems that the label is in each item in your gallery...wouldn't you want that to be displayed without someone having to select it to display it?

 

If so, there are a number of ways to go about it.  Each will be up to your design.

1) Lookup the value on the label (or it looks like it's a textbox on your gallery):

   MyTicketScreenGalleryTitle.Text (or Default if it's a TextBox) =     

Lookup(PurpleScan, SerialNumberColumn=ThisItem.SerialNumber).Title

This can have performance issues if you have long lists.

 

2) Add the Title into your Gallery datasource when you populate it.  (also note, your "Or" statement on your filter will not work. You need to Or each condition)

   MyTicketScreenGallery.Items =

       

Search(
AddColumns(
Filter(PIVRequests,
Status.Value="Request Submitted" ||
Status.Value="In Progress" ||
Status.Value="Waiting on Parts"),
"BarcodeTitle", Lookup(PurpleScan, SerialNumberColumn=SerialNumberColumnFromPIVRequestsList),
ScanSearch_4.Text, "Column_x0020_Number_x002f_Locati")

Now in your label or textbox you have there in the Gallery, just set it to ThisItem.BarcodeTitle  as it will be part of your datasource for the Gallery now.

 

That should give you two options to go with for now. 

See if that helps you get to the next step.

 

 

_____________________________________________________________________________________
Digging it? - Click on the Thumbs Up below. Solved your problem? - Click on Accept as Solution below. Others seeking the same answers will be happy you did.
NOTE: My normal response times will be Mon to Fri from 1 PM to 10 PM UTC (and lots of other times too!)
Check out my PowerApps Videos too! And, follow me on Twitter @RandyHayes

Really want to show your appreciation? Buy Me A Cup Of Coffee!

Thank you @RandyHayes, it worked great.

 

However, when i want to submit the actual form into PIVRequests, I can't get my formula to update the SPlist with the actual value. The column populates but not its value. 

Can you help with this one also. 

 

Thanks in advance. 

@faithdwn 

I'm not entirely sure what you mean by it populates but not its value - what does it populate with then?

A couple things to keep in mind - you are creating a column for your datasource only for the gallery.

If you are then going to an Edit form, that field will not carry in the way that you think (nor should it).  In your form you will need to do that lookup again, or gather it back from the source gallery.  Then, when you submit, you need to realize thta the column you are adding doesn't exist in the data source and therefore the EditForm will not know what to do with it.  You will need to either put a custom data card in or some other control to display that information.  If you want to update it, you can put that logic in your Submit formula.

_____________________________________________________________________________________
Digging it? - Click on the Thumbs Up below. Solved your problem? - Click on Accept as Solution below. Others seeking the same answers will be happy you did.
NOTE: My normal response times will be Mon to Fri from 1 PM to 10 PM UTC (and lots of other times too!)
Check out my PowerApps Videos too! And, follow me on Twitter @RandyHayes

Really want to show your appreciation? Buy Me A Cup Of Coffee!

@RandyHayes 

 

Apologies for the vague explanation but you understood what I meant.

I have already updated the edit form with the lookup function. Now, in order to have that value carry into the datasource, what formula would I need to use on the Submit OnSelect property?-View picture below to see what I currently have.

 

Futhermore, I would like that form to submit to two different sources under a specific condition. 

I have two SPLists: PIVRequests and ClosedPIVTickets. The form submits to PIVRequests. I would like for that same form to submit to ClosedPIVTickets with the same exact columns as PIVRequests only if one of my datacard values dropdown is selected. Therefore i only want ClosedPIVTickets SPList to display all Complete requests while PIVRequests SPList submits all open requests. 

 

I tried this formula on the "Submit" button OnSelect Property but it doesn't seem to work how i want. 

If(DataCardValue64.Selected.Value="Completed",Remove(ClosedPIVTickets,First(Filter(ClosedPIVTickets,SERIAL_x0020_NUMBER_x0020_CONFIR=SelectedTicket.Column_x0020_Number_x002f_Locati))));Navigate([@ConfirmSubmitScreen],ScreenTransition.None)

 

Thanks for all your help!

@faithdwn  I think I understood, but I didn't want to assume.

 

Here is the formula what we are working with from your posting:

 

If(DataCardValue64.Selected.Value="Completed",
Remove(ClosedPIVTickets,
First(
Filter(ClosedPIVTickets,SERIAL_x0020_NUMBER_x0020_CONFIR=SelectedTicket.Column_x0020_Number_x002f_Locati)
)
)
);
Navigate([@ConfirmSubmitScreen],ScreenTransition.None)

But, in your picture it is quite something different:

SubmitForm(EditTicketForm);
Set(RunFlow,true);
AddColumns(PIVRequests, "Barcode_x0020_Title", DataCard2.Default);
Navigate([@ConfirmSubmitScreen],None) …(cuts off from there)

So which is it?  Let's at least get to where the trouble is you're having in a formula.

 

But, baring that, I'm going to take a step back and look at your theory.

I have already updated the edit form with the lookup function. Now, in order to have that value carry into the datasource, what formula would I need to use on the Submit OnSelect property?-View picture below to see what I currently have.

 


If you're dealing with an EditForm, your submit action should be SubmitForm(myEditForm).  You've already established a datasource for the Form and given it an Item to work with, so it has all it needs.

 

Furthermore, I would like that form to submit to two different sources under a specific condition. 

I have two SPLists: PIVRequests and ClosedPIVTickets. The form submits to PIVRequests. I would like for that same form to submit to ClosedPIVTickets with the same exact columns as PIVRequests only if one of my datacard values dropdown is selected. Therefore i only want ClosedPIVTickets SPList to display all Complete requests while PIVRequests SPList submits all open requests. 

This is not going to happen with the SubmitForm.  Even if the fields/columns of one DataSource are exactly like another, you can't just switch the sources around on the forms.  

You have two choices:

1) In your submit action, you can patch/update the other list with the long list of fields and a bunch of thisField=thisField statements.  That will absolutely work, but is lengthy to do and - if you change the list in any way, you'll have to maintain that formula and all it's changes.

2) (I like this one) Create another screen.  On it, put a Form for the second list (FormClosed).  Connect its datasource to ClosedPIVTickets.  Change the "logic" of the form that instead of showing values from the datasource, it shows values from your first form.  That way, when you change values in a control in FormRequests (the PIVRequests form), you have the values of the FormClosed's controls set to the values of the FormRequests' controls (for the fields you want duplicated).

Then in your Submit for the first form you would simply do SubmitForm(FormRequests); SubmitForm(FormClosed).

You'll never have function in your App to navigate to that screen, so users will not see it, but you can use it to diagnose issues and to "maintain" your field-to-field copy...in a visual way without putting in all the plumbing yourself.

Why is this a good idea?  Again, this makes the experience more visual and understandable for you and anyone maintaining in the future. 

You will need to deal with the NewForm logic and if you should submit both or not.  

Something like:  DataCardValue64's OnChange action:  NewForm(FormClosed)

Then in your submit for FormRequests: 

SubmitForm(FormRequests); If(DataCardValue64.Selected.Value="Completed", SubmitForm(FormClosed))

 

So, it's a little hard to completely know your solution needs, but based on what I am reading, this would certainly work well.  

BTW - don't be shy about putting "hidden" screens in your app with troubleshooting controls and "common" logic.  This will save you lots of headache in maintaining in the future when you've long forgotten what you did to begin with.

 

Hope this gives fuel for thought.

 

 

 

 

_____________________________________________________________________________________
Digging it? - Click on the Thumbs Up below. Solved your problem? - Click on Accept as Solution below. Others seeking the same answers will be happy you did.
NOTE: My normal response times will be Mon to Fri from 1 PM to 10 PM UTC (and lots of other times too!)
Check out my PowerApps Videos too! And, follow me on Twitter @RandyHayes

Really want to show your appreciation? Buy Me A Cup Of Coffee!

@RandyHayes 

 

Very helpful information. Unfortunately i'm still new to powerapps and don't completely understand everything.  

To clear things up, the formula in the photo is what I currently have for that form. The other formula was an old formula I had tested out.

 

I have two forms in the FormRequests screen (as we'll call it) one for PIVRequets and one for ClosedPIVTickets (this one is obviously not visible). View picture below. Is it okay to do it this way or better to create a new screen for the ClosedPIVTickets as you suggested. 

 

"Change the "logic" of the form that instead of showing values from the datasource, it shows values from your first form." -- I'm not sure how to change the logic. I only know how to pull values from the datasource. 

Also, what do you mean when you say "troubleshooting controls and common logic"?

 

Again, I really appreciate your help and speedy replies!

@faithdwn 

No problem, I know some of the concepts will be a bit out there when you start, but in time will make more sense.

 

Yes, I would put that other form on another screen.  That way you can have it easily available to you as you design your app and don't have to mess with the visible property.

 

Okay, about your formula you have then currently.

The SubmitForm(EditTicketForm) is fine.  Again I would add the logic then to submit the other form based on that Selected.Value="Completed" condition.

I don't know what you are using the RunFlow variable for, but we'll say that is fine.

The AddColumns formula is not doing anything here - at all.

Navigate is fine too.

 

SO, for the most part, if you follow what I mentioned in the last post with your submit statement, that will cover that issue.

 

As for the logic of the other form (I believe this is your ClosedPIVTickets form that you have hidden).

What I am saying here is that you will go into that form and unlock the fields in it as you need them.  Then simply assign the DataCard Default value to the control in your other edit form that you want the value to come from.

So, for example, if you had a "SerialNumber" field in the Requests Form and you also (as you say want this to end up in the Closed list if that "Completed" condition is met) then you will find that SerialNumber field in your ClosedForm and unlock it.  Look at your datacard in the Request form.  It will have a DataCardValuexx.  In the ClosedForm, for the SerialNumber datacard, set the default to DataCardValuexx.Text (or Selected.Value, or whatever kind of control that DataCardValue actually is. 

Now your ClosedForm will have the value that is in the Request record.  And it will change whenever that is changed.  Do this for all of the other fields you want to go over.

If it was me, I would take the extra moments to change the labels on that "hidden" form to be more "dev" descriptive for future maintenance, but that's up to you.

So, now when you submit with the formula above that I stated, if that condition is met, the ClosedForm will submit as well and a new record will be created in your list.

 

The only extra logic you will need to put in is to NewForm that "hidden" form after you submit.  You can do that pretty much anywhere - maybe on the OnChange event of the Status control when it is set to "Completed".

 

As for the statement - "troubleshooting controls and common logic" - I mean that you can put labels and toggles and galleries and forms and whatever else you need to help you troubleshoot problems with your app on "hidden" screens.  And you can refer to them anywhere in your App.  This way you have ONE spot to have a complex formula and then you can "reuse" it everywhere you need it just by referencing it.  Kind of like global variables, but having them in a screen that you can always find them in the future...after you've long forgotten what you did.

Just a suggestion.

 

Hope this helps.

 

_____________________________________________________________________________________
Digging it? - Click on the Thumbs Up below. Solved your problem? - Click on Accept as Solution below. Others seeking the same answers will be happy you did.
NOTE: My normal response times will be Mon to Fri from 1 PM to 10 PM UTC (and lots of other times too!)
Check out my PowerApps Videos too! And, follow me on Twitter @RandyHayes

Really want to show your appreciation? Buy Me A Cup Of Coffee!

@RandyHayes 

Unfortunately this formula isn't working how we intend. Not sure what i'm doing wrong because even when i change the formula around, it still submits the same way. 

I followed your advice with creating a new screen to populate the form (ClosedPIVForm) and changed its logic. See picture below. 

The form submits but it will submit only to the FormRequests datasource regardless of the formula (PIVRequests). SubmitForm(EditPIVTicketForm);If(DataCardValue64.Selected.Value="Completed",SubmitForm(ClosedPIVForm);Navigate([@ConfirmSubmitScreen],ScreenTransition.None))

 

Another issue i'm having is with another gallery I have (MyTicketsScreenGallery).See Picture Below. This is the gallery that navigates to the FormRequests screen. The formula I have up set only returns the "Request Submitted" Items regardless of telling it to return two other values. I've tried changing this formula to use ',' instead of '||' but this won't work. 

 

Please advise. 

Thanks in advance. 

 

Helpful resources

Announcements

Tuesday Tip | Update Your Community Profile Today!

It's time for another TUESDAY TIPS, your weekly connection with the most insightful tips and tricks that empower both newcomers and veterans in the Power Platform Community! Every Tuesday, we bring you a curated selection of the finest advice, distilled from the resources and tools in the Community. Whether you’re a seasoned member or just getting started, Tuesday Tips are the perfect compass guiding you across the dynamic landscape of the Power Platform Community.   We're excited to announce that updating your community profile has never been easier! Keeping your profile up to date is essential for staying connected and engaged with the community.   Check out the following Support Articles with these topics: Accessing Your Community ProfileRetrieving Your Profile URLUpdating Your Community Profile Time ZoneChanging Your Community Profile Picture (Avatar)Setting Your Date Display Preferences Click on your community link for more information: Power Apps, Power Automate, Power Pages, Copilot Studio   Thank you for being an active part of our community. Your contributions make a difference! Best Regards, The Community Management Team

Hear what's next for the Power Up Program

Hear from Principal Program Manager, Dimpi Gandhi, to discover the latest enhancements to the Microsoft #PowerUpProgram, including a new accelerated video-based curriculum crafted with the expertise of Microsoft MVPs, Rory Neary and Charlie Phipps-Bennett. If you’d like to hear what’s coming next, click the link below to sign up today! https://aka.ms/PowerUp  

Tuesday Tip: Community User Groups

It's time for another TUESDAY TIPS, your weekly connection with the most insightful tips and tricks that empower both newcomers and veterans in the Power Platform Community! Every Tuesday, we bring you a curated selection of the finest advice, distilled from the resources and tools in the Community. Whether you’re a seasoned member or just getting started, Tuesday Tips are the perfect compass guiding you across the dynamic landscape of the Power Platform Community.   As our community family expands each week, we revisit our essential tools, tips, and tricks to ensure you’re well-versed in the community’s pulse. Keep an eye on the News & Announcements for your weekly Tuesday Tips—you never know what you may learn!   Today's Tip: Community User Groups and YOU Being part of, starting, or leading a User Group can have many great benefits for our community members who want to learn, share, and connect with others who are interested in the Microsoft Power Platform and the low-code revolution.   When you are part of a User Group, you discover amazing connections, learn incredible things, and build your skills. Some User Groups work in the virtual space, but many meet in physical locations, meaning you have several options when it comes to building community with people who are learning and growing together!   Some of the benefits of our Community User Groups are: Network with like-minded peers and product experts, and get in front of potential employers and clients.Learn from industry experts and influencers and make your own solutions more successful.Access exclusive community space, resources, tools, and support from Microsoft.Collaborate on projects, share best practices, and empower each other. These are just a few of the reasons why our community members love their User Groups. Don't wait. Get involved with (or maybe even start) a User Group today--just follow the tips below to get started.For current or new User Group leaders, all the information you need is here: User Group Leader Get Started GuideOnce you've kicked off your User Group, find the resources you need:  Community User Group ExperienceHave questions about our Community User Groups? Let us know! We are here to help you!

Super User of the Month | Ahmed Salih

We're thrilled to announce that Ahmed Salih is our Super User of the Month for April 2024. Ahmed has been one of our most active Super Users this year--in fact, he kicked off the year in our Community with this great video reminder of why being a Super User has been so important to him!   Ahmed is the Senior Power Platform Architect at Saint Jude's Children's Research Hospital in Memphis. He's been a Super User for two seasons and is also a Microsoft MVP! He's celebrating his 3rd year being active in the Community--and he's received more than 500 kudos while authoring nearly 300 solutions. Ahmed's contributions to the Super User in Training program has been invaluable, with his most recent session with SUIT highlighting an incredible amount of best practices and tips that have helped him achieve his success.   Ahmed's infectious enthusiasm and boundless energy are a key reason why so many Community members appreciate how he brings his personality--and expertise--to every interaction. With all the solutions he provides, his willingness to help the Community learn more about Power Platform, and his sheer joy in life, we are pleased to celebrate Ahmed and all his contributions! You can find him in the Community and on LinkedIn. Congratulations, Ahmed--thank you for being a SUPER user!  

Tuesday Tip: Getting Started with Private Messages & Macros

Welcome to TUESDAY TIPS, your weekly connection with the most insightful tips and tricks that empower both newcomers and veterans in the Power Platform Community! Every Tuesday, we bring you a curated selection of the finest advice, distilled from the resources and tools in the Community. Whether you’re a seasoned member or just getting started, Tuesday Tips are the perfect compass guiding you across the dynamic landscape of the Power Platform Community.   As our community family expands each week, we revisit our essential tools, tips, and tricks to ensure you’re well-versed in the community’s pulse. Keep an eye on the News & Announcements for your weekly Tuesday Tips—you never know what you may learn!   This Week's Tip: Private Messaging & Macros in Power Apps Community   Do you want to enhance your communication in the Community and streamline your interactions? One of the best ways to do this is to ensure you are using Private Messaging--and the ever-handy macros that are available to you as a Community member!   Our Knowledge Base article about private messaging and macros is the best place to find out more. Check it out today and discover some key tips and tricks when it comes to messages and macros:   Private Messaging: Learn how to enable private messages in your community profile and ensure you’re connected with other community membersMacros Explained: Discover the convenience of macros—prewritten text snippets that save time when posting in forums or sending private messagesCreating Macros: Follow simple steps to create your own macros for efficient communication within the Power Apps CommunityUsage Guide: Understand how to apply macros in posts and private messages, enhancing your interaction with the Community For detailed instructions and more information, visit the full page in your community today:Power Apps: Enabling Private Messaging & How to Use Macros (Power Apps)Power Automate: Enabling Private Messaging & How to Use Macros (Power Automate)  Copilot Studio: Enabling Private Messaging &How to Use Macros (Copilot Studio) Power Pages: Enabling Private Messaging & How to Use Macros (Power Pages)

April 4th Copilot Studio Coffee Chat | Recording Now Available

Did you miss the Copilot Studio Coffee Chat on April 4th? This exciting and informative session with Dewain Robinson and Gary Pretty is now available to watch in our Community Galleries!   This AMA discussed how Copilot Studio is using the conversational AI-powered technology to aid and assist in the building of chatbots. Dewain is a Principal Program Manager with Copilot Studio. Gary is a Principal Program Manager with Copilot Studio and Conversational AI. Both of them had great insights to share with the community and answered some very interesting questions!     As part of our ongoing Coffee Chat AMA series, this engaging session gives the Community the unique opportunity to learn more about the latest Power Platform Copilot plans, where we’ll focus, and gain insight into upcoming features. We’re looking forward to hearing from the community at the next AMA, so hang on to your questions!   Watch the recording in the Gallery today: April 4th Copilot Studio Coffee Chat AMA

Top Solution Authors
Top Kudoed Authors
Users online (4,534)