我在powerApps应用程序中有一个按钮,该按钮尝试将关于选择内容(在这种情况下为客户端)的数据写入到已选定给定用户的表中。我可以选择多个用户并选择多个客户端。当选择它们时,它们最终会包含一个具有一些补充信息的集合(分别命名为selectedClients和SelectedUsers)。我希望代码首先检查表中是否已经存在客户端/用户组合,如果不存在,则将其写入表中。目前,公式如下:
ForAll(SelectedClients,
ForAll(selectedUsers,
If(LookUp('[dbo].[ClientAssignment]_2', UserPrincipalName in ADUserEmail ||
SelectedClient in ClientNameAssigned,"OK") <> "OK", Patch('[dbo].
[ClientAssignment]_2',Defaults('[dbo].[ClientAssignment]_2'),
{ADUserEmail:UserPrincipalName},{Priority:1},{AddedDate:Today()},
{ClientNumberAssigned:SelectedClientNumber},
{ClientNameAssigned:SelectedClient}))));
它没有嵌套的if(lookup))
块就可以很好地工作,即使它已经存在,它也只写一个条目,我需要避免。当前运行此代码会产生奇怪的结果,我什至无法找到一种模式。我想知道这是我的嵌套,还是这是ForAlls函数的方式(我在文档中读到委派是一个问题,我对这意味着什么并不了解,但我知道这是它检查的顺序循环中的各个项目)。也可能只是一些小东西,因为大家都知道将其嵌套在公式中越来越深,就像一个混乱的黑洞。
任何见识将不胜感激!让我知道是否需要添加更多信息。