Not sure i have titled this right.
I have a sharepoint form for a list that i am customizing. As such i have a "SharePointForm" Group along with data cards for each of the fields. One field i have is "Status" On load of the form i am wanting it to say "new" Which i can do successfully. However when a user selects "Save as draft" If the form is in Draft or New status already, i want it to set the "Status" field to "Draft" if the user clicks "Submit" and the form is in New/Draft status, i want the status to move to "Submitted". There are other points throughout the processs where users will need to open and update the form. and other statuses. So, what i have is the following:
on the "Save as Draft" field, i am using the following:
If(DataCardValue5.Text = "", UpdateContext({Var_Status: "Draft"}), UpdateContext({Var_Status: DataCardValue5.Text})); SubmitForm(SharePointForm1)
On the DataCard i have the default value set to "Var_Status" and this successfully sets the value and saves the form. The issue i am having, is that every time the form Loads, Status is blank instead of pulling through the current status value. This makes sense to me as the "Var_Status" variable would be blank at this point. I have attempted to set this variable on form load (OnEdit, OnView events) however because at that point SharePointForm1.Selected is blank, i am unable to determine which "Status" value to get.
Any suggestions on how i can accomplish this would be greatly appreciated.
Solved! Go to Solution.
I managed to solve it.
For those who may come here in future looking for a solution it is below.
Instead of using a global variable, i used only code on the button.
If(IsBlank(DataCardValue5.Text) Or IsEmpty(DataCardValue5.Text), Patch(MyList, SharePointIntegration.Selected, {FormStatus: "Draft"}), Patch(MyList, SharePointIntegration.Selected, {FormStatus: DataCardValue5.Text})); SubmitForm(SharePointForm1)
I had Tried patch Previously, however instead of using "SharePointIntegration.Selected" i tried to use "ThisItem" once i started using SharePointIntegration.Selected it worked without issue. This allowed me to set the value as expected without using any variables/other "funky" ways of doing things that i had found in other posts.
I managed to solve it.
For those who may come here in future looking for a solution it is below.
Instead of using a global variable, i used only code on the button.
If(IsBlank(DataCardValue5.Text) Or IsEmpty(DataCardValue5.Text), Patch(MyList, SharePointIntegration.Selected, {FormStatus: "Draft"}), Patch(MyList, SharePointIntegration.Selected, {FormStatus: DataCardValue5.Text})); SubmitForm(SharePointForm1)
I had Tried patch Previously, however instead of using "SharePointIntegration.Selected" i tried to use "ThisItem" once i started using SharePointIntegration.Selected it worked without issue. This allowed me to set the value as expected without using any variables/other "funky" ways of doing things that i had found in other posts.
The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.
Power Platform release plan for the 2022 release wave 2 describes all new features releasing from October 2022 through March 2023.
User | Count |
---|---|
199 | |
97 | |
56 | |
51 | |
41 |
User | Count |
---|---|
266 | |
156 | |
84 | |
81 | |
56 |