Hello Randy,
I'm trying to get the OnSelect formula for my copy icon right, but am failing thus far. I've tried several variations of a Patch formula without success. I was wondering if you could help me nail it down. I'm including the working formulas for my Gallery Edit icon and Truck icon OnSelect formulas for reference.
Edit Icon:
Set(varRecord, LookUp('Domestic Shipping Requests', ID = ThisItem.ID));Navigate('Edit Screen', ScreenTransition.None)
Truck Icon:
Set(varRecord, LookUp('Domestic Shipping Requests', ID = ThisItem.ID));Navigate('Logistics Screen',ScreenTransition.None)
Failed Copy Icon OnSelect Formula:
Set(varRecord, LookUp('Domestic Shipping Requests', ID = ThisItem.ID, Patch(ThisItem,{ID:Blank})));Navigate('Requestor Screen',ScreenTransition.None)
The error messages are:
Thanks in advance for your help - Teresa
Solved! Go to Solution.
Go with this one:
Set(varRecord,
Patch(LookUp('Domestic Shipping Requests', ID = ThisItem.ID), {ID:Blank})
);
Navigate('Requestor Screen',ScreenTransition.None)
Should do the trick!
Go with this one:
Set(varRecord,
Patch(LookUp('Domestic Shipping Requests', ID = ThisItem.ID), {ID:Blank})
);
Navigate('Requestor Screen',ScreenTransition.None)
Should do the trick!
Hi Randy,
Thank you for the reply. Unfortunately I am still getting error messages:
Do you think this is happening because I have a split screen app? I notice that when the copy formula is on the Copy icon OnSelect, the New Request button and Edit button stop working in the sense that when I click them, I am taken to the correct screen, but both read "no item to display". The other thing I should mention is that I only want to make a copy of the form, not the contents of the previous shipment that are added via a Collection, not a form. Sorry to make it so complicated, but I figure these are all important things for you to know if you are going to help me troubleshoot.
Thanks!
Teresa
Always check for those little typos 😁
Set(varRecord,
Patch(LookUp('Domestic Shipping Requests', ID = ThisItem.ID), {ID:Blank()})
);
Navigate('Requestor Screen',ScreenTransition.None)
I believe I had copied and pasted from your original formula and forgot to correct.
Hi Randy,
Thank you so much Randy. This formula is working great to make a copy. The Shipping Crew is going to be so excited to see this working! I have a couple questions from the UX perspective. When the user clicks the Copy icon they are taken to this Requestor screen. Other than the Requestor Phone Number being already filled in there isn't a lot to give them a visual confirmation that they have successfully made a copy of an existing record. Is there a formula I can put in the Visible property to display a copy label on this first screen? The Recipient screen is much more obvious because all of the Ship To form fields are filled in. Second, I noticed that the copy does not retain what was selected in the Cost Center and Project Number dropdowns even though the Project Number preference was retained (Yes is not the default). How can I get the Cost Center and Project Number to stick as well? The Department and Project Name fields autofill based on what is selected in the Cost Center dropdowns so I will eventually make those view only. Lastly, if I flip flop Department and Cost Center, can I have the Department dropdown default to the user's Department using the Office365 Users connector? The Departments and Cost Centers come from a separate SharePoint list. Thank you again! Teresa
So, if there is some data that would always have a value (i.e. a required field), then you can have a label show based on looking at that and the required field value. For example, a label that display "Copy" and has a Visible property of IsBlank(varRecord.ID) && !IsBlank(varRecord.someRequiredField) This would then imply that if the ID is empty and some other field is not empty, then it must be a copy.
As for the other values...they should already be in your record. If they are not displaying in the form, then there is something wrong with the Default properties of those datacards and/or controls.
As for the department part, yes, you can get the Department from the O365 connector. As long as it is there and it will compare to a department value in your list, then it will be matched and shown.
Hi Randy,
I was able to get the COPY label working using your advice from above. Both the Default and DefaultSelectedItems properties of my comboboxes are empty which would explain why the info isn't being retained. In the TDC App we entered the following formula into the DefaultSelectedItems property of the combobox for the form that was on the Edit screen.
First(AddColumns(Table(LookUp('Project List','Project Number'=Parent.Default)),"NumberandName",'Project Number' & " - " & 'Project Name'))
As you might recall, the New Form was on a different screen and was it's own entity. The DefaultMode was always New while the DefaultMode of the form on the Edit Screen was View and users had the option to edit the form. We didn't have anything entered into either the Default or DefaultSelectedItems on the New Request screen. I'm not sure how to write the formula for New versus Copy using the same form control.
To recap...
The OnSelect for my NEW REQUEST button is:
Set(varRecord, Defaults('Domestic Shipping Requests'));ResetForm(frmMaster);Navigate('Requestor Screen',ScreenTransition.None);
The Onselect for my COPY REQUEST icon is:
Set(varRecord,
Patch(LookUp('Domestic Shipping Requests', ID = ThisItem.ID), {ID:Blank()})
);
Navigate('Requestor Screen',ScreenTransition.None)
The Item property for both is varRecord, same form. The DefaultMode for both is frmMaster.Mode. The DefaultMode for frmMaster is FormMode.Edit.
Thank you Randy!
Teresa
Hi Randy,
Thank you so much for helping me to get the Copy functionality going. I'm sure I will use it in many more request type apps to come. Such a fantastic time saver!
Kind regards,
Teresa
User | Count |
---|---|
254 | |
106 | |
92 | |
47 | |
37 |