Hello,
I have a SharePoint list that I am customizing it using PowerApps Forms.
In this list, I have created the following:
FirstMangSign, SecondMangSign, ThirdMangSign, FourthMangSign, FifthMangSign, SixthMangSign, SeventhManSign, and their columns types are (Single lines of text), and I have another column is a choice type that contains the emails of the users that will be updating their signatures.
test1@microsoft.com
test2@microsoft.com
test3@microsoft.com..What I want to achieve is the following:
The user will select his email from the dropdown. After that, he will update his signature and submit.
On Submission that's what will happen for each user that will be adding his signature:
If a user is the first one who will be adding his signature, then When he submit I want to update the "FirstMangSign" to "Signed", a notification popup will appear that says ("This item has been signed successfully"), and I want to send an email for the signer. Furthermore, if the same user tries to update his signature for the same item knowing that he already Signed then a notification popup will appear that says ("You have already signed this item, you cannot sign it again") and nothing will happen.
In other words, if FirstMangSign column already signed, now it's the turn for the "SecondMangSign" to be filled to signed for the second user, which means if "SecondMangSign" is set to Signed on the current record and if so notifies the user that it cannot be signed again, If not, sets the data source field "SecondMangSign" to Signed and send an email for the signer.
I want to apply the same process for the other Fifth users that will be adding their signatures.
So the same button will react to all the users in the dropdown with the same process in different fields.
The below formula was implemented based on the same process using a toggle when I was having only two users that will be adding their signatures: And that was the solution by the expert @WarrenBelz
Set(
VManager2,
Toggle1.Value
);
Set(
vID,
SharePointIntegration.SelectedListItemID
);
If(
VManager2,
Set(
vNotSigned,
IsBlank(
LookUp(
'Purchase Order',
ID = vID &&
SecondMangSign= "Signed"
)
)
),
Set(
vNotSigned,
IsBlank(
LookUp(
'Purchase Order',
ID = vID &&
FirstMangSign= "Signed"
)
)
)
);
If(
!vNotSigned,
Notify(
"This item is already signed, you cannot sign it again!",
NotificationType.Error
),
If(
VManager2,
UpdateIf(
'Purchase Order',
ID = vID,
{SecondMangSign : "Signed"}
),
UpdateIf(
'Purchase Order',
ID = vID,
{FirstMangSign : "Signed"}
)
);
If(
!VManager2,
Office365Outlook.SendEmailV2(
DataCardValue7.Selected.Value,
SharePointIntegration.SelectedListItemID,
varHTMLImage,
{
Attachments:
Table(
{
Name:"FirstApprovalSignature.jpg",
ContentBytes:PenInput1.Image,
'@odata.type':""
}
)
}
);
Notify(
"This item has been signed successfully!",
NotificationType.Success
),
Office365Outlook.SendEmailV2(
DataCardValue8.Selected.Value,
SharePointIntegration.SelectedListItemID,
varHTMLImage,
{
Attachments:
Table(
{
Name:"SecondApprovalSignature.jpg",
ContentBytes:PenInput1.Image,
'@odata.type':""
}
)
}
);
Notify(
"This item has been signed successfully!",
NotificationType.Success
)
)
)
Is it possible to achieve the above scenario?
Can please someone explains in detail and provide an example?
Any help will be greatly appreciated.
Thank you!

Report
All responses (
Answers (