Hi all,
I have a gallery with checkbox in all rows. I have a checkbox to select all items outside gallery too. I try to insert in the default property in the checkbox: checkboxselectedall.value, so if I click on the checkbox it selected all rows.
I have a filter outside gallery (for example to select only row in the gallery that are man), I would like to filter man and then I want to click on checkboxselectedall and select only row with man.
Do you have an idea?
Thank you
Solved! Go to Solution.
You should:
1. Add some code in the "OnChange" of the dropdown to patch the collection's item with the new selected value
Patch(collection; ThisItem; {Column1: Self.Selected.Value})
This will update your item with the new value selected in your dropdown.
2. Add some code in the "OnSelect" of the checkbox to also patch the item
Patch(collection; ThisItem; {Selected:Self.Value})
By making the item "selected", your save button's code will extract it.
3. In your save button, modify the "ForAll()" and add the column you want to update
ForAll(
selectedItems;
{
Selezione: Dropdown4_10.Selected;
Column1: ThisRecord.Column1
}
)
Replace "Column1" by the column you want to modify to allow the patch to apply the new value.
Hi @WiZey ,
I have an error in the first point, I insert your formula in the dropdown items in the gallery, the column name is Selezione (I use in the Default property in the dropdown object in the gallery this function: ThisItem.Selezione.Value )
Is this a mistake?
I actually don't know what kind of column "Selezione" is.
If "Selezione" is a Choice-type column, then giving it "Self.Selected" should actually be enough.
If it's a Text-type column, then there is something else. Could you tell me what is the error in the code please?
Hi @WiZey , the "Selezione" type is a choice in my SharePoint list. So in my code the error is: the argument type "Selezione" it isn't a "Record" type, it found a text type. I don't understand, if I have a choice type why it give me an error? Tell me if you need more information. Thank you so much
A Choice-type column is actually regarded as a record by Power Apps.
Actual content of a Choice-type column:
{
Value: "value"
}
That's why the error states it's expecting a record while you're giving it a text.
You can either give it a record or the dropdown's "Selected" property, which is also regarded as a record.
Patch(collection; ThisItem; {Selezione: {Value:Self.Selected.Value}})
or
Patch(collection; ThisItem; {Selezione: Self.Selected})
It's ok, it don't give me an error, so:
1. I Add some code in the "OnChange" of the dropdown to patch the collection's item;
2. I Add some code in the "OnSelect" of the checkbox to also patch the item
3. I have modify the save button code as follow:
With({selectedItems:Filter(Gallery3_6.AllItems;Selected)};
Patch(TEST_RUOLI;
ShowColumns(selectedItems;"ID");
ForAll(selectedItems;{Selezione: Dropdown4_10.Selected;
Selezione: ThisRecord.Selezione})
)
);;
ClearCollect(collection; AddColumns(TEST_RUOLI; "Selected"; false))
but it give me an error on the five row, it tell me that "the Selezione field has been specified several times in this record".
If this is an hard way I can change my idea, I can simply select manually in the gallery the checkboxes and then select the value from dropbox outside the gallery and then click savebutton to patch my changes.
How can do this modify?
That's a small typo in your formula.
Inside "ForAll()" you specified a record with multiple "Selezione" column.
All you need is to remove the one you don't need anymore.
With({selectedItems:Filter(Gallery3_6.AllItems;Selected)};
Patch(TEST_RUOLI;
ShowColumns(selectedItems;"ID");
ForAll(selectedItems;{Selezione: ThisRecord.Selezione})
)
);;
ClearCollect(collection; AddColumns(TEST_RUOLI; "Selected"; false))
ok @WiZey thank you.
I have a last question, how can I select rows by checkboxes inside the gallery then select a value by dropbox outside gallery and save all changes in my sharepoint list by a button?
I think that I need to modify something inside the checkbox gallery because it's the same logical by "selectall checkbox".
Is it correct? Thank you so much again
If I understood well, instead of the dropdown inside the gallery you want to use the value from a dropdown outside the gallery?
Then it's pretty similar to what we've already done.
With({selectedItems:Filter(Gallery3_6.AllItems;Selected)};
Patch(TEST_RUOLI;
ShowColumns(selectedItems;"ID");
ForAll(selectedItems;{Selezione: Dropdown.Selected})
)
);;
ClearCollect(collection; AddColumns(TEST_RUOLI; "Selected"; false))
Instead of using "ThisRecord.Selezione", you take the value from the dropdown.
Yes you have understand my request! I would like to give to the user two choices, they can select some rows inside the gallery (with the checkboxes that are in all single rows) or they can select all rows by the checkbox outside the gallery, then they can select a choices with the dropdown (otuside the gallery) and then they can patch all changes by the save button (outside the gallery). So with the SelectAll checkbox it work correctly but it don't work if I select a checkbox inside the gallery. I think that I need to insert some formula on the OnCheck and OnUncheck property inside the checkboxes in the gallery.
Can you help me here for the last task?
I insert a picture to show my request, tell me if you need more information about this. Thank you so much
User | Count |
---|---|
125 | |
87 | |
86 | |
75 | |
69 |
User | Count |
---|---|
217 | |
181 | |
140 | |
97 | |
83 |